2008-06-10 Carlos Garnacho <carlos@imendio.com>
Bug 520874 - Should use gio directly.
* gtk/gtkfilesystem.[ch]: Turn into a private object, which mostly
provides helper functions for asynchronous calls, folder abstraction
and uniform handling of volumes/drives/mounts.
* gtk/gtkfilesystemwin32.[ch]:
* gtk/gtkfilesystemunix.[ch]: Removed, these are no longer required.
* gtk/gtkfilechooser.c:
* gtk/gtkfilechooserbutton.c:
* gtk/gtkfilechooserdefault.c:
* gtk/gtkfilechooserentry.[ch]:
* gtk/gtkfilechooserprivate.h:
* gtk/gtkfilechooserutils.c:
* gtk/gtkfilesystemmodel.[ch]:
* gtk/gtkpathbar.[ch]: Use GIO internally. Adapt to GtkFileSystem API.
Do not load filesystem implementation modules.
* gtk/Makefile.am:
* gtk/gtk.symbols: the gtkfilesystem.h private header isn't installed
anymore, nor the unix/win32 implementations.
* README.in: Add blurb about these changes.
svn path=/trunk/; revision=20342
2008-05-27 Federico Mena Quintero <federico@novell.com>
http://bugzilla.gnome.org/show_bug.cgi?id=533891 - Don't allow
drag and drop from the file list into itself, as it doesn't make
sense (it would just change the current folder).
* gtk/gtkfilechooserdefault.c (file_list_dest_targets): Use
GTK_TARGET_OTHER_WIDGET so we don't DnD from the file list into
itself.
Signed-off-by: Federico Mena Quintero <federico@novell.com>
svn path=/trunk/; revision=20194
2008-05-25 Jan Arne Petersen <jpetersen@jpetersen.org>
* gtk/gtkfilechooserdefault.c: (create_file_list): Add GDK_ACTION_MOVE
to the drag actions to allow trash (#137717).
svn path=/trunk/; revision=20150
2008-05-24 Jan Arne Petersen <jpetersen@jpetersen.org>
* gtk/gtkfilechooserdefault.c: (location_toggle_popup_handler): Don't
try to toggle the visibility of the location entry field in search and
recent mode (#526422)
svn path=/trunk/; revision=20138
2008-05-24 Jan Arne Petersen <jpetersen@jpetersen.org>
* gtk/gtkfilechooserdefault.c: (shortcuts_query_tooltip_cb),
(shortcuts_list_create): Show parse name as tooltip for path
shortcuts (#137503).
svn path=/trunk/; revision=20137
2008-05-19 Federico Mena Quintero <federico@novell.com>
http://bugzilla.gnome.org/show_bug.cgi?id=322298 - Save dialog
can't be resized until you expand the "Browse for other folders"
section.
* gtk/gtkfilechooserembed.h (struct _GtkFileChooserEmbedIface):
Removed the "get_resizable" method.
(_gtk_file_chooser_embed_get_resizable): Removed.
* gtk/gtkfilechooserembed.c: Removed the _get_resizable() machinery.
* gtk/gtkfilechooserdefault.c: Likewise.
* gtk/gtkfilechooserdialog.c
(file_chooser_widget_default_size_changed): Act as if the dialog
were always resizable.
Signed-off-by: Federico Mena Quintero <federico@novell.com>
svn path=/trunk/; revision=20113
2008-03-13 Sven Neumann <sven@gimp.org>
* gtk/gtkfilechooserdefault.c
* gtk/gtkprintunixdialog.c: set alternative button order for
overwrite confirmation dialogs (bug #522191).
svn path=/trunk/; revision=19866
2008-02-21 Tor Lillqvist <tml@novell.com>
* gtk/gtkfilechooserdefault.c (list_mtime_data_func) [Win32]: Must
pass the format string to strftime in the C library's locale's
charset, not the system's. Correspondingly, the return value from
strftime() is in the C library's locale's charset. (#509885)
svn path=/trunk/; revision=19625
2008-02-12 Federico Mena Quintero <federico@novell.com>
Merged from gtk-2-12:
Don't focus the file list when shortcuts get activated. This
removes a lot of ambiguity in when the file selection should
change, and makes the overall code flow simpler.
This fixes http://bugzilla.gnome.org/show_bug.cgi?id=419737 -
file/save dialog clears the filename entry when changing
directories.
Also fixes http://bugzilla.gnome.org/show_bug.cgi?id=499940 -
focus should not go to the file list when a shortcut is activated.
* gtk/gtkfilechooserdefault.c
(shortcuts_activate_volume_mount_cb): Don't focus the file list
(shortcuts_activate_get_info_cb): Likewise.
* gtk/gtkfilechooserdefault.c (switch_to_shortcut): Don't focus
the file list (this was the last place where we would focus the
file list explicitly). If you are in the location entry, for
example, you don't want Alt-Home to take you to the file list; you
just want the current folder to change. Thanks to Olle Bergkvist
<olle.bergkvist@yahoo.se> for pointing this out in
http://bugzilla.gnome.org/show_bug.cgi?id=419737#c51.
(focus_browse_tree_view_if_possible): Removed.
Signed-off-by: Federico Mena Quintero <federico@gnu.org>
svn path=/trunk/; revision=19543
2008-02-12 Matthias Clasen <mclasen@redhat.com>
Skip exensions when selecting filenames in the save-as dialog.
(#362516, Carlos Garnacho)
* gtk/gtkfilechooserentry.h:
* gtk/gtkfilechooserentry.c (_gtk_file_chooser_entry_select_filename):
New function to skip the extension part when selecting a filename.
(_gtk_file_chooser_entry_set_base_folder): Use it here.
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_entry_grab_focus):
...and here.
svn path=/trunk/; revision=19540
2008-02-12 Matthias Clasen <mclasen@redhat.com>
* gtk/*.c: Unify the handling of various "Enter" keysyms
all over the place. (#515047, Christian Persch)
svn path=/trunk/; revision=19528
2008-01-03 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c (recent_sort_mru): Use the
correct comparison function (kudos to Christian Persch and
Claudio Saavedra for spotting this)
* gtk/gtkrecentchooserutils.c:
(sort_recent_items_mru),
(sort_recent_items_lru): Ditto as above.
svn path=/trunk/; revision=19302
2007-11-26 Josselin Mouette <joss@malsain.org>
reviewed by: Federico Mena Quintero
* gtk/gtkfilechooserdefault.c: (shortcuts_append_paths),
(shortcuts_add_bookmarks), (shortcuts_selection_changed_cb),
(shortcuts_list_create), (gtk_file_chooser_default_should_respond):
Make the shortcuts activate with a single click. (#148828)
Fix a few things affected by the change:
- Set selection mode to GTK_SELECTION_SINGLE to allow a case
where no shortcut is selected.
- Don't activate a shortcut in the response callback.
- Filter out duplicate entries in volumes and bookmarks to
avoid the selection to change when reordering them with DnD.
svn path=/trunk/; revision=19072
2007-10-10 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c (list_mtime_data_func): Convert
the format to the current locale before passing it to
strtime(). Fixes corrupt dates with non-UTF8 encodings on
OpenSolaris. (#465380, Takao Fujiwara)
svn path=/trunk/; revision=18903
2007-10-04 Loïc Minier <lool@dooz.org>
* gtk/gtkfilechooserdefault.c: (list_mtime_data_func): Fix warnings
and display of modified date / time in filechooser for some locales as
it was missing a locale to UTF-8 conversion. Fixes#482504.
svn path=/trunk/; revision=18880
2007-10-02 Federico Mena Quintero <federico@novell.com>
Fix http://bugzilla.gnome.org/show_bug.cgi?id=455284 - In the file
chooser, Ctrl-L should switch to the location entry. If we are
already on the location entry, turn it off. Based on a patch by
Jaap A. Haitsma <jaap@haitsma.org> and an idea by Wouter
Bolsterlee.
* gtk/gtkfilechooserdefault.c (location_button_toggled_cb): Call
location_mode_set() directly instead of using toggle_location_mode().
(toggle_location_mode): Removed.
(location_toggle_popup_handler): If the file entry is not visible,
show it. If it is visible, turn it off only if it is focused.
Otherwise, switch to the entry.
Signed-off-by: Federico Mena Quintero <federico@gnu.org>
svn path=/trunk/; revision=18874
2007-09-25 Emmanuele Bassi <ebassi@gnome.org>
Fixes for bug #480123.
* gtk/gtksearchenginesimple.c:
(gtk_search_engine_simple_dispose), (search_thread_done_idle): Cancel
the file tree walking thread when disposing the search engine
implementation.
* gtk/gtkfilechooserdefault.c (search_stop_searching): Forcibly
stop the search engine implementation when stopping the search,
instead of just unreffing the object.
svn path=/trunk/; revision=18865
2007-09-12 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c (render_recent_icon): Use the
"document-open-recent" icon for the the Recently Used shortcut
in the file chooser. (#306445)
* gtk/Makefile.am:
* gtk/stock-icons/16/document-open-recent.png:
* gtk/stock-icons/16/document-open-recent.svg:
* gtk/stock-icons/24/document-open-recent.png:
* gtk/stock-icons/24/document-open-recent.svg: Add the
"document-open-recent" icon to the builtin theme we provide
as a fallback.
svn path=/trunk/; revision=18803
2007-08-23 Emmanuele Bassi <ebassi@gnome.org>
* gtkfilechooserdefault.c:
(search_hit_get_info_cb), (recent_item_get_info_cb): Check if
we are still holding the model before updating it; removes a
set of critical warnings when switching to the browse mode from
a loading search or recent files list.
(recent_clear_model), (recent_sort_model),
(recent_idle_cleanup): When in recent files mode, set the
model for the files list view when we have completed the loading
of the recently used files list. This makes switching between
modes fast again and reduces the amount of redraws needed
to display the list. (#469214)
svn path=/trunk/; revision=18677
2007-07-24 Matthias Clasen <mclasen@redhat.com>
* gtkcolorsel.c:
* gtkfilechooserdefault.c:
* gtkpagesetupunixdialog.c:
* gtkprintunixdialog.c: Port to use new tooltips API.
(#451397, Jan Arne Petersen)
svn path=/trunk/; revision=18539
2007-07-20 Matthias Clasen <mclasen@redhat.com>
Apply a patch by Emmanuele Bassi to limit the number
of shown recent files. (#439715)
* gtk/gtksettings.c: Add a setting for the number
of recent files to display by default.
* gtk/gtkrecentchooserdefault.c:
* gtk/gtkfilechooserdefault.c: Respect the limit.
* gtk/gtkrecentmanager.c: Remove the poll timeout in
dispose, and do not stat more often than every 5 seconds.
* gtk/gtkrecentchooserutils.c:
* gtk/gtkrecentchoosermenu.c: Cleanups
* tests/testrecentchoosermenu.c: Test limits.
svn path=/trunk/; revision=18510
2007-07-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c: Apply a patch by Emmanuele
Bassi to add tooltips to the file lists in recent files and
search modes.
svn path=/trunk/; revision=18508
2007-06-26 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c (list_mtime_data_func): Show
the time of last change in the file chooser, for files
modified today or yesterday. (#324543)
* configure.in: Check for localtime_r().
svn path=/trunk/; revision=18248
2007-06-13 Kristian Rietveld <kris@imendio.com>
* gtk/gtk.symbols
* gtk/gtkfilesystem.[ch]: rename _gtk_file_system_create to
gtk_file_system_create to make it public and bring trunk back
in sync with gtk-2-10.
* gtk/gtkfilechooserdefault.c (set_file_system_backend): updated.
svn path=/trunk/; revision=18121
2007-06-06 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c:
(get_file_info_finished), (shortcuts_insert_path),
(shortcuts_add_bookmarks), (shortcuts_add_current_folder): Factor
out the search shortcut, the recently used shortcut and the separator
from the shortcut selection combo. (#444734)
(recent_idle_load): Remove the idle source that lazily loads the
recently used files, if the GtkRecentManager returns an empty
list. (#443913)
svn path=/trunk/; revision=18063
Return after setting the file chooser entry instead of falling through. Also
remove the handling for the search and recent files operation modes, since
they don't have a location entry to update.
svn path=/trunk/; revision=17983
2007-05-18 Carlos Garnacho <carlos@imendio.com>
Refactor GtkFileChooserDialog sizing.
* gtkfilechooserembed.[ch] (delegate_get_resizable_hints)
(_gtk_file_chooser_embed_get_resizable_hints):
s/resizable_hints/resizable/, return just one boolean value to
determine whether the filechooser should be resizable or not.
* gtkfilechooserprivate.h (struct GtkFileChooserDialogPrivate): remove
variables related to the GtkFileChooserEmbed get_default_size() and
get_resizable() implementations.
(struct GtkFileChooserDefault): Move default size management here.
* gtkfilechooserdefault.c (gtk_file_chooser_default_size_allocate):
Added, store currently allocated size to calculate default size later.
(gtk_file_chooser_default_get_resizable_hints):
s/resizable_hints/resizable/.
(gtk_file_chooser_default_set_property): Reload settings if the file
chooser action changes, this way the save expander state will be known
before mapping the window, avoiding wrong window positioning and
flickering. (#424299, #424309)
(find_good_size_from_style): Only get size from style if it wasn't set
previously.
(gtk_file_chooser_default_get_default_size): return default size based
on stored default size and preview/extra widget sizes.
* gtkfilechooserdialog.c (file_chooser_widget_update_hints)
(file_chooser_widget_realized_size_changed)
(file_chooser_widget_unrealized_size_changed): simplified to
(file_chooser_widget_size_changed): set window size and resizability
based on the GtkFileChooserEmbed interface implementation. (Bug
#420285, Tomeu Vizoso)
(gtk_file_chooser_dialog_map): force a dialog size change, so it's
clamped for sure to the 75% of the screen size.
svn path=/trunk/; revision=17859
2007-05-14 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c:
Convert the GtkTreeIter inside the sorting functions for the
search and recent modes. This doesn't yet fix the segfault when
clicking the 'Name' column in recent mode, though.
svn path=/trunk/; revision=17843
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserdefault.c: Support drag and drop for
adding shortcuts of folders when in search or recent files
mode.
svn path=/trunk/; revision=17829
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserprivate.h:
* gtk/gtkfilechooserdefault.c: Follow the sorting order of
the GtkTreeView displaying the files list.
(shortcuts_get_index), (shortcuts_insert_separator),
(shortcuts_model_create), (shortcuts_combo_filter_func): Remove
the separator between the Search and the Recently Used shortcuts.
(list_select_func), (list_icon_data_func), (list_name_data_func),
(list_mtime_data_func): Update the sensitivity of the row
depending on the GtkFileChooserAction used.
svn path=/trunk/; revision=17828
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserprivate.h:
* gtk/gtkfilechooserdefault.c: Update the contents of the
files list when changing the filter of the GtkFileChooserDefault
widget.
svn path=/trunk/; revision=17827
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserdefault.c: Update the add bookmark button
sensitivity when in search or recent files mode, and allow
adding a bookmark for a folder.
svn path=/trunk/; revision=17826
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserdefault.c: UI fixes in the Search mode: add
a mnemonic to the label, de-boldify the label's text and assign
focus to the search entry when switching to the search mode.
(list_name_data_func): Split the text in both search and recent
files mode: on the first line use the short name and on the
second line use the full path.
svn path=/trunk/; revision=17825
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserprivate.h:
* gtk/gtkfilechooserdefault.c: Add support for showing the
recently used files list as a special shortcut item.
svn path=/trunk/; revision=17824
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserdefault.c: Overall whitespace fixes and
indentation style consistency.
(list_row_activated): If the search hit is a folder, follow it
when activating the row, and switch back to browse mode.
(search_clear_model), (search_start_query),
(search_entry_activate_cb), (search_setup_widgets): Remember
the last query when switching between modes.
svn path=/trunk/; revision=17823
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c:
(_gtk_file_chooser_default_class_init): Add key binding for
the Search shortcut; default to MOD1+S.
(search_shortcut_handler): Handle the key binding.
(search_hit_get_info_cb), (search_add_hit), (search_clear_model),
(search_setup_model): Retrieve informations on the search hits
when adding them to the model.
(list_icon_data_func): Show the search hit icon.
svn path=/trunk/; revision=17822