diff options
author | Jared Moore <jaredm@svn.gnome.org> | 2008-06-08 13:29:20 +0000 |
---|---|---|
committer | Jared William Moore <jaredm@src.gnome.org> | 2008-06-08 13:29:20 +0000 |
commit | 0e4ce3666e134b305d4a1be4e0f232a316e8ee18 (patch) | |
tree | ce7d2831b94e0959bb1a51f867542aba8df1352b | |
parent | 40eaf719991041ef03f764ec8256a5c190916418 (diff) | |
download | nautilus-0e4ce3666e134b305d4a1be4e0f232a316e8ee18.tar.gz |
Add mnemonic to "Open in New Window" and add "Open in New Tab" in tree
2008-06-08 Jared Moore <jaredm@svn.gnome.org>
* src/file-manager/fm-tree-view.c (got_activation_uri_callback),
(selection_changed_timer_callback), (fm_tree_view_activate_file),
(fm_tree_view_open_cb), (fm_tree_view_open_in_new_tab_cb),
(fm_tree_view_open_in_new_window_cb), (create_popup_menu):
Add mnemonic to "Open in New Window" and add "Open in New Tab" in
tree view sidebar.
svn path=/branches/multiview/; revision=14242
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | src/file-manager/fm-tree-view.c | 37 |
2 files changed, 36 insertions, 10 deletions
@@ -1,5 +1,14 @@ 2008-06-08 Jared Moore <jaredm@svn.gnome.org> + * src/file-manager/fm-tree-view.c (got_activation_uri_callback), + (selection_changed_timer_callback), (fm_tree_view_activate_file), + (fm_tree_view_open_cb), (fm_tree_view_open_in_new_tab_cb), + (fm_tree_view_open_in_new_window_cb), (create_popup_menu): + Add mnemonic to "Open in New Window" and add "Open in New Tab" in + tree view sidebar. + +2008-06-08 Jared Moore <jaredm@svn.gnome.org> + * src/nautilus-places-sidebar.c (bookmarks_button_press_event_cb): Middle click on entry in places sidebar to open a new tab. diff --git a/src/file-manager/fm-tree-view.c b/src/file-manager/fm-tree-view.c index a0ccce1fb..feb90a388 100644 --- a/src/file-manager/fm-tree-view.c +++ b/src/file-manager/fm-tree-view.c @@ -93,7 +93,7 @@ struct FMTreeViewDetails { GVolumeMonitor *volume_monitor; NautilusFile *activation_file; - gboolean activation_in_new_window; + NautilusWindowOpenFlags activation_flags; NautilusTreeViewDragDest *drag_dest; @@ -345,7 +345,8 @@ got_activation_uri_callback (NautilusFile *file, gpointer callback_data) g_assert (file == view->details->activation_file); - mode = view->details->activation_in_new_window ? NAUTILUS_WINDOW_OPEN_IN_NAVIGATION : NAUTILUS_WINDOW_OPEN_ACCORDING_TO_MODE; + mode = ((view->details->activation_flags & NAUTILUS_WINDOW_OPEN_FLAG_NEW_WINDOW) != 0) + ? NAUTILUS_WINDOW_OPEN_IN_NAVIGATION : NAUTILUS_WINDOW_OPEN_ACCORDING_TO_MODE; slot = nautilus_window_info_get_active_slot (view->details->window); @@ -374,7 +375,7 @@ got_activation_uri_callback (NautilusFile *file, gpointer callback_data) (slot, location, mode, - 0, + view->details->activation_flags, NULL); g_object_unref (location); } else { @@ -400,7 +401,7 @@ got_activation_uri_callback (NautilusFile *file, gpointer callback_data) (slot, location, mode, - 0, + view->details->activation_flags, NULL); g_object_unref (location); } @@ -461,7 +462,7 @@ selection_changed_timer_callback(FMTreeView *view) if (view->details->activation_file == NULL) { return FALSE; } - view->details->activation_in_new_window = FALSE; + view->details->activation_flags = 0; attributes = NAUTILUS_FILE_ATTRIBUTE_INFO | NAUTILUS_FILE_ATTRIBUTE_LINK_INFO; nautilus_file_call_when_ready (view->details->activation_file, attributes, @@ -776,14 +777,14 @@ button_pressed_callback (GtkTreeView *treeview, GdkEventButton *event, static void fm_tree_view_activate_file (FMTreeView *view, NautilusFile *file, - gboolean open_in_new_window) + NautilusWindowOpenFlags flags) { NautilusFileAttributes attributes; cancel_activation (view); view->details->activation_file = nautilus_file_ref (file); - view->details->activation_in_new_window = open_in_new_window; + view->details->activation_flags = flags; attributes = NAUTILUS_FILE_ATTRIBUTE_INFO | NAUTILUS_FILE_ATTRIBUTE_LINK_INFO; nautilus_file_call_when_ready (view->details->activation_file, attributes, @@ -794,14 +795,21 @@ static void fm_tree_view_open_cb (GtkWidget *menu_item, FMTreeView *view) { - fm_tree_view_activate_file (view, view->details->popup_file, FALSE); + fm_tree_view_activate_file (view, view->details->popup_file, 0); +} + +static void +fm_tree_view_open_in_new_tab_cb (GtkWidget *menu_item, + FMTreeView *view) +{ + fm_tree_view_activate_file (view, view->details->popup_file, NAUTILUS_WINDOW_OPEN_FLAG_NEW_TAB); } static void fm_tree_view_open_in_new_window_cb (GtkWidget *menu_item, FMTreeView *view) { - fm_tree_view_activate_file (view, view->details->popup_file, TRUE); + fm_tree_view_activate_file (view, view->details->popup_file, NAUTILUS_WINDOW_OPEN_FLAG_NEW_WINDOW); } static void @@ -1115,8 +1123,17 @@ create_popup_menu (FMTreeView *view) gtk_menu_shell_append (GTK_MENU_SHELL (popup), menu_item); view->details->popup_open = menu_item; + /* add the "open in new tab" menu item */ + menu_item = gtk_menu_item_new_with_mnemonic (_("Open in New _Tab")); + g_signal_connect (menu_item, "activate", + G_CALLBACK (fm_tree_view_open_in_new_tab_cb), + view); + gtk_widget_show (menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (popup), menu_item); + view->details->popup_open_in_new_window = menu_item; + /* add the "open in new window" menu item */ - menu_item = gtk_image_menu_item_new_with_label (_("Open in New Window")); + menu_item = gtk_menu_item_new_with_mnemonic (_("Open in New _Window")); g_signal_connect (menu_item, "activate", G_CALLBACK (fm_tree_view_open_in_new_window_cb), view); |