summaryrefslogtreecommitdiff
path: root/libnautilus/nautilus-clipboard.c
diff options
context:
space:
mode:
authorRebecca Schulman <rebecka@eazel.com>2000-12-07 23:58:16 +0000
committerRebecca Schulman <rebecka@src.gnome.org>2000-12-07 23:58:16 +0000
commitaa31a6c20fd4b77ceebaf718933738c74b220d6e (patch)
tree347060042a1a0f52919687cb6814c94844b161cb /libnautilus/nautilus-clipboard.c
parentfbd10312a2fd063c769a17282524bdfa79c5aa24 (diff)
downloadnautilus-aa31a6c20fd4b77ceebaf718933738c74b220d6e.tar.gz
Hopefully will improve performance for menu merging in a case where it is
2000-12-07 Rebecca Schulman <rebecka@eazel.com> Hopefully will improve performance for menu merging in a case where it is poor. (bug 5020) Completely fixing the bug will involve some design changes in the way the clipboard works, though. reviewed by: John Sullivan <sullivan@eazel.com> (the additional bonobo freezes and thaws) * libnautilus/nautilus-clipboard.c: (merge_in_clipboard_menu_items), (merge_out_clipboard_menu_items): Add freezes and thaws in hopes of improving performance here * src/nautilus-window-menus.c: (nautilus_window_initialize_menus): Ditto * components/tree/nautilus-tree-view-dnd.c: (nautilus_tree_view_get_drop_action): * libnautilus-extensions/nautilus-user-level-manager.h: * src/file-manager/fm-desktop-icon-view.c: (create_mount_link): * src/nautilus-switchable-search-bar.c: (nautilus_switchable_search_bar_set_mode): * src/nautilus-window-toolbars.c: (theme_changed_callback): Removed fixme comments in cases where the fixme has been fixed.
Diffstat (limited to 'libnautilus/nautilus-clipboard.c')
-rw-r--r--libnautilus/nautilus-clipboard.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libnautilus/nautilus-clipboard.c b/libnautilus/nautilus-clipboard.c
index 55b845e8f..b9edd8ce1 100644
--- a/libnautilus/nautilus-clipboard.c
+++ b/libnautilus/nautilus-clipboard.c
@@ -187,6 +187,7 @@ merge_in_clipboard_menu_items (GtkObject *widget_object,
container = target_data->container;
add_selection_callback = target_data->editable_shares_selection_changes;
+
bonobo_ui_component_set_container (ui,
container);
bonobo_ui_component_freeze (ui, NULL);
@@ -194,7 +195,7 @@ merge_in_clipboard_menu_items (GtkObject *widget_object,
DATADIR,
"nautilus-clipboard-ui.xml",
"nautilus");
- bonobo_ui_component_thaw (ui, NULL);
+
if (add_selection_callback) {
gtk_signal_connect_after (GTK_OBJECT (widget_object), "selection_changed",
@@ -208,6 +209,7 @@ merge_in_clipboard_menu_items (GtkObject *widget_object,
set_clipboard_menu_items_sensitive (ui);
}
set_clipboard_items_are_merged_in (widget_object, TRUE);
+ bonobo_ui_component_thaw (ui, NULL);
}
static void
@@ -221,8 +223,8 @@ merge_out_clipboard_menu_items (GtkObject *widget_object,
g_assert (target_data != NULL);
ui = BONOBO_UI_COMPONENT (target_data->component);
selection_callback_was_added = target_data->editable_shares_selection_changes;
-
bonobo_ui_component_unset_container (ui);
+
if (selection_callback_was_added) {
gtk_signal_disconnect_by_func (GTK_OBJECT (widget_object),
selection_changed_callback,