[Xfce4-commits] <midori:master> Implement 'Close other tabs' menu item in tab context menu

Christian Dywan noreply at xfce.org
Thu Jan 14 02:50:01 CET 2010


Updating branch refs/heads/master
         to 8dbc86361d02d50165326c76e73ec2fcead9fa27 (commit)
       from 9b01e48975bc3f1a472e397c3a1f0171a767bbe3 (commit)

commit 8dbc86361d02d50165326c76e73ec2fcead9fa27
Author: Christian Dywan <christian at twotoasts.de>
Date:   Thu Jan 14 02:49:19 2010 +0100

    Implement 'Close other tabs' menu item in tab context menu

 midori/midori-view.c |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/midori/midori-view.c b/midori/midori-view.c
index 22a0357..b241581 100644
--- a/midori/midori-view.c
+++ b/midori/midori-view.c
@@ -3618,6 +3618,23 @@ midori_view_tab_label_menu_duplicate_tab_cb (GtkWidget*  menuitem,
 }
 
 static void
+midori_view_browser_close_tabs_cb (GtkWidget* view,
+                                   gpointer   data)
+{
+    GtkWidget* remaining_view = data;
+    if (view != remaining_view)
+        gtk_widget_destroy (view);
+}
+
+static void
+midori_view_tab_label_menu_close_other_tabs_cb (GtkWidget* menuitem,
+                                                GtkWidget* view)
+{
+    MidoriBrowser* browser = midori_browser_get_for_widget (view);
+    midori_browser_foreach (browser, midori_view_browser_close_tabs_cb, view);
+}
+
+static void
 midori_view_tab_label_menu_minimize_tab_cb (GtkWidget*  menuitem,
                                             MidoriView* view)
 {
@@ -3683,6 +3700,10 @@ midori_view_get_tab_menu (MidoriView* view)
         G_CALLBACK (midori_view_tab_label_menu_minimize_tab_cb), view);
     menuitem = gtk_separator_menu_item_new ();
     gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
+    menuitem = gtk_menu_item_new_with_mnemonic (_("Close ot_her Tabs"));
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
+    g_signal_connect (menuitem, "activate",
+        G_CALLBACK (midori_view_tab_label_menu_close_other_tabs_cb), view);
     menuitem = gtk_image_menu_item_new_from_stock (GTK_STOCK_CLOSE, NULL);
     gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
     g_signal_connect (menuitem, "activate",



More information about the Xfce4-commits mailing list