1. 31 May, 2004 1 commit
  2. 27 May, 2004 1 commit
  3. 04 May, 2004 1 commit
    • Federico Mena Quintero's avatar
      Fixes #139562, based on a patch by Christian Neumair. · 8e6a2b4f
      Federico Mena Quintero authored
      2004-05-04  Federico Mena Quintero  <federico@ximian.com>
      
      	Fixes #139562, based on a patch by Christian Neumair.
      
      	* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add
      	a filter_combo_hbox field to contain the filter combo.
      	(show_filters): Show/hide the filter_combo_hbox.
      	(create_filename_entry_and_filter_combo): Removed.
      	(file_pane_create): Create the filter_combo_hbox here.
      8e6a2b4f
  4. 29 Apr, 2004 1 commit
    • Federico Mena Quintero's avatar
      Fixes #140412. · 66319433
      Federico Mena Quintero authored
      2004-04-29  Federico Mena Quintero  <federico@ximian.com>
      
      	Fixes #140412.
      
      	* gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): New
      	function; moved the code over from
      	remove_bookmark_button_clicked_cb().
      	(remove_selected_bookmarks): Now, getting a non-removable bookmark
      	is not an error, as we may be called as a result of hitting the
      	Delete key.
      	(shortcuts_key_press_event_cb): New handler; delete the bookmark
      	if the user presses Backspace, Delete, or KP_Delete.
      66319433
  5. 15 Apr, 2004 1 commit
  6. 06 Apr, 2004 2 commits
  7. 02 Apr, 2004 1 commit
    • Federico Mena Quintero's avatar
      Fix #136077. · 8e661364
      Federico Mena Quintero authored
      2004-04-01  Federico Mena Quintero  <federico@ximian.com>
      
      	Fix #136077.
      
      	* gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a
      	"child_is_hidden" boolean argument to the "path-clicked" signal.
      
      	* gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden
      	field.
      	(make_directory_button): Take a file_is_hidden argument; put it in
      	the ButtonData.
      	(_gtk_path_bar_set_path): See whether each path component path is
      	a hidden file.
      	(gtk_path_bar_class_init): Add the file_is_hidden argument to the
      	"path-clicked" signal.
      	(button_clicked_cb): See if the downwards button represents a
      	hidden file for the file_is_hidden argument in the signal
      	emission.
      
      	* gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN.
      
      	* gtk/gtkfilechooserdefault.c
      	(gtk_file_chooser_default_select_path): If we fail to switch
      	folders, don't try to select the path in the file system model.
      	Also, return the result from _gtk_file_system_model_path_do().
      	(gtk_file_chooser_default_select_path): Turn on show_hidden in the
      	file system model if we are asked to select a hidden file.
      	(path_bar_clicked): Show hidden files based on whether the
      	immediate downwards folder in the path bar is a hidden file
      	itself.
      	(struct _GtkFileChooserDefault): Added fields
      	browse_files_popup_menu and browse_files_popup_menu_hidden_files_item.
      	(create_file_list): Set an object data key of
      	"GtkFileChooserDefault" on the tree view so that we can find the
      	impl from the popup menu callbacks.  Also, hook up to the
      	"button-press-event" and "popup-menu" signals in the file list to
      	bring up a popup menu.
      	(list_popup_menu_cb): New callback.
      	(list_button_press_event_cb): New callback.
      
      	Fix #138763:
      
      	* gtk/gtkfilesystemmodel.c
      	(_gtk_file_system_model_new): Oops, connect_object to
      	"finished-loading".
      8e661364
  8. 29 Mar, 2004 1 commit
    • Federico Mena Quintero's avatar
      Fix #137520. · 7f62edf3
      Federico Mena Quintero authored
      2004-03-29  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/gtkfilesystemunix.c
      	(gtk_file_folder_unix_is_finished_loading): Implement.
      
      	* 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.
      7f62edf3
  9. 25 Mar, 2004 2 commits
  10. 19 Mar, 2004 3 commits
    • Federico Mena Quintero's avatar
      Revert the patch to #137520, as 2.4.1 is for conservative bug fixes only. · da83c1cb
      Federico Mena Quintero authored
      2004-03-19  Federico Mena Quintero  <federico@ximian.com>
      
      	* Revert the patch to #137520, as 2.4.1 is for conservative bug
      	fixes only.  The patch is attached to the bug report, for
      	reference.
      
      2004-03-19  Morten Welinder  <terra@gnome.org>
      
      	* gtk/gtkfilechooserdefault.c
      da83c1cb
    • Morten Welinder's avatar
      Test existance of the path after checking for locality, if needed. · f1c18d57
      Morten Welinder authored
      2004-03-19  Morten Welinder  <terra@gnome.org>
      
      	* gtk/gtkfilechooserdefault.c
      	(gtk_file_chooser_default_set_current_folder): Test existance of
      	the path after checking for locality, if needed.
      f1c18d57
    • Federico Mena Quintero's avatar
      Fix #137520. · 68030a7e
      Federico Mena Quintero authored
      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/gtkfilesystemunix.c
      	(gtk_file_folder_unix_is_finished_loading): Implement.
      
      	* 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.
      68030a7e
  11. 17 Mar, 2004 2 commits
  12. 15 Mar, 2004 12 commits
    • Federico Mena Quintero's avatar
      Only hide the "create folder" button in OPEN mode; all the others should · 7cd0c268
      Federico Mena Quintero authored
      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.
      7cd0c268
    • Federico Mena Quintero's avatar
      In the Save modes, set the Name entry of the file chooser if we get a · 3e3ca555
      Federico Mena Quintero authored
      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.
      3e3ca555
    • Federico Mena Quintero's avatar
      Only show the title string in OPEN/SELECT_FOLDER mode as it's · 77c70924
      Federico Mena Quintero authored
      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.
      77c70924
    • Jonathan Blandford's avatar
      set changing_folders to be true so we don't trigger a callback when we · e8095cc8
      Jonathan Blandford authored
      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
      e8095cc8
    • Jonathan Blandford's avatar
      implement correctly. (completion_match_func): Allow surpressing popdowns. · 486fc4fe
      Jonathan Blandford authored
      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.
      486fc4fe
    • Mark McLoughlin's avatar
      remove the unused "lowest_folder" GtkFileChooserDefault member. Leftover · 2d23e05a
      Mark McLoughlin authored
      2004-03-15  Mark McLoughlin  <mark@skynet.ie>
      
              * gtk/gtkfilechooserdefault.c: remove the unused "lowest_folder"
              GtkFileChooserDefault member. Leftover from my original patch
              for bug #136987.
      2d23e05a
    • Federico Mena Quintero's avatar
      Renamed from shortcuts_unselect_all(); now selects the row that · f956e3ae
      Federico Mena Quintero authored
      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().
      f956e3ae
    • Federico Mena Quintero's avatar
      Surround the drag-outside-to-remove-bookmarks code with "#if 0" blocks; · 0abde229
      Federico Mena Quintero authored
      2004-03-15  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtk/gtkfilechooserdefault.c: Surround the
      	drag-outside-to-remove-bookmarks code with "#if 0" blocks; it's
      	too unstable right now.
      0abde229
    • Owen Taylor's avatar
      Implement local_only by filtering the shortcuts and bookmarks list by · 2c9d190c
      Owen Taylor authored
      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.
      2c9d190c
    • Federico Mena Quintero's avatar
      Allow the path to be NULL, so that people can ask for information about a · 084bb2fe
      Federico Mena Quintero authored
      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.
      
      	* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Handle root paths correctly.
      084bb2fe
    • Owen Taylor's avatar
      Add _gtk_path_bar_up()/ _gtk_path_bar_down(). · f8b3e6fe
      Owen Taylor authored
      Sun Mar 14 21:03:15 2004  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkpathbar.[ch]: Add _gtk_path_bar_up()/
              _gtk_path_bar_down().
      
              * gtk/gtkfilechooserdefault.c: Use _gtk_path_bar_up()/
              _gtk_path_bar_down() as bindings for Alt-Up
              and new Alt-Down. (Partly based on a patch by
              Mark McLoughlin, #136987)
      f8b3e6fe
    • Federico Mena Quintero's avatar
      Fixes #136185, patch by Morten Welinder, with some changes. · dfa36bb4
      Federico Mena Quintero authored
      2004-03-14  Federico Mena Quintero  <federico@ximian.com>
      
      	Fixes #136185, patch by Morten Welinder, with some changes.
      
      	* gtk/gtkfilechooserdefault.c (check_is_folder): New helper function.
      	(shortcuts_insert_path): Check the path first with check_is_folder().
      	(gtk_file_chooser_default_set_current_folder): Likewise.
      	(gtk_file_chooser_default_add_shortcut_folder): Likewise.
      	(browse_widgets_create): Unref the size group.
      
      	* gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder):
      	Handle the case where the file exists but it is not a directory.
      	(IconType): Add value for ICON_UNDECIDED.
      	(struct stat_info_entry): New structure to hold a file's struct
      	stat, its MIME type and its icon type.
      	(struct _GtkFileFolderUnix): Added a hash of struct
      	stat_info_entry, and flags to remember which info types we've read
      	so far.
      	(get_icon_type): Use a helper function for the icons-from-stat
      	types.
      	(gtk_file_system_unix_render_icon): Use the cached file info.
      	(gtk_file_folder_unix_get_info): Put the info in the cache.
      	(gtk_file_system_unix_get_folder): Create the cache of file info
      	structures.
      
      	* gtk/gtkfilesystem.c (gtk_file_info_set_display_name): Handle the
      	case where display_name is the same as the existing
      	info->display_name.
      dfa36bb4
  13. 14 Mar, 2004 2 commits
  14. 12 Mar, 2004 2 commits
    • Federico Mena Quintero's avatar
      Put the trash icon on the right for LTR locales, or on the left for RTL. · 2de43410
      Federico Mena Quintero authored
      2004-03-11  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtk/gtkfilechooserdefault.c (shortcuts_drag_set_delete_cursor):
      	Put the trash icon on the right for LTR locales, or on the left
      	for RTL.
      	(shortcuts_drag_motion_cb): Cancel the idle handler here as well.
      	(shortcuts_drag_leave_cb): Test whether the idle is present.
      	(shortcuts_drag_data_received_cb): Ahem, don't assert here.
      2de43410
    • Federico Mena Quintero's avatar
      Put the trash icon on the right for LTR locales, or on the left for RTL. · b4a6705a
      Federico Mena Quintero authored
      2004-03-11  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtk/gtkfilechooserdefault.c (shortcuts_drag_set_delete_cursor):
      	Put the trash icon on the right for LTR locales, or on the left
      	for RTL.
      	(shortcuts_drag_motion_cb): Cancel the idle handler here as well.
      	(shortcuts_drag_leave_cb): Test whether the idle is present.
      b4a6705a
  15. 11 Mar, 2004 6 commits
    • Jonathan Blandford's avatar
      revert earlier change to insert_path so that we test that the directory · 865d3dd2
      Jonathan Blandford authored
      Thu Mar 11 16:18:51 2004  Jonathan Blandford  <jrb@redhat.com>
      
              * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): revert
              earlier change to insert_path so that we test that the directory
              exists.
      
              * gtk/gtkfilechooserdialog.c
              (gtk_file_chooser_dialog_constructor): move focus.
      865d3dd2
    • Federico Mena Quintero's avatar
      New function, copied from gtkpathbar.c. · df0510a8
      Federico Mena Quintero authored
      2004-03-11  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtk/gtkfilechooserdefault.c (remove_settings_signal): New
      	function, copied from gtkpathbar.c.
      	(gtk_file_chooser_default_dispose): Use remove_settings_signal()
      	rather than our own code.
      	(gtk_file_chooser_default_screen_changed): Use
      	remove_settings_signal(); this should handle per-screen settings
      	correctly.
      df0510a8
    • Federico Mena Quintero's avatar
      Use a single OK button, not a Close button, as per the HIG. · b35220fd
      Federico Mena Quintero authored
      2004-03-11  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtk/gtkfilechooserdefault.c (error_message_with_parent): Use a
      	single OK button, not a Close button, as per the HIG.
      
      	* gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Likewise.
      b35220fd
    • Federico Mena Quintero's avatar
      Oops, initialize "action" before jumping. Fixes #136900. · 4cfd0030
      Federico Mena Quintero authored
      2004-03-11  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtk/gtkfilechooserdefault.c (shortcuts_drag_motion_cb): Oops,
      	initialize "action" before jumping.  Fixes #136900.
      4cfd0030
    • Federico Mena Quintero's avatar
      Fix #135912 and #135913. · 1135bef0
      Federico Mena Quintero authored
      2004-03-11  Federico Mena Quintero  <federico@ximian.com>
      
      	Fix #135912 and #135913.
      
      	* gtk/gtkfilechooserdefault.c
      	(shortcuts_filter_model_row_draggable): Implement.
      	(shortcuts_model_filter_new): New function, create a
      	ShortcutsModelFilterClass derived from GtkTreeModelFilter, so that
      	we can implement our own DnD interface methods.
      	(shortcuts_model_create): Use shortcuts_model_filter_new().
      	(shortcuts_list_create): Enable the shortcuts list as a drag
      	source.
      	(file_list_source_targets): Renamed from shortcuts_targets.
      	(shortcuts_list_create): Change the options for
      	gtk_drag_dest_set().  Connect to more drag signals so that we can
      	implement drops by hand.
      	(shortcuts_drag_data_delete_cb): New handler; just stop the emission.
      	(shortcuts_drag_motion_cb): New handler; validate the drop.
      	(shortcuts_drag_leave_cb): New handler; unset the drag_dest_row.
      	(shortcuts_drag_drop_cb): New handler; just stop the emission and
      	remove the idle handler for the drag cursor.
      	(shortcuts_add_bookmark_from_path): Add a position argument,
      	return a boolean success code.
      	(shortcuts_drag_data_received_cb): Handle two cases:  1) Insert
      	the bookmarks at the proper position, rather than always appending
      	them to the list; 2) alternatively, reorder the bookmarks.
      	(struct _GtkFileChooserDefault): New field shortcuts_drag_outside.
      	(shortcuts_drag_motion_cb): Turn off impl->shortcuts_drag_outside.
      	(shortcuts_drag_leave_cb): Turn on impl->shortcuts_drag_outside in
      	an idle handler.
      	(shortcuts_drag_end_cb): New handler; remove the selected bookmark.
      1135bef0
    • Jonathan Blandford's avatar
      up the width of the entry a tad. · 976647fd
      Jonathan Blandford authored
      Thu Mar 11 01:08:25 2004  Jonathan Blandford  <jrb@gnome.org>
      
              * gtk/gtkfilechooserdefault.c (location_entry_create): up the
              width of the entry a tad.
      
              * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): use
              gtk_entry_completion_selection_changed.  Also, unref the
              completion as we were leaking a reference to it.
      976647fd
  16. 10 Mar, 2004 2 commits