- g_return_val_if_fail (self, NULL);
- priv = MODEST_MSG_VIEW_GET_PRIVATE(self);
- html = priv->gtkhtml;
-
- /* I'm sure there is a better way to check for selected text */
- sel = gtk_html_get_selection_html(GTK_HTML(html), &len);
- if (!sel)
- return NULL;
-
- g_free(sel);
-
- clip = gtk_widget_get_clipboard(html, GDK_SELECTION_PRIMARY);
- return gtk_clipboard_wait_for_text(clip);
+ if (!initialized) {
+
+ signals[ATTACHMENT_CLICKED_SIGNAL] =
+ g_signal_new ("attachment_clicked",
+ MODEST_TYPE_MSG_VIEW,
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET(ModestMsgViewIface, attachment_clicked),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__OBJECT,
+ G_TYPE_NONE, 1, G_TYPE_OBJECT);
+
+ signals[RECPT_ACTIVATED_SIGNAL] =
+ g_signal_new ("recpt_activated",
+ MODEST_TYPE_MSG_VIEW,
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET(ModestMsgViewIface, recpt_activated),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__STRING,
+ G_TYPE_NONE, 1, G_TYPE_STRING);
+
+ signals[LINK_CONTEXTUAL_SIGNAL] =
+ g_signal_new ("link_contextual",
+ MODEST_TYPE_MSG_VIEW,
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET(ModestMsgViewIface, link_contextual),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__STRING,
+ G_TYPE_NONE, 1, G_TYPE_STRING);
+
+ signals[FETCH_IMAGE_SIGNAL] =
+ g_signal_new ("fetch_image",
+ MODEST_TYPE_MSG_VIEW,
+ G_SIGNAL_ACTION | G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET(ModestMsgViewIface, fetch_image),
+ NULL, NULL,
+ modest_marshal_BOOLEAN__STRING_OBJECT,
+ G_TYPE_BOOLEAN, 2, G_TYPE_STRING, G_TYPE_OBJECT);
+
+ signals[SHOW_DETAILS_SIGNAL] =
+ g_signal_new ("show_details",
+ MODEST_TYPE_MSG_VIEW,
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET(ModestMsgViewIface, show_details),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
+
+ signals[LIMIT_ERROR_SIGNAL] =
+ g_signal_new ("limit_error",
+ MODEST_TYPE_MSG_VIEW,
+ G_SIGNAL_RUN_FIRST,
+ G_STRUCT_OFFSET(ModestMsgViewIface, limit_error),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
+
+ initialized = TRUE;
+ }