[Xfce4-commits] <midori:master> Offer 'Send message to <mail address>' for selections
Christian Dywan
noreply at xfce.org
Thu Oct 1 02:40:01 CEST 2009
Updating branch refs/heads/master
to 037be4dda44e622e2c33728e2cd55c4579c4d8df (commit)
from 60a96b9d8b1d69d1979c9e290ab019549ef3493f (commit)
commit 037be4dda44e622e2c33728e2cd55c4579c4d8df
Author: Christian Dywan <christian at twotoasts.de>
Date: Wed Sep 30 23:38:18 2009 +0200
Offer 'Send message to <mail address>' for selections
midori/midori-view.c | 38 +++++++++++++++++++++++++++++---------
1 files changed, 29 insertions(+), 9 deletions(-)
diff --git a/midori/midori-view.c b/midori/midori-view.c
index f3c17ba..ed06281 100644
--- a/midori/midori-view.c
+++ b/midori/midori-view.c
@@ -1404,10 +1404,20 @@ midori_web_view_menu_new_tab_activate_cb (GtkWidget* widget,
else
{
gchar* data = (gchar*)g_object_get_data (G_OBJECT (widget), "uri");
- gchar* uri = sokoke_magic_uri (data, NULL);
- g_signal_emit (view, signals[NEW_TAB], 0, uri,
- view->open_tabs_in_the_background);
- g_free (uri);
+ if (strchr (data, '@'))
+ {
+ gchar* uri = g_strconcat ("mailto:", data, NULL);
+ sokoke_show_uri (gtk_widget_get_screen (widget),
+ uri, GDK_CURRENT_TIME, NULL);
+ g_free (uri);
+ }
+ else
+ {
+ gchar* uri = sokoke_magic_uri (data, NULL);
+ g_signal_emit (view, signals[NEW_TAB], 0, uri,
+ view->open_tabs_in_the_background);
+ g_free (uri);
+ }
}
}
@@ -1753,12 +1763,22 @@ webkit_web_view_populate_popup_cb (WebKitWebView* web_view,
g_list_free (items);
#endif
- if (view->selected_text && strchr (view->selected_text, '.')
- && !strchr (view->selected_text, ' '))
+ g_strstrip (view->selected_text);
+ if (view->selected_text && !strchr (view->selected_text, ' ')
+ && strchr (view->selected_text, '.'))
{
- menuitem = midori_view_insert_menu_item (menu_shell, -1,
- _("Open Address in New _Tab"), GTK_STOCK_JUMP_TO,
- G_CALLBACK (midori_web_view_menu_new_tab_activate_cb), widget);
+ if (strchr (view->selected_text, '@'))
+ {
+ gchar* text = g_strdup_printf (_("Send a message to %s"), view->selected_text);
+ menuitem = midori_view_insert_menu_item (menu_shell, -1,
+ text, GTK_STOCK_JUMP_TO,
+ G_CALLBACK (midori_web_view_menu_new_tab_activate_cb), widget);
+ g_free (text);
+ }
+ else
+ menuitem = midori_view_insert_menu_item (menu_shell, -1,
+ _("Open Address in New _Tab"), GTK_STOCK_JUMP_TO,
+ G_CALLBACK (midori_web_view_menu_new_tab_activate_cb), widget);
g_object_set_data (G_OBJECT (menuitem), "uri", view->selected_text);
}
/* FIXME: view selection source */
More information about the Xfce4-commits
mailing list