mirror of
https://gitlab.gnome.org/GNOME/nautilus
synced 2024-09-19 15:51:40 +00:00
9 commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
Darin Adler | e82bab8c49 |
reviewed by: John Sullivan <sullivan@eazel.com>
Fixed bug 2147 (NautilusFile for trash needs non-empty values for more properties), bug 5652 (MIME type field appears but shouldn't in properties window for Trash), and bug 4620 (trash sidebar should show number of items). * libnautilus-extensions/nautilus-file.h: * libnautilus-extensions/nautilus-file-private.h: * libnautilus-extensions/nautilus-file.c: (nautilus_file_new_from_relative_uri): Create trash file subclass when appropriate. (nautilus_file_info_missing): Rename so it can be used in other source files. (nautilus_file_get_date): New method that returns numeric dates. (nautilus_file_get_date_as_string): Change to call nautilus_file_get_date to get the numeric date. (nautilus_file_get_file_type): Turn into a method. * libnautilus-extensions/nautilus-merged-directory.h: * libnautilus-extensions/nautilus-merged-directory.c: (merged_call_when_ready): Rolled in the old merged_callback_connect_directory function. (merged_contains_file): Moved down to a more appropriate part of the source file. (nautilus_merged_directory_get_real_directories): New public function for use by trash. * libnautilus-extensions/nautilus-trash-file.c: (trash_callback_hash), (trash_callback_equal), (trash_callback_destroy), (trash_callback_check_done), (trash_callback_remove_file), (ready_callback), (real_file_changed_callback), (monitor_add_file), (add_real_file), (trash_callback_remove_file_cover), (monitor_remove_file), (remove_real_file), (add_real_file_given_directory), (add_directory_callback), (remove_directory_callback), (trash_file_call_when_ready), (trash_file_cancel_call_when_ready), (trash_file_check_if_ready), (trash_file_monitor_add), (trash_file_monitor_remove), (trash_file_get_file_type), (trash_file_get_item_count), (trash_file_get_deep_counts), (trash_file_get_date), (remove_all_real_files), (nautilus_trash_file_initialize), (trash_destroy), (nautilus_trash_file_initialize_class): New code. First implementation of getting some attributes for the merged trash. Gets list of directories from the NautilusTrashDirectory object. The code in here is similar to the NautilusMergedDirectory class and at some point perhaps we can make the two share more. * libnautilus-extensions/nautilus-vfs-file.c: (vfs_file_get_file_type), (vfs_file_get_date), (nautilus_vfs_file_initialize_class): Implement the two new methods for the standard vfs case. Fixed various things that affect the properties window for the trash that showed up while I was testing the above work: * libnautilus-extensions/nautilus-icon-factory.c: (nautilus_icon_factory_get_icon_name_for_regular_file), (nautilus_icon_factory_get_icon_name_for_file): Move trash special case out so it doesn't matter what type the trash seems to be. The old code relied on trash not being a directory. * src/file-manager/fm-properties-window.c: (create_properties_window), (create_properties_window_callback), (cancel_create_properties_window_callback), (directory_view_destroyed_callback), (remove_pending_file): Rework code to fix problems where the timed wait or the signal handler wasn't properly cleaned up. Fixed remaining bit of bug 5631 (Tear-offs of right-click menus don't work.): * src/file-manager/nautilus-desktop-icon-view-ui.xml: Mark Disks right-click submenu so it won't get a tear-off item. Fixed bug 5650 (nautilus --quit fails to return to prompt sometimes): * src/nautilus-application.c: (nautilus_application_startup): Add special case so "nautilus --quit" doesn't hang waiting for a response from the (now quit) "server" instance of Nautilus. * src/nautilus-shell-interface.idl: Had to make the quit call no longer be "oneway" to get it to work right, otherwise the quit message could be lost when the sending application exited too fast. Fix bug 5675 (Nitpicks in new "could not be moved to new special location" dialog): * libnautilus-extensions/nautilus-file-operations.c: (handle_transfer_overwrite): Updated message wording as Eli (and Vera) suggest. Other changes: * libnautilus-extensions/nautilus-view-identifier.c: (get_lang_list): Fix comment and a small storage leak in the case where lang_with_locale is non-NULL but empty. * po/POTFILES.ignore: Obsolete file, no longer used. * src/file-manager/fm-desktop-icon-view.c: (update_home_link_and_delete_copies): Update comment to help translators understand better. * libnautilus-extensions/nautilus-directory-async.c: (directory_load_callback): Added a new assertion that could help in future gnome-vfs debugging. * libnautilus/nautilus-view-component.idl: Removed long-ago-fixed FIXME comment. * src/nautilus-window-manage-views.c: Tweak spacing. |
||
Darin Adler | daee7ca552 |
Fix bug 5557 (Intermittent crash in
Nautilus_View_history_changed): * src/nautilus-view-frame.c: (send_history): Added a check for NULL so we don't try to send a NULL history list through the history machinery. Fix bug 5360 ("menthos's Home" string is hard to translate): * src/file-manager/fm-desktop-icon-view.c: (update_home_link_and_delete_copies): Added comment to help translators understand what to do with "%s's Home". Fix bug 5641 ("xfree" does not work with newer versions of RPM 4 headers): * components/services/install/lib/eazel-package-system-rpm3.c: (eazel_package_system_rpm3_packagedata_fill_from_header): Just use "free" instead of "xfree". Fix bug 5631 (Tear-offs of right-click menus don't work): * src/nautilus-shell-ui.xml: * src/file-manager/nautilus-directory-view-ui.xml: * src/file-manager/nautilus-icon-view-ui.xml: Mark popups and submenus of the popups with tearoff="0" so they don't have tear-off menu items. More work on bug 2147 (NautilusFile for trash needs non-empty values for more properties). * libnautilus-extensions/nautilus-file.h: * libnautilus-extensions/nautilus-file.c: (nautilus_file_new_from_relative_uri), (nautilus_file_new_from_info), (nautilus_file_monitor_add), (nautilus_file_monitor_remove), (nautilus_file_get_directory_item_count), (nautilus_file_get_deep_counts), (nautilus_file_check_if_ready), (nautilus_file_call_when_ready), (nautilus_file_cancel_call_when_ready): Put more of the machinery in place to make enough of NautilusFile virtual so that we can implement the trash case. * libnautilus-extensions/nautilus-merged-directory.h: * libnautilus-extensions/nautilus-merged-directory.c: (merged_add_real_directory), (nautilus_merged_directory_add_real_directory), (merged_remove_real_directory), (nautilus_merged_directory_remove_real_directory), (remove_all_real_directories), (nautilus_merged_directory_initialize_class): Make adding and removing directories use signals so we can share this list with the NautilusTrashFile. * libnautilus-extensions/nautilus-trash-file.c: (add_directory_callback), (remove_directory_callback), (nautilus_trash_file_initialize), (trash_destroy): Use a NautilusTrashDirectory object for the list of directories. * libnautilus-extensions/nautilus-vfs-file.c: (vfs_file_monitor_add), (vfs_file_monitor_remove), (vfs_file_call_when_ready), (vfs_file_cancel_call_when_ready), (vfs_file_check_if_ready), (vfs_file_get_item_count), (vfs_file_get_deep_counts), (nautilus_vfs_file_initialize_class): Move the guts of these functions into the "VFS" subclass. Other stuff: * libnautilus-extensions/nautilus-trash-directory.c: (find_directory_start), (find_directory_end), (find_directory_callback), (add_volume), (remove_trash_volume): Fix bug in the recently-added timed-wait, to handle the case where the call is cancelled as well as the case where it succeeds or fails. * src/file-manager/fm-directory-view.c: (zoomable_set_zoom_level_callback): Formatting tweak. * src/nautilus-main.c: (main): Fix the FIXME. |
||
Darin Adler | f649b991af |
reviewed by: Rebecca Schulman <rebecka@eazel.com>
Fixed bug 3811 (shallow file counts and top-left text are fetched even for non-displayed hidden/backup items). * libnautilus-extensions/nautilus-directory-private.h: * libnautilus-extensions/nautilus-directory-async.c: (allow_metafile): Add "ghelp:" and "gnome-help:" to the unfortunate list of hard-coded schemes. If we hard-code "help:" we have to hard-code its synonyms too. (find_monitor): Use g_new0 so fields in the Monitor are not uninitialized in this case (the fields in question are ignored, but it's still nicer this way). (nautilus_directory_monitor_add_internal): Set up the "monitor hidden files" and "monitor backup files" in the Monitor structure based on new parameters. (should_display_file_name): Use nautilus_file_name_matches_hidden_pattern and nautilus_file_name_matches_backup_pattern. (monitor_includes_file): New function that encapsulates the rule about which monitor includes which file. Handles the new flags for not monitoring hidden or backup files. (is_needy): Call monitor_includes_file. (select_needy_file): Call monitor_includes_file. * libnautilus-extensions/nautilus-file-private.h: * libnautilus-extensions/nautilus-file.c: (nautilus_file_name_matches_hidden_pattern), (nautilus_file_name_matches_backup_pattern): New functions to share with the directory code. (nautilus_file_is_hidden_file), (nautilus_file_is_backup_file): Use the new functions and use the raw relative_uri -- no need to unescape to change to a file name since the "." and "~" characters are not encoded. * src/file-manager/fm-directory-view.c: (fm_directory_view_initialize): Share more code with the filtering_changed_callback. Handle the desktop view better by never setting the "show hidden" and "show backup" flags (so they are both FALSE) and not setting up the callbacks. (fm_directory_view_destroy): Since we don't set up the callbacks for desktop windows, don't remove them for desktop windows. (queue_pending_files): Remove the desktop special case from here. It was strange to set the flags up then wait until this moment to clear them both. It's better to keep them FALSE. (finish_loading): Renamed and changed to pass the appropriate values in to the nautilus_directory_file_monitor_add call -- this is the actual bug fix. (filtering_changed_callback): Remove the desktop special case, since this function will now never be called for the desktop. * libnautilus-extensions/nautilus-directory.h: * libnautilus-extensions/nautilus-directory.c: (nautilus_directory_file_monitor_add): Pass through the new "monitor hidden files" and "monitor backup files" parameters. (nautilus_self_check_directory): Pass TRUE for both. * libnautilus-extensions/nautilus-vfs-directory.c: (vfs_file_monitor_add): Pass through the new "monitor hidden files" and "monitor backup files" parameters. * libnautilus-extensions/nautilus-merged-directory.c: (merged_file_monitor_add), (monitor_add_directory): Store the "monitor hidden files" and "monitor backup files" and pass them through to the individual directory monitor calls. * components/tree/nautilus-tree-model.c: (nautilus_tree_model_node_begin_monitoring_no_connect): * libnautilus-extensions/nautilus-file.c: (nautilus_file_monitor_add): * libnautilus-extensions/nautilus-trash-monitor.c: (nautilus_trash_monitor_initialize): * src/nautilus-applicable-views.c: (got_minimum_file_info_callback): Pass in TRUE for "monitor hidden files" and "monitor backup files" to get the same behavior as before. (In some cases the booleans are just ignored, in other cases we just monitor all files as we used to.) * RENAMING: Remind myself to change the name of the NAUTILUS_CALL_VIRTUAL macro to NAUTILUS_CALL_METHOD some day. |
||
Darin Adler | f683ed7935 |
reviewed by: Pavel Cisler <pavel@eazel.com>
Fix bug 5235 ("Forget History" eliminates history from Go menu, not History sidebar panel). * components/history/nautilus-history-view.c: (install_icons): Fix leak of pixmap and bitmap. (update_history): Replaced dual lock system with a single one. (button_press_callback): Only respect button 1, ignore others. (button_release_callback): Only respect button 1, ignore others, (history_changed_callback): A new single callback for when the history list changes to replace the multiple callbacks before. (nautilus_history_view_initialize_class), (nautilus_history_view_initialize), (nautilus_history_view_destroy), (main): Change the history view to use nautilus_view_standard_main which requires a subclass. This gets rid of a lot of boilerplate code. * libnautilus/nautilus-view-component.idl: Make every NautilusView get an explicit history_changed call instead of requiring them to guess when to get history. Removed the old get_history_list call and also renamed the HistoryList sequence to History. * libnautilus/nautilus-view.h: * libnautilus/nautilus-view.c: (impl_Nautilus_View_history_changed), (nautilus_view_initialize_class): Added the necessary stuff to cover the new history_changed call. * src/nautilus-view-frame.h: * src/nautilus-view-frame.c: (nautilus_view_frame_initialize): Connect handlers so we can send history_changed calls to the NautilusView when either the history or the icons change. (nautilus_view_frame_destroy): Change state to EMPTY so the history signal won't be sent once the frame is destroyed. (view_frame_activated): Send a history_changed to every newly-activated view. (get_CORBA_object): Helper function to make code that makes CORBA calls simpler. (check_if_view_is_gone): Use get_CORBA_object. (attach_client): Gave a nicer name, removed the code that makes the Nautilus_HistoryFrame interface. (nautilus_view_frame_load_client): Do the attach_client (formerly nautilus_view_frame_set_to_component) before calling view_frame_activated. This is needed since view_frame_activated now sends a history_changed to the view. (nautilus_view_frame_load_location), (nautilus_view_frame_stop_loading), (nautilus_view_frame_selection_changed), (nautilus_view_frame_title_changed): Use get_CORBA_object. (get_history_list): Made this private. (send_history): Helper function that sends history to the view if it's in the appropriate state. * src/Makefile.am: * src/nautilus-history-frame.c: * src/nautilus-history-frame.h: Removed the old NautilusHistoryFrame, which is no longer needed since we put the history call right in the NautilusView class. * src/nautilus-window-manage-views.c: (get_history_list_callback): Updated for Nautilus_HistoryList -> Nautilus_History change. Fix bug 5391 ("Esc" Canceling of an icon stretch doesn't restore icon position.). * libnautilus-extensions/nautilus-icon-private.h: * libnautilus-extensions/nautilus-icon-container.c: (clear_drag_state): Add a single bottleneck function to make sure the context menu timeout always gets canceled. (continue_stretching): Remove the unused "update_position" parameter. (undo_stretching): Consolidate the cancel_stretching function and restore the icon's position as well as its size. Also use the new bottleneck to clear the drag state. (button_release_event): Use the new bottleneck to clear the drag state. (show_context_menu_callback): Use the new bottleneck to clear the drag state. (nautilus_icon_container_set_selection), (nautilus_icon_container_select_list_unselect_others): Take advantage of the defaults in g_hash_table_new and use NULL, NULL instead of g_direct_hash, g_direct_equal. (nautilus_icon_container_show_stretch_handles): Save the position as well as the size. (compute_stretch): Add a FIXME with a bug number. Fix bug 5407 (Make "Hardware Overview" title translatable). * components/hardware/nautilus-hardware-view.c: (nautilus_hardware_view_destroy): Remove unused uri field. (extract_info): Fix storage leak. (get_RAM_description): Get rid of code that non-portably relies on long long. Mark strings for translation. (get_IDE_description): Get rid of code that non-portably relies on long long. Mark strings for translation. (setup_overview_form): Marked string for translation. (setup_CPU_form), (setup_RAM_form), (setup_IDE_form), (is_location), (nautilus_hardware_view_load_uri): Disable the views other than the overview for now since they are not ready to be seen. (nautilus_hardware_view_drag_data_received): Get rid of the code that makes the hardware view accept a URI list drag. Fix bug 5405 (nautilus --check fails when using LC_ALL=sv_SE due to missing entry in POTFILES.in). * po/POTFILES.in: Added nautilus-glib-extensions.c. Other changes. * src/nautilus-signaller.h: * src/nautilus-signaller.c: (nautilus_signaller_initialize_class), (nautilus_signaller_get_current): Change the NautilusSignaller class so that the interface calls the object a GtkObject * and the details of the class are hidden. * src/nautilus-property-browser.c: (emit_emblems_changed_signal): * src/nautilus-search-bar-criterion.c: (nautilus_search_bar_criterion_destroy), (nautilus_search_bar_criterion_new_from_values): * src/nautilus-window-menus.c: (nautilus_window_initialize_go_menu): * src/nautilus-window.c: (nautilus_send_history_list_changed): Now that nautilus_signaller_get_current returns a GtkObject, remove some unnecessary casts. * components/html/glibwww-callbacks.c: (get_sock_info), (glibwww_timer_register): * components/tree/nautilus-tree-model.c: (nautilus_tree_model_initialize): * components/tree/nautilus-tree-view.c: (nautilus_tree_view_initialize): * libnautilus-extensions/nautilus-directory-async.c: (async_job_start): * libnautilus-extensions/nautilus-directory.c: (nautilus_directory_notify_files_added), (nautilus_directory_notify_files_removed), (nautilus_directory_notify_files_moved): * libnautilus-extensions/nautilus-icon-factory.c: (nautilus_icon_factory_initialize): * libnautilus-extensions/nautilus-list.c: (nautilus_list_set_selection): * libnautilus-extensions/nautilus-merged-directory.c: (nautilus_merged_directory_initialize): * libnautilus-extensions/nautilus-trash-directory.c: (nautilus_trash_directory_initialize): * src/file-manager/fm-properties-window.c: (fm_properties_window_present): Take advantage of the defaults in g_hash_table_new and use NULL, NULL instead of g_direct_hash, g_direct_equal. |
||
Rebecca Schulman | d160849cb7 |
Bug numbers for the FIXMEs in libnautilus-extensions.
2000-12-07 Rebecca Schulman <rebecka@eazel.com> Bug numbers for the FIXMEs in libnautilus-extensions. * libnautilus-extensions/nautilus-customization-data.c: (format_name_for_display): * libnautilus-extensions/nautilus-directory-async.c: (dequeue_pending_idle_callback), (cancel_loading_attributes), (nautilus_directory_cancel_loading_file_attributes): * libnautilus-extensions/nautilus-directory.c: (nautilus_directory_handle_directory_moved), (nautilus_directory_notify_files_moved), (nautilus_self_check_directory): * libnautilus-extensions/nautilus-file-utilities.c: (nautilus_make_uri_canonical), (pthread_nautilus_read_file_thread_entry), (pthread_nautilus_read_file_async), (nautilus_read_file_cancel), (nautilus_self_check_file_utilities): * libnautilus-extensions/nautilus-file.c: (get_description), (nautilus_file_forget_attributes_internal): * libnautilus-extensions/nautilus-gdk-extensions.c: * libnautilus-extensions/nautilus-gdk-pixbuf-extensions.c: * libnautilus-extensions/nautilus-icon-container.c: (nautilus_icon_container_start_renaming_selected_item): * libnautilus-extensions/nautilus-icon-dnd.c: (receive_dropped_uri_list): * libnautilus-extensions/nautilus-icon-factory.c: * libnautilus-extensions/nautilus-label.c: (nautilus_label_size_allocate), (label_recompute_line_geometries): * libnautilus-extensions/nautilus-merged-directory.c: (nautilus_merged_directory_add_real_directory): * libnautilus-extensions/nautilus-mime-actions.c: (nautilus_mime_get_default_application_for_file_internal): * libnautilus-extensions/nautilus-scalable-font.c: (nautilus_text_layout_paint): * libnautilus-extensions/nautilus-search-uri.c: (nautilus_self_check_search_uri): * libnautilus-extensions/nautilus-string.c: * libnautilus-extensions/nautilus-undo-signal-handlers.c: (editable_key_press_event), (nautilus_undo_editable_set_undo_key): |
||
Darin Adler | ca6e9f3b4d |
reviewed by: John Sullivan <sullivan@eazel.com>
Fixed bug 3245 (When an empty folder is visited, the throbbing never stops), bug 2540 (Hook up done_loading signal in NautilusMergedDirectory?), and bug 3067 (throbber doesn't start again if you do a new "underway" call after load is complete). * src/file-manager/fm-directory-view.c: (queue_pending_files): Get rid of code that uses nautilus_directory_are_all_files_seen to notice we are done loading. (done_loading_callback): Use done_loading signal to notice we are done loading. (finish_loading_uri): Connect to the done_loading signal. (disconnect_model_handlers): Disconnect from the done_loading signal. * libnautilus-extensions/nautilus-merged-directory.c: (done_loading_callback), (nautilus_merged_directory_add_real_directory), (nautilus_merged_directory_remove_real_directory): Add code to track all the trash directories and emit done_loading signals once all of them are done loading. * src/nautilus-window-manage-views.c: (change_state): Turn the stop and the throbber back on when a view re-marks itself underway. * libnautilus-extensions/nautilus-drag.c: (nautilus_drag_file_receive_dropped_keyword): Fix storage leak by doing a free_deep on the list of keywords. * libnautilus-extensions/nautilus-file-operations.h: * libnautilus-extensions/nautilus-file-operations.c: Get rid of excess includes. * libnautilus-extensions/nautilus-icon-dnd.c: Get rid of unused ERASE_KEYWORD constant. * src/nautilus-window.c: (nautilus_window_constructed): Fix a typo in a comment. |
||
Maciej Stachowiak | 9874534dcf |
Use nautilus_file_get_existing', not nautilus_file_get', to check if a
* libnautilus-extensions/nautilus-directory.c: (nautilus_directory_notify_files_removed, nautilus_directory_notify_files_moved): Use `nautilus_file_get_existing', not `nautilus_file_get', to check if a file is already known. `nautilus_file_get' would have created new NautilusFiles and NautilusDirectories only to do redundant notification later in the function. Also, the old code was a bit silly because `nautilus_file_get' only returns NULL for a NULL URI. Work towards bug 3362, eliminate directory metadata. * libnautilus-extensions/nautilus-file-attributes.h: Added NAUTILUS_FILE_ATTRIBUTE_METADATA attribute. * libnautilus-extensions/nautilus-directory-async.c (set_up_request_by_file_attributes): * libnautilus-extensions/nautilus-wait-until-ready.h, libnautilus-extensions/nautilus-file.h, libnautilus-extensions/nautilus-directory.h, libnautilus-extensions/nautilus-directory.c, libnautilus-extensions/nautilus-file.c (nautilus_directory_call_when_ready, nautilus_directory_wait_until_ready, nautilus_directory_file_monitor_add, nautilus_self_check_directory, nautilus_file_monitor_add, nautilus_file_call_when_ready, nautilus_file_wait_until_ready): Remove monitor_metadata or wait_for_metadata attribtues from these calls; the new way to do it is to monitor or wait for the METADATA file attribute. * libnautilus-extensions/nautilus-directory-private.h libnautilus-extensions/nautilus-directory-async.c: (nautilus_directory_monitor_add_internal, nautilus_directory_call_when_ready_internal, nautilus_directory_check_if_ready_internal): Eliminate monitor_metadata, wait_for_metadata, etc arguments. * libnautilus-extensions/nautilus-merged-directory.c: (merged_callback_connect_directory), (merged_call_when_ready), (merged_file_monitor_add), (monitor_add_directory): * libnautilus-extensions/nautilus-vfs-directory.c: (vfs_call_when_ready), (vfs_file_monitor_add): * libnautilus-extensions/nautilus-directory-background.c (nautilus_connect_background_to_directory_metadata): Monitor metadata the new approved way. * libnautilus-extensions/nautilus-mime-actions.c (nautilus_directory_wait_for_metadata, nautilus_mime_get_default_component_for_uri_internal, nautilus_mime_get_short_list_components_for_uri, nautilus_mime_get_all_components_for_uri, get_mime_type_from_file): Wait for metadata the new approved way. * src/file-manager/fm-directory-view.c (fm_directory_view_activate_file, fm_directory_view_load_uri, finish_loading_uri, metadata_ready_callback): Monitor/call_when_ready using the new API. * src/file-manager/fm-properties-window.c: (create_properties_window, fm_properties_window_present): Monitor/call_when_ready using the new API. * src/file-manager/fm-search-list-view.c (real_adding_file): Monitor/call_when_ready using the new API. * src/file-manager/nautilus-trash-monitor.c (nautilus_trash_monitor_initialize): Monitor/call_when_ready using the new API. * src/nautilus-applicable-views.c (nautilus_navigation_info_new): Monitor/call_when_ready using the new API. * components/notes/nautilus-notes.c (notes_load_metainfo): Monitor/call_when_ready using the new API. * components/tree/nautilus-tree-model.c: (nautilus_tree_model_monitor_add, nautilus_tree_model_monitor_node): Monitor/call_when_ready using the new API. * src/nautilus-sidebar-title.c, src/nautilus-sidebar-title.h (nautilus_sidebar_title_set_uri): Monitor/call_when_ready using the new API, and use file metadata instead of directory metadata. * src/nautilus-sidebar.c (nautilus_sidebar_destroy, nautilus_sidebar_add_panel_items, nautilus_sidebar_background_is_default, receive_dropped_uri_list, receive_dropped_color, receive_dropped_keyword, (background_settings_changed_callback, background_appearance_changed_callback, background_reset_callback, open_with_callback, nautilus_sidebar_update_buttons, nautilus_sidebar_update_appearance, nautilus_sidebar_set_uri): Monitor/call_when_ready using the new API, and use file metadata instead of directory metadata. Keep around a NautilusFile representing the current sidebar location, simplifying bunches of code and hopefully eliminating potential redundant I/O. * src/nautilus-window-manage-views.c (viewed_file_changed_callback, position_and_show_window_callback, nautilus_window_end_location_change_callback): Monitor/call_when_ready using the new API, and use file metadata instead of directory metadata. Keep around a NautilusFile representing the current sidebar location, simplifying bunches of code and hopefully eliminating potential redundant I/O. * src/nautilus-window.c (nautilus_window_save_geometry): Use file metadata instead of directory metadata. |
||
John Sullivan | 75d9047c7c |
Added more bug numbers to FIXMEs. 49 to go.
* components/services/install/lib/eazel-install-rpm-glue.c: (eazel_uninstall_downward_traverse): * libnautilus-extensions/nautilus-merged-directory.c: (nautilus_merged_directory_add_real_directory): * libnautilus-extensions/nautilus-mime-actions.c: (make_oaf_query_with_known_mime_type), (make_oaf_query_with_uri_scheme_only): * libnautilus-extensions/nautilus-preferences.c: (nautilus_preferences_set_string_list): * libnautilus-extensions/nautilus-program-chooser.c: (program_file_pair_compute_status), (get_supertype_from_file): * libnautilus-extensions/nautilus-scalable-font.c: (nautilus_scalable_font_measure_text): * libnautilus/nautilus-view.c: (view_frame_call_begin): * nautilus-installer/src/support.c: (create_pixmap), (create_image): * src/file-manager/fm-desktop-icon-view.c: (create_mount_link), (volume_unmounted_callback), (place_home_directory): * src/file-manager/fm-icon-view.c: (get_next_position), (play_file), (get_icon_text_callback): * src/file-manager/fm-list-view.c: (fm_list_view_initialize), (create_list), (fm_list_view_set_zoom_level), (fm_list_view_font_family_changed): * src/file-manager/nautilus-indexing-info.c: (nautilus_indexing_info_show_dialog): * src/nautilus-application.c: (nautilus_application_startup): * src/nautilus-first-time-druid.c: (next_proxy_configuration_page_callback), (initiate_file_download): * src/nautilus-property-browser.c: (add_background_to_browser): * src/nautilus-shell.c: |
||
Darin Adler | 7295589544 |
Finished task 571 (Make a Trash "virtual directory" with trash
from all volumes). Some loose ends are already reported in bugs 2146, 2243, and 2244. * libnautilus-extensions/Makefile.am: * libnautilus-extensions/nautilus-merged-directory.h: * libnautilus-extensions/nautilus-merged-directory.c: Moved all the guts of NautilusTrashDirectory that are solely about having a single directory that's a union of a bunch of real directories into a separate base class. Also finished the implementation, leaving only unimportant loose ends. * libnautilus-extensions/nautilus-trash-directory.h: * libnautilus-extensions/nautilus-trash-directory.c: (get_volume_vfs_uri_if_writable), (find_directory_callback), (add_volume), (remove_trash_volume), (remove_volume), (add_one_volume), (volume_mounted_callback), (volume_unmounted_callback), (nautilus_trash_directory_initialize), (remove_trash_volume_cover), (trash_destroy), (nautilus_trash_directory_initialize_class): Added the code to find the trash on all volumes. * libnautilus-extensions/nautilus-glib-extensions.h: * libnautilus-extensions/nautilus-glib-extensions.c: (flatten_hash_table_element), (nautilus_g_hash_table_safe_for_each): Added a new version of the hash table iterator that works even if the callback removes items from the hash table. * libnautilus-extensions/nautilus-scalable-font.c: (nautilus_scalable_font_largest_fitting_font_size): Added code to handle the case of an empty name; the old code worked with NULL, but not with "". * src/file-manager/fm-desktop-icon-view.c: (fm_desktop_icon_view_trash_state_changed_callback), (find_and_rename_trash_link), (create_or_rename_trash): * src/file-manager/nautilus-trash-monitor.c: (nautilus_trash_monitor_initialize): Changed to use the new "trash:" URL instead of locating one of the trash folders. * src/file-manager/fm-directory-view.h: * src/file-manager/fm-directory-view.c: (fm_directory_view_initialize_class), (fm_directory_all_selected_items_in_trash): * src/file-manager/fm-search-list-view.c: (fm_search_list_view_initialize_class): The "share_parent" optimization didn't work for the new trash. Instead of fixing it, I just removed it. * src/nautilus-window-manage-views.c: (compute_default_title), (nautilus_window_update_title): Made two changes to the default title: 1) Use "" instead of "Nautilus" when there's no title. We still use "Nautilus" in the window title, but not in the sidebar any more. 2) Use the scheme part of a URI if there's nothing after the colon. This works nicely for the trash. * libnautilus-extensions/nautilus-background-canvas-group.c: (nautilus_background_canvas_group_render): Removed some unneeded code and the FIXME that goes with it. * libnautilus-extensions/nautilus-directory.c: (nautilus_directory_is_not_empty): Removed an overzealous assert. |