Matthias Clasen
15d39dddc5
filesystemmodel: Drop outdated comments
...
Drop a long comment describing an implementation
that no longer exists.
2022-10-21 21:48:39 -04:00
Matthias Clasen
1028449bcc
filesystemmodel: Drop unneded deprecation guards
...
Nothing deprecated is used here anymore.
2022-10-21 21:48:39 -04:00
Matthias Clasen
01cca279f9
searchenginemodel: Drop unneeded deprecation guards
...
Nothing deprecated is used here anymore.
2022-10-21 21:48:39 -04:00
Matthias Clasen
a7cae4bffa
gtk-demo: Remove deprecations from characters
...
Make the characters demo use global style providers.
2022-10-21 21:48:39 -04:00
Matthias Clasen
3e2e29a1dc
gtk-demo: Remove deprecations from sizegroup demo
...
Out with the comboboxes, in with the dropdowns.
2022-10-21 21:48:39 -04:00
Matthias Clasen
de069e15c2
gtk-demo: Remove deprecation from textview demo
...
Use a dropdown instead of a combobox for the widget
embedding. It's better!
2022-10-21 21:48:39 -04:00
Matthias Clasen
f8edefd7c0
gtk-demo: Remove deprecations from gltransitions
...
Make the GL transitions demo use global style providers.
2022-10-21 21:48:39 -04:00
Matthias Clasen
24a15b51fe
gtk-demo: Remove deprecations from solitaire
...
Make the solitaire game use global style providers.
2022-10-21 21:48:39 -04:00
Matthias Clasen
1f7aba345d
gtk=demo: Drop unneeded deprecation guards
...
Nothing deprecated in the pixbuf paintable demo.
2022-10-21 21:48:39 -04:00
Matthias Clasen
230212c59c
gtk-demo: Remove deprecations from dnd
...
Make the dnd demo use global style providers.
2022-10-21 21:48:39 -04:00
Matthias Clasen
86f7c19b91
Merge branch 'wip/corey/file-chooser-popup' into 'main'
...
filechooserwidget: Fix popup issues
See merge request GNOME/gtk!5161
2022-10-22 00:36:26 +00:00
Corey Berla
e5cea4e39d
filechooserwidget: Show popup when clicking on empty space
...
Add gesture to right click or long press in the empty space
in the FileChooserWidget. Only show the global settings when
clicking on the empty space.
2022-10-21 13:57:21 -07:00
Corey Berla
22aca8952f
filechoosercell: Select item when right click or long press
2022-10-21 13:57:15 -07:00
Corey Berla
c0e437d163
filechoosercell: Only use long press when in touch mode
2022-10-21 13:57:11 -07:00
Corey Berla
ffe97a453f
filechoosercell: Claim sequence on click
2022-10-21 13:57:06 -07:00
Matthias Clasen
c09ba28b06
Merge branch 'gbsneto/filechooser-column-view' into 'main'
...
Port filechooser to GtkColumnView
See merge request GNOME/gtk!5108
2022-10-21 19:42:24 +00:00
Matthias Clasen
81de43eba5
Merge branch 'matthiasc/for-main' into 'main'
...
Bump the GLib requirement
See merge request GNOME/gtk!5158
2022-10-21 16:26:57 +00:00
Matthias Clasen
788be8b945
filesystemmodel: Fix a compiler warning
2022-10-21 12:15:36 -04:00
Matthias Clasen
0370979225
theme: Fix up padding for the file chooser
...
We need the padding inside the filelistcell, so that
its event controllers cover the whole area.
Introduce a .complex style class for columnviews that
achieves that, and make the filechooser use it.
2022-10-21 08:28:58 -04:00
Matthias Clasen
943014074c
Bump the GLib requirement
...
We now use GSignalGroup, which was introduced
in GLib 2.72.
2022-10-21 07:59:47 -04:00
Matthias Clasen
c0e8523a01
filesystemmodel: Fix a compiler warning
2022-10-21 07:44:13 -04:00
Matthias Clasen
8374ebe4c4
Merge branch 'gtkcompostable-c-fix-c4013' into 'main'
...
gtkcomposetable.c: Fix build on non-X11
See merge request GNOME/gtk!5156
2022-10-21 11:40:52 +00:00
Chun-wei Fan
611d14108d
gtkcomposetable.c: Fix build on non-X11
...
The build breaks with a C4013 warning/error on Visual Studio because we don't
have a prototype defined for _gtk_get_datadir(), so include gtkprivate.h.
The vs2017-x64 CI did not catch this error because it is building GLib as a
fallback subproject, causing the msvc_recommended_pragmas.h header not to be
found, which is used to detect problems like this.
2022-10-21 12:29:19 +08:00
Matthias Clasen
25cf702345
filechooser: Make search results show up
...
The tracker search engine implementation was not
setting all the custom attributes that we require
now.
The quartz search engine will need similar fixes.
2022-10-20 22:34:41 -04:00
Matthias Clasen
1d9c61cada
filechooserwidget: Remember sort columns and order
...
These settings existed before, we keep using them.
This loses some information about sorting by multiple
columns, but it is sufficient to get the same primary
sort column back.
2022-10-20 22:34:41 -04:00
Corey Berla
71adb26a0d
filechooserwidget: Fix time_sort_func
2022-10-20 22:34:41 -04:00
Corey Berla
e27fa33690
filechooser: Add show-time property
...
The "Show Time" setting does not take immediate effect (only after
changing folders) because it's set as a single call to
column_view_get_time_visible() on the FileChooserCell creation.
Instead create a bind a show-time property that gets updated
as the setting is changed.
2022-10-20 22:34:41 -04:00
Corey Berla
f7dfead861
filechoosercell: Add a GtkDragSource
...
Allow dragging one or more items. If the item dragged is not part of
the current selection, only drag that item.
2022-10-20 22:34:41 -04:00
Corey Berla
aac04a0995
filechoosercell: Bind "item" and "selected" to cell
2022-10-20 22:34:41 -04:00
Corey Berla
8af191e52d
filechooserwidget: Expose selection model
...
FileChooserCell may need to change the selection during a DND.
2022-10-20 22:34:41 -04:00
Corey Berla
06382ff836
filechooserwidget: Rename and expose get_selected_files()
...
GtkFileChooserCell will need this function
2022-10-20 22:34:41 -04:00
Matthias Clasen
cd469788c3
filechooserwidget: Make rename popover work
...
Make the rename popover operate on the file that
the context menu was opened for, and pop up at
the same position.
2022-10-20 22:34:40 -04:00
Matthias Clasen
44b5076cf2
filechooserwidget: Make context menus mostly work
...
Move the gestures to the individual cells, and
make them trigger the context menu via an action
that takes item position and coordinates.
The semantics are changed slightly: the menu actions
now operate on the clicked item, not on the selection.
Still to do: Fix up keyboard activation.
2022-10-20 22:34:40 -04:00
Matthias Clasen
e5be9e1035
filesystemmodel: Drop the model types
...
We are no longer storing extra values, so no need
to take their types in the api.
2022-10-20 22:34:40 -04:00
Matthias Clasen
b831d01f0d
filesystemmodel: Drop unused arguments
...
Drop the unused get_func arguments in constructors.
Update all callers.
2022-10-20 22:34:40 -04:00
Matthias Clasen
278bcf2680
filechooserentry: Simplify model construction
...
Don't pass a get_value callback when creating the
filesystem model. It isn't called anymore, and things
continue to work.
2022-10-20 22:34:40 -04:00
Matthias Clasen
c19d0dc9ea
filesystemmodel: Drop more unused api
...
Drop all apis that operate on tree iters.
We are no longer a tree model.
2022-10-20 22:34:40 -04:00
Matthias Clasen
edd5ed169e
filesystemmodel: Drop _gtk_file_system_model_get_value
...
This function is unused, so drop it, and its callback.
2022-10-20 22:34:40 -04:00
Matthias Clasen
8ec9c3fdc6
filechooser: Some work on popup menus
...
This is a start towards placing menus properly.
We once again center keyboard-triggered menus
on the file list.
2022-10-20 22:34:40 -04:00
Matthias Clasen
e95022040f
filechooser: Drop deprecated includes
...
We no longer use cell renderers and tree models
here. Yay.
2022-10-20 22:34:40 -04:00
Matthias Clasen
3a2ce620e2
filesystemmodel: Fix a possible problem
...
If the async query fails to reproduce a file info,
we still need to thaw the model, otherwise it ends
up frozen forever.
This was deduced by reading the code, I haven't
actually seen it happen.
2022-10-20 22:34:40 -04:00
Matthias Clasen
df49bf9eec
filechooserwidget: Use a string sorter for names
...
We can use the new collation property of GtkStringSorter,
and get the benefit of sort key caching. This commit
also fixes an accidental leak of all sorters, and
removes the sorter from the location column - we never
show that column when individual colummns are sortable.
2022-10-20 22:34:40 -04:00
Matthias Clasen
53327f3aea
filechooser: Drop unnecessary theme tracking
...
The widgets we are using handle theme changes
themselves, so there is no need for the filechooser
to do anything.
2022-10-20 22:34:40 -04:00
Matthias Clasen
c0c3d75062
filechooser: Bring back sorting
...
Add a sort model between the filter model and the
file system model, and set it up to sort according
to the circumstances.
2022-10-20 22:34:40 -04:00
Corey Berla
d0d0409f9d
filechooserwidget: Reimplement DnD Drop Target
...
This reverts commit 34752a15a71597d00a8d08befc545ac1c178b81b.
Leaving out the drag source portion as that needs a total
reimplementation. The GtkDropTarget only required minor
modifications.
2022-10-20 22:34:40 -04:00
Matthias Clasen
3a7d094542
filechooserwidget: Reinstate show_and_select_files
...
Now that we have information about visible and
filtered-out status of items, we can make this
function work again.
2022-10-20 22:34:40 -04:00
Matthias Clasen
280adcbb8c
filechooserwidget: Add a filter model
...
Put a filter model between the selection model and
the filesystem model, and make it filter on the
filechooser::visible attribute. This makes the filer
combo in the filterchooser and the 'show hidden files'
item work. But we need to prod the filter to trigger
a refiltering every now and then.
2022-10-20 22:34:40 -04:00
Matthias Clasen
83431a999c
filesystemmodel: Make filtering info available
...
Provide the filtered-out and visible bits as a file attributes
under the names filechooser::filtered-out and filechooser::visible,
so that we can filter on it.
2022-10-20 22:34:40 -04:00
Georges Basile Stavracas Neto
eeeee99aa8
filechooserwidget: Connect to the right model
...
When recreating the browse_files_model model, connect to that
model's item-changed signal, instead of connecting to the selection
model.
2022-10-20 22:34:40 -04:00
Georges Basile Stavracas Neto
0f503e0ba2
filechooserwidget: Connect to items-changed when changing model
...
Just like previous commit, we need to call list_items_changed()
even if we change from single selection to multi selection or
vice-versa.
2022-10-20 22:34:40 -04:00