2007-03-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (change_icon_theme_get_info_cb):
Handle the row reference path being NULL. (#410565, Joe Markus
Clarke, patch by Chris Wilson)
svn path=/trunk/; revision=17487
2006-12-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog):
Allow any GtkDialog that implements GtkFileChooser as
dialog. (#335473, Tommi Komulainen)
2006-09-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (update_combo_box): Protect
against base_path being NULL. (#358405, many reporters)
2006-09-22 Matthias Clasen <mclasen@redhat.com>
Make remote bookmarks work better (#354887)
* gtk/gtkfilechooserdefault.c (shortcuts_reload_icons):
(shortcuts_insert_path):
* gtk/gtkfilechooserbutton.c (change_icon_theme):
(model_add_bookmarks):
(model_update_current_folder):
(update_label_and_image):
If the bookmark points to a remote file, don't call get_info(),
since that may a) take a long time and b) pop up an auth dialog.
Instead, just use a folder icon and create a display name
from the uri.
* gtk/gtkfilechooserdefault.c (_gtk_file_chooser_label_for_uri):
New function to create a suitable display name for a remote
uri. This should really be done in GtkFileSystem.
2006-09-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c: Don't add remote volumes and
bookmarks to the model in local-only mode, to avoid
authentication dialogs pop up for invisible bookmarks, and
to fix issues with separators not being hidden when
they should. (#354887, Dennis Cranston)
2006-09-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (model_add_special): Request
the display name too, otherwise "Desktop" does not appear
in the file chooser button.
2006-09-02 Kristian Rietveld <kris@imendio.com>
First part of file chooser fixes.
* gtk/gtkfilechooserbutton.c (model_add_special): also set the
handle in the model for the desktopdir case.
* gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder): free
volume in case we retrieved it but don't pass it on to insert_path,
(shortcuts_model_create): change the column type for the handles
to pointer instead of GObject so our handle ref counting is not
disturbed,
(show_and_select_paths_finished_loading): don't forget to unref
the dialog.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_class_init),
(gtk_file_system_unix_init), (gtk_file_system_unix_dispose):
remove pending execute_callbacks_idle during dispose, also
execute all callbacks waiting to be run in the next idle,
(queue_*callback), (execute_callbacks_idle): refactor to maintain
a list of callbacks to call per file system instead of globally,
guard the file system during callback invocation,
(gtk_file_system_unix_get_folder): only add load folder idle if
none has been added yet.
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (set_info_get_info_cb)
(model_add_special_get_info_cb): Handle the case where the
filechooser button is destroyed quickly.
2006-07-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c: Get the display name
for the home directory. (#346498, Dennis Cranston,
patch by Andreas Köhler)
2006-04-19 Murray Cumming <murrayc@murrayc.com>
* gtk/gtkfilechooserbutton.c: _GtkFileChooserButtonPrivate:
Added has_title flag so we can remember whether a title has
been set.
(gtk_file_chooser_button_constructor): If no title has been
set then set it to the default title. This means that the
default title will be used if the dialog was instantiated with
g_object_new(), without using the gtk_file_chooser_button_new()
convenience function. This helps language bindings.
(gtk_file_chooser_button_set_property): Set has_title when
setting the title.
2006-01-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (model_add_special): Just use the
directory name for the home dir. (#325817, Federico Mena Quintero)
2005-10-07 Federico Mena Quintero <federico@ximian.com>
Fixes bug #317999:
* tests/autotestfilechooser.c (test_reload_sequence): Ensure that
the the result of gtk_file_chooser_get_folder() is NULL or
non-NULL at the right times. Log the tests.
(test_button_folder_states): New test for the initial states of
the current folder in GtkFileChooserButton.
(main): Test that the number of warnings/errors/critical errors is
zero.
* gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
Clarify the documentation on when this can return NULL.
(gtk_file_chooser_get_current_folder_uri): Likewise.
* gtk/gtkfilechooserbutton.c (struct
_GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
we use it to keep track of whether a folder has been set.
(gtk_file_chooser_button_map): Implement. If no folder has been
loaded before, we at least try to load $cwd here.
(gtk_file_chooser_button_constructor): If the construct-time
dialog already has a folder set, turn on our folder_has_been_set
flag.
(dialog_current_folder_changed_cb): Turn on our
folder_has_been_set flag.
2005-06-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (model_update_current_folder):
Free the data of the row before overwriting it. (#307490,
Kjartan Maraas)
2005-05-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_constructor):
Make sure the action of the button and the dialog are in sync,
when the dialog is provided by the app. (#303987, David A Knight)
2005-03-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (update_combo_box): Remove
a call whose result was unused and leaked. (#170776,
Kjartan Maraas)
2005-03-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE,
GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE which are like
their G_ counterparts, but also mark the name, nick
and blurb as static.
* gtk/*.c: Mark param spec strings as static, using
the new macros.
2005-03-20 Matthias Clasen <mclasen@redhat.com>
Make PLT-reduction work with gcc4, and don't include
everything in gdkalias.h:
* gtk/grk.symbols: Group symbols by header and source file.
* gtk/makegtkalias.pl: Protect definitions by the same
preprocessor symbols used to guard the headers. Move
the alias declarations to a separate file which is
produced when calling makegtkalias.pl -def
* gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate
this file.
* gtk/*.c: Include gtkalias.h after the other headers,
include gtkaliasdef.c at the bottom.
* gtk/*.h: Small cleanups.
2005-02-11 Matthias Clasen <mclasen@redhat.com>
Complete the fix for #165770, Vincent Untz:
* gtk/gtkfilechooserbutton.c (FALLBACK_ICON_SIZE): Make the
fallback size be 16, to be equal to the default for
GTK_ICON_SIZE_MENU (in gtkiconfactory.c:init_icon_sizes()).
(gtk_file_chooser_button_init):
(change_icon_theme): Use GTK_ICON_SIZE_MENU instead of
GTK_ICON_SIZE_SMALL_TOOLBAR.
2005-01-06 James M. Cape <jcape@ignore-your.tv>
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new)
(gtk_file_chooser_button_new_with_backend): Use default title if
NULL is passed.
* docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: Make examples
match API.
2005-01-02 Tor Lillqvist <tml@iki.fi>
* gtk/Makefile.am (libgtk_target_ldflags): Add -lole32, needed for
CoTaskMemFree in get_special_folder() below.
* gtk/gtkfilesystem.h: Implement case-insensitive path compare on
Win32 using _gtk_file_system_win32_path_compare().
* gtk/gtk.symbols: Add _gtk_file_system_win32_path_compare.
* gtk/gtkfilechooserbutton.c (model_add_special)
* gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Use
_gtk_file_system_win32_get_desktop() to get correct Desktop folder
on Win32. (#144003)
* gtk/gtkfilesystemwin32.c: Remove unnecessary includes. Do
consider all drives "mounted", including floppies. Trying to
inspect the contents of a nonexistent floppy will cause errors
later that are handled normally, no need to avoid them
completely. Keep the drive type in the GtkFileSystemVolume.
Support UNC paths. (#161797) Fix error message capitalizations
as in gtkfilesystemunix.c.
(gtk_file_system_win32_init): Start one timeout per
GtkFileSystemWin32.
(gtk_file_system_win32_finalize): Remove the timeout.
(get_special_folder): Copied from GLib.
(_gtk_file_system_win32_get_desktop): New function, uses
get_special_folder().
(gtk_file_system_win32_list_volumes): Don't start a timeout at
each call to this function. Don't assume A: and B: are floppies.
(gtk_file_system_win32_get_volume_for_path): Don't assume all
volumes are drive roots, i.e. support share roots of UNC paths
(\\server\share).
(gtk_file_system_win32_get_folder): Don't assume errno is set
after g_file_test() returns FALSE. It isn't on Win32 (and even on
Unix I don't think one should assume anything about errno after
g_file_test()).
(gtk_file_system_win32_volume_get_is_mounted): Always return TRUE.
(gtk_file_system_win32_volume_get_display_name): Don't call
GetVolumeInformation() on drives A: or B: if they are removable,
as they might then be floppies, causing an unnecessary
delay. (#157820)
(gtk_file_system_win32_volume_render_icon): Use network icon for
unrecognized drive types.
(canonicalize_filename, gtk_file_system_win32_parse): Don't get
confused by UNC paths.
(bookmarks_serialize): Use _gtk_file_system_win32_path_compare()
for case-insensitive UTF-8 path comparison.
(extract_icon): Use SHGetFileInfo() which is faster than
ExtractAssociatedIcon(). Icon extraction is still slow, though,
needs work.
(win32_pseudo_mime_lookup): Don't use the same icon for all
shortcuts or executables. Cache only other file type icons.
(gtk_file_system_win32_render_icon): Use network stock icon for
remote drives and UNC server share roots. Compare home directory
case-insensitively. Do lookup icons also for executable files,
after all, it's these files that can have individual icons in the
first place. Yes, it can be slow. Needs work.
(filename_is_drive_root): Require also the slash after the colon.
(filename_is_server_share): New function.
(_gtk_file_system_win32_path_compare): New function, does
case-folded UTF-8 comparison.
* gtk/gtkfilesystemwin32.h: Declare
_gtk_file_system_win32_path_compare().
2004-12-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): Don't
crash if enable_search is FALSE. (#161267, Jorn Baayen)
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_mnemonic_activate):
Re-fix #152925, reported by Dennis Cranston.