From: Christian Dywan Date: Wed, 21 Sep 2011 22:26:49 +0000 (+0200) Subject: Switch to already open tab of external URI if possible X-Git-Url: https://spindle.queued.net/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a49c6e8ad75b9ce3d87dffda948a86d5e78eebcc;p=midori Switch to already open tab of external URI if possible --- diff --git a/midori/midori-app.c b/midori/midori-app.c index bb9b5b65..26b81ce1 100644 --- a/midori/midori-app.c +++ b/midori/midori-app.c @@ -500,8 +500,25 @@ midori_app_command_received (MidoriApp* app, first = FALSE; } else - midori_browser_set_current_page (browser, - midori_browser_add_uri (browser, fixed_uri)); + { + /* Switch to already open tab if possible */ + guint i = 0; + GtkWidget* tab; + gboolean found = FALSE; + while ((tab = midori_browser_get_nth_tab (browser, i++))) + if (g_str_equal ( + midori_view_get_display_uri (MIDORI_VIEW (tab)), + fixed_uri)) + { + found = TRUE; + break; + } + if (found) + midori_browser_set_current_tab (browser, tab); + else + midori_browser_set_current_page (browser, + midori_browser_add_uri (browser, fixed_uri)); + } } g_free (fixed_uri); uris++;