]> spindle.queued.net Git - midori/commitdiff
Optimize view popup population
authorEnrico Tröger <enrico.troeger@uvena.de>
Sat, 18 Oct 2008 20:50:58 +0000 (22:50 +0200)
committerChristian Dywan <christian@twotoasts.de>
Sat, 18 Oct 2008 20:50:58 +0000 (22:50 +0200)
midori/midori-view.c

index 9425b5defbb955dd11771afc1fac8831ee15be89..3bad796b99b5d264dcb4120fe422708772cb441c 100644 (file)
@@ -893,6 +893,7 @@ webkit_web_view_populate_popup_cb (WebKitWebView* web_view,
     GdkScreen* screen;
     GtkIconTheme* icon_theme;
     GList* items;
+    gboolean has_selection;
 
     /* We do not want to modify the Edit menu.
        The only reliable indicator is inspecting the first item. */
@@ -906,6 +907,8 @@ webkit_web_view_populate_popup_cb (WebKitWebView* web_view,
             return;
     }
 
+    has_selection = midori_view_has_selection (view);
+
     if (view->link_uri)
     {
         menuitem = gtk_image_menu_item_new_with_mnemonic (
@@ -949,7 +952,7 @@ webkit_web_view_populate_popup_cb (WebKitWebView* web_view,
         gtk_widget_show (menuitem);
     }
 
-    if (!view->link_uri && midori_view_has_selection (view))
+    if (!view->link_uri && has_selection)
     {
         if (strchr (view->selected_text, '.')
             && !strchr (view->selected_text, ' '))
@@ -968,7 +971,7 @@ webkit_web_view_populate_popup_cb (WebKitWebView* web_view,
         /* FIXME: view selection source */
     }
 
-    if (!view->link_uri && !midori_view_has_selection (view))
+    if (!view->link_uri && !has_selection)
     {
         /* FIXME: Make this sensitive only when there is a tab to undo */
         menuitem = gtk_image_menu_item_new_with_mnemonic (_("Undo Close Tab"));