J. Ali Harlow [Wed, 24 Mar 2004 17:22:36 +0000 (17:22 +0000)]
Fixed #138004 using Federico's code from #132327.
2004-03-24 J. Ali Harlow <ali@juiblex.co.uk>
Fixed #138004 using Federico's code from #132327.
* gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a
folder_hash field to keep a list of live folder objects.
(gtk_file_system_win32_init): Create the folder_hash.
(gtk_file_system_win32_finalize): Destroy the folder_hash.
(gtk_file_system_win32_get_folder): Ref and return an existing
folder if we have it around, otherwise return a new folder object.
(struct _GtkFileFolderWin32): Add a field for the parent file system.
(gtk_file_folder_win32_finalize): Remove the folder from the file
system's hash table.
(gtk_file_system_win32_create_folder): Emit "files-added" on the
newly-created folder's parent. Fixes #138004.
J. Ali Harlow [Mon, 22 Mar 2004 21:28:07 +0000 (21:28 +0000)]
Ignore empty volume labels; assume that GetVolumeInformation would fail if
2004-03-22 J. Ali Harlow <ali@juiblex.co.uk>
* gtk/gtkfilesystemwin32.c
(gtk_file_system_win32_volume_get_display_name): Ignore empty
volume labels; assume that GetVolumeInformation would fail if
GetVolumeInformationW does; catches a small memory leak;
pass the buffer size to GetVolumeInformationW in wide
characters instead of bytes. Fixes bug #137543
(list_volumes): Cope with the theoretical possibility of
more than 26 logical drives. Fixes bug #137940
(bookmarks_serialize): Now actually removes bookmarks.
Fixes bug #137943
Tor Lillqvist [Sun, 21 Mar 2004 22:06:37 +0000 (22:06 +0000)]
Include the backslash. Otherwise gtk_file_system_win32_path_to_uri()
2004-03-21 Tor Lillqvist <tml@iki.fi>
* gtk/gtkfilesystemwin32.c
(gtk_file_system_win32_volume_get_base_path): Include the
backslash. Otherwise gtk_file_system_win32_path_to_uri() returns
NULL for a volume base path, as g_filename_to_uri() requires an
absolute path, and just a drive letter and colon isn't. (#137543)
Hans Breuer [Sat, 20 Mar 2004 23:45:35 +0000 (23:45 +0000)]
applied the undisputable and required [due to recent gtkfilesystem
2004-03-20 Hans Breuer <hans@breuer.org>
* gtk/gtkfilesystemwin32.c : applied the undisputable and
required [due to recent gtkfilesystem internal api semantic
changes] part of patches to fix bug #137543 (Tor Lillqvist,
J. Ali Harlow)
* gdk/gdkevents-win32.c (handle_configure_event) :
(gdk_event_translate), WM_WINDOWPOSCHANGED : initialize
GdkWindowObject::x, y with screen coords to make
gdk_window_get_position () return the right thing and thus fix
drag and drop positioning (e.g. Gimp tabs, fixes bug #137192)
2004-03-19 Federico Mena Quintero <federico@ximian.com>
Fix #137520.
* gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
for an ::is_finished_loading() method and a ::finished_loading()
signal at the end of the struct.
* gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
"finished-loading" signal.
(gtk_file_folder_is_finished_loading): New function.
* gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
slot for a "finished-loading" signal.
(gtk_file_system_model_class_init): Create the "finished-loading"
signal.
(struct _GtkFileSystemModel): New field
idle_finished_loading_source. We emit the "finished-loading"
signal in an idle if the root folder was done loading right in
_gtk_file_system_model_new(), so that the caller has a chance to
connect to the signal.
(_gtk_file_system_model_new): Connect to the normal signals of the
folder even if the initial _list_children() fails. Also, see if
the folder is finished loading; connect to the "finished-loading"
signal otherwise.
(gtk_file_system_model_finalize): Remove the idle handler.
* gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
and connect to the model's "finished-loading" signal.
(get_toplevel): New helper function.
(error_message): Use get_toplevel().
(trap_activate_cb): Likewise.
(location_popup_handler): Likewise.
(set_busy_cursor): New function.
(browse_files_model_finished_loading_cb): New callback.
Morten Welinder [Wed, 17 Mar 2004 15:34:21 +0000 (15:34 +0000)]
Do nothing if we have no screen. Fixes #137260.
2004-03-17 Morten Welinder <terra@gnome.org>
* gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we
have no screen. Fixes #137260.
(shortcuts_add_bookmark_from_path): Simplify using check_is_folder
thereby fixing leak. Fixes #137259.
Morten Welinder [Wed, 17 Mar 2004 15:29:06 +0000 (15:29 +0000)]
Make this work when the slider buttons have been destroyed.
2004-03-17 Morten Welinder <terra@gnome.org>
* gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the
slider buttons have been destroyed.
(gtk_path_bar_remove): Make this work for slider buttons too.
Fixes http://bugzilla.gnome.org/show_bug.cgi?id=137257
Matthias Clasen [Wed, 17 Mar 2004 00:17:07 +0000 (00:17 +0000)]
Move the repositioning logic from _gtk_entry_completion() popup over here.
Wed Mar 17 01:20:28 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
Move the repositioning logic from _gtk_entry_completion() popup
over here. Fixes #137355, reported by Niklas Knutsson.
Matthias Clasen [Mon, 15 Mar 2004 23:56:44 +0000 (23:56 +0000)]
Block the ::changed handler during the emission of ::match-selected.
Tue Mar 16 00:56:11 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (gtk_entry_completion_list_button_press):
Block the ::changed handler during the emission of ::match-selected.
Partial fix for #137226.
* gtk/gtkfilechooserentry.c: Remove the no longer needed
no_pop_down flag.
Only hide the "create folder" button in OPEN mode; all the others should
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (update_appearance): Only hide the
"create folder" button in OPEN mode; all the others should show it
it.
(get_paths_foreach): Handle the editable row.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_create_folder):
Force a re-get of the folder so that the new directory gets added
to its hash table of file info.
In the Save modes, set the Name entry of the file chooser if we get a
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (update_from_entry): In the Save
modes, set the Name entry of the file chooser if we get a
nonexistent filename from the file entry. Fixes #135911.
(gtk_file_chooser_default_set_current_name): Oops, this should
also work if we are in CREATE_FOLDER mode.
* gtk/gtkfilesystem.c (gtk_file_path_real_copy): Use
gtk_file_path_copy().
* gtk/gtkfilechooserentry.c (check_completion_callback): Free the
path that we got from the model.
(completion_match_func): Use DISPLAY_NAME_COLUMN rather than a
hard-coded constant.
Only show the title string in OPEN/SELECT_FOLDER mode as it's
Mon Mar 15 12:51:17 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (location_popup_handler): Only show
the title string in OPEN/SELECT_FOLDER mode as it's open-specific.
Put a blank title for SAVE/CREATE_FOLDER; we are in string freeze,
so we'll fix it for 2.4.1 as #137272.
* gtk/gtkpathbar.c (gtk_path_bar_scroll_down): calculate
space_available correctly for RTL mode. w/o this, you can't
scroll down again. Fixes #137021.
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkpathbar.c (gtk_path_bar_scroll_up): Queue a resize.
(gtk_path_bar_scroll_down): Likewise.
Owen Taylor [Mon, 15 Mar 2004 17:11:28 +0000 (17:11 +0000)]
Store the position of the file part and use that in
Mon Mar 15 11:40:43 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserentry.c: Store the position of the
file part and use that in check_completion_callback()
and match_selected_callback() to figure out where
to operate on the text, rather than recomputing the
information.
set changing_folders to be true so we don't trigger a callback when we
Mon Mar 15 10:35:19 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): set
changing_folders to be true so we don't trigger a callback when we
remove the selection
(shortcuts_add_bookmarks): ditto
Owen Taylor [Mon, 15 Mar 2004 14:57:54 +0000 (14:57 +0000)]
Check for Control-Tab or Control-Shift-Tab, not any Control-key as a
Mon Mar 15 09:54:36 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c (gtk_label_focus): Check for
Control-Tab or Control-Shift-Tab, not any Control-key
as a current event ... handles the case where a dialog
is triggered from a control accelerator better.
Mon Mar 15 08:48:48 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserentry.c (match_selected_callback): implement
correctly.
(completion_match_func): Allow surpressing popdowns.
(maybe_append_seperator_to_path): New function to add a separator
item to a display_name. Bad hack.
(check_completion_callback): Implement select-ahead as an idle.
(add_completion_idle): new function to handle select-ahead
(gtk_file_chooser_entry_do_insert_text): starf the select-ahead
idle.
(gtk_file_chooser_entry_focus): Override tab for completion.
(gtk_file_chooser_entry_activate): commit select_ahead when
activated.
* gtk/gtkfilechooserdefault.c (location_popup_handler): grab the
appropriate widget for the mode.
Tor Lillqvist [Mon, 15 Mar 2004 13:07:04 +0000 (13:07 +0000)]
Merges from stable branch that had been left out. (#136282, J. Ali Harlow)
2004-03-15 Tor Lillqvist <tml@iki.fi>
Merges from stable branch that had been left out. (#136282, J. Ali
Harlow)
Changes for run-time lookup of installation location on Win32:
* Makefile.am (INCLUDES): Define GTK_PREFIX as $(prefix).
* gdk-pixbuf-io.c (get_sysconfdir): New function, look up
installation location at runtime and deduce GTK_SYSCONFDIR
from it.
(get_toplevel): Similar, for the top-level installation directory.
(correct_prefix): Replace compile-time prefix with run-time
prefix.
(get_libdir): Remove, not used any longer.
(gdk_pixbuf_io_init): Call correct_prefix() on Win32.
* queryloaders.c (query_module): [Win32] Change backslahses into
slashes in path.
Tor Lillqvist [Mon, 15 Mar 2004 11:55:55 +0000 (11:55 +0000)]
Don't just copy the whole GdkGCWin32 with a single assignment, that
2004-03-15 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkgc-win32.c (gdk_gc_copy): Don't just copy the whole
GdkGCWin32 with a single assignment, that overwrites GObject's
private data (for instance ref_count). (#137012, John Ehresman)
Renamed from shortcuts_unselect_all(); now selects the row that
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_find_current_folder):
Renamed from shortcuts_unselect_all(); now selects the row that
corresponds to the current folder, if any. Fixes #135916.
* gtk/gtkpathbar.h: Added prototypes for _gtk_path_bar_up() and
_gtk_path_bar_down().
Owen Taylor [Mon, 15 Mar 2004 06:09:40 +0000 (06:09 +0000)]
Implement local_only by filtering the shortcuts and bookmarks list by
Sun Mar 14 23:36:15 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserdefault.c: Implement local_only by
filtering the shortcuts and bookmarks list by
gtk_file_system_path_to_filename (file_system, path) != NULL.
(#132894)
* gtk/gtkfilesystem.c (gtk_file_system_path_is_local): Add
a convenience function, may by interesting to push to the
file system vtable later for performance.
Allow the path to be NULL, so that people can ask for information about a
2004-03-14 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystem.c (gtk_file_folder_get_info): Allow the path
to be NULL, so that people can ask for information about a
parent-less file system root (e.g. get_info (get_folder ("/"), NULL)).
* gtk/gtkfilesystemunix.c (gtk_file_folder_unix_get_info): Allow
the condition describe above.
* gtk/gtkfilechooserdefault.c (get_file_info): Allow getting
information of root paths.
Owen Taylor [Mon, 15 Mar 2004 03:53:20 +0000 (03:53 +0000)]
Mention GtkTreeViewSearchEqualFunc return value oddity here as well.
Sun Mar 14 22:32:36 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Mention
GtkTreeViewSearchEqualFunc return value oddity here as well.
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): On failure
to get a string to compare to, return TRUE (no match), not
FALSE (match). Handle %NULL string values gracefully.
Remove unused variable. (#135962, Mark McLoughlin)