From a269411bacc7a7ce549db591204a868a7a8b2184 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Vr=C3=A1til?= Date: Wed, 28 Mar 2012 18:39:13 +0200 Subject: WebKit port - port addressbook, calendar and update composer to keep working with GtkHtml --- composer/e-composer-actions.c | 2 +- composer/e-composer-activity.c | 10 +++++----- composer/e-composer-private.c | 2 +- composer/e-composer-private.h | 2 +- composer/e-msg-composer.c | 39 ++++++++++++++++++++------------------- composer/e-msg-composer.h | 5 +++-- 6 files changed, 31 insertions(+), 29 deletions(-) (limited to 'composer') diff --git a/composer/e-composer-actions.c b/composer/e-composer-actions.c index 11ad9cdabd..966866b830 100644 --- a/composer/e-composer-actions.c +++ b/composer/e-composer-actions.c @@ -462,7 +462,7 @@ e_composer_actions_init (EMsgComposer *composer) GtkActionGroup *action_group; GtkUIManager *ui_manager; GtkhtmlEditor *editor; - EWebView *web_view; + EWebViewGtkHTML *web_view; gboolean visible; g_return_if_fail (E_IS_MSG_COMPOSER (composer)); diff --git a/composer/e-composer-activity.c b/composer/e-composer-activity.c index 603a271580..a74e5cdce7 100644 --- a/composer/e-composer-activity.c +++ b/composer/e-composer-activity.c @@ -46,14 +46,14 @@ composer_activity_lock_interface (EComposerActivity *activity) { GtkActionGroup *action_group; EMsgComposer *composer; - EWebView *web_view; + EWebViewGtkHTML *web_view; gboolean editable; composer = e_composer_activity_get_composer (activity); web_view = e_msg_composer_get_web_view (composer); - editable = e_web_view_get_editable (web_view); - e_web_view_set_editable (web_view, FALSE); + editable = e_web_view_gtkhtml_get_editable (web_view); + e_web_view_gtkhtml_set_editable (web_view, FALSE); activity->priv->saved_editable = editable; action_group = composer->priv->async_actions; @@ -65,14 +65,14 @@ composer_activity_unlock_interface (EComposerActivity *activity) { GtkActionGroup *action_group; EMsgComposer *composer; - EWebView *web_view; + EWebViewGtkHTML *web_view; gboolean editable; composer = e_composer_activity_get_composer (activity); editable = activity->priv->saved_editable; web_view = e_msg_composer_get_web_view (composer); - e_web_view_set_editable (web_view, editable); + e_web_view_gtkhtml_set_editable (web_view, editable); action_group = composer->priv->async_actions; gtk_action_group_set_sensitive (action_group, TRUE); diff --git a/composer/e-composer-private.c b/composer/e-composer-private.c index 3441c6b566..477aae4296 100644 --- a/composer/e-composer-private.c +++ b/composer/e-composer-private.c @@ -129,7 +129,7 @@ e_composer_private_constructed (EMsgComposer *composer) EFocusTracker *focus_tracker; EShell *shell; EShellSettings *shell_settings; - EWebView *web_view; + EWebViewGtkHTML *web_view; GtkhtmlEditor *editor; GtkUIManager *ui_manager; GtkAction *action; diff --git a/composer/e-composer-private.h b/composer/e-composer-private.h index a727cf6841..990c5b64bc 100644 --- a/composer/e-composer-private.h +++ b/composer/e-composer-private.h @@ -51,7 +51,7 @@ #include "widgets/misc/e-picture-gallery.h" #include "widgets/misc/e-preferences-window.h" #include "widgets/misc/e-signature-combo-box.h" -#include "widgets/misc/e-web-view.h" +#include "widgets/misc/e-web-view-gtkhtml.h" #include "shell/e-shell.h" #ifdef HAVE_XFREE diff --git a/composer/e-msg-composer.c b/composer/e-msg-composer.c index 8da99128e1..25553295aa 100644 --- a/composer/e-msg-composer.c +++ b/composer/e-msg-composer.c @@ -193,19 +193,20 @@ emcu_part_to_html (CamelMimePart *part, camel_stream_mem_set_byte_array (mem, buf); emfq = em_format_quote_new (NULL, (CamelStream *) mem, EM_FORMAT_QUOTE_KEEP_SIG); - ((EMFormat *) emfq)->composer = TRUE; + em_format_set_composer ((EMFormat *) emfq, TRUE); if (source) { /* Copy over things we can, other things are internal. * XXX Perhaps need different api than 'clone'. */ - if (source->default_charset) + if (em_format_get_default_charset (source)) em_format_set_default_charset ( - (EMFormat *) emfq, source->default_charset); - if (source->charset) - em_format_set_default_charset ( - (EMFormat *) emfq, source->charset); + (EMFormat *) emfq, em_format_get_default_charset (source)); + if (em_format_get_charset (source)) + em_format_set_charset ( + (EMFormat *) emfq, em_format_get_charset (source)); } - em_format_part ( - EM_FORMAT (emfq), CAMEL_STREAM (mem), part, cancellable); + + em_format_format_text (EM_FORMAT (emfq), + CAMEL_STREAM (mem), CAMEL_DATA_WRAPPER (part), cancellable); g_object_unref (emfq); camel_stream_write((CamelStream *) mem, "", 1, cancellable, NULL); @@ -1691,7 +1692,7 @@ msg_composer_paste_clipboard_targets_cb (GtkClipboard *clipboard, } static void -msg_composer_paste_clipboard_cb (EWebView *web_view, +msg_composer_paste_clipboard_cb (EWebViewGtkHTML *web_view, EMsgComposer *composer) { GtkClipboard *clipboard; @@ -1721,7 +1722,7 @@ msg_composer_realize_gtkhtml_cb (GtkWidget *widget, /* When redirecting a message, the message body is not * editable and therefore cannot be a drag destination. */ - if (!e_web_view_get_editable (E_WEB_VIEW (widget))) + if (!e_web_view_gtkhtml_get_editable (E_WEB_VIEW_GTKHTML (widget))) return; view = e_msg_composer_get_attachment_view (composer); @@ -1969,7 +1970,7 @@ msg_composer_constructed (GObject *object) EAttachmentView *view; EAttachmentStore *store; EComposerHeaderTable *table; - EWebView *web_view; + EWebViewGtkHTML *web_view; GtkUIManager *ui_manager; GtkToggleAction *action; const gchar *id; @@ -2179,7 +2180,7 @@ msg_composer_key_press_event (GtkWidget *widget, EMsgComposer *composer = E_MSG_COMPOSER (widget); GtkWidget *input_widget; GtkhtmlEditor *editor; - EWebView *web_view; + EWebViewGtkHTML *web_view; editor = GTKHTML_EDITOR (widget); composer = E_MSG_COMPOSER (widget); @@ -2558,7 +2559,7 @@ e_msg_composer_new (EShell *shell) return g_object_new ( E_TYPE_MSG_COMPOSER, - "html", e_web_view_new (), "shell", shell, NULL); + "html", e_web_view_gtkhtml_new (), "shell", shell, NULL); } EFocusTracker * @@ -3389,7 +3390,7 @@ e_msg_composer_new_redirect (EShell *shell, { EMsgComposer *composer; EComposerHeaderTable *table; - EWebView *web_view; + EWebViewGtkHTML *web_view; const gchar *subject; g_return_val_if_fail (E_IS_SHELL (shell), NULL); @@ -3408,7 +3409,7 @@ e_msg_composer_new_redirect (EShell *shell, e_composer_header_table_set_subject (table, subject); web_view = e_msg_composer_get_web_view (composer); - e_web_view_set_editable (web_view, FALSE); + e_web_view_gtkhtml_set_editable (web_view, FALSE); return composer; } @@ -3464,7 +3465,7 @@ e_msg_composer_get_shell (EMsgComposer *composer) * * Returns: the #EWebView **/ -EWebView * +EWebViewGtkHTML * e_msg_composer_get_web_view (EMsgComposer *composer) { GtkHTML *html; @@ -3477,7 +3478,7 @@ e_msg_composer_get_web_view (EMsgComposer *composer) editor = GTKHTML_EDITOR (composer); html = gtkhtml_editor_get_html (editor); - return E_WEB_VIEW (html); + return E_WEB_VIEW_GTKHTML (html); } static void @@ -4152,7 +4153,7 @@ e_msg_composer_set_body (EMsgComposer *composer, { EMsgComposerPrivate *p = composer->priv; EComposerHeaderTable *table; - EWebView *web_view; + EWebViewGtkHTML *web_view; gchar *buff; g_return_if_fail (E_IS_MSG_COMPOSER (composer)); @@ -4168,7 +4169,7 @@ e_msg_composer_set_body (EMsgComposer *composer, gtkhtml_editor_set_html_mode (GTKHTML_EDITOR (composer), FALSE); web_view = e_msg_composer_get_web_view (composer); - e_web_view_set_editable (web_view, FALSE); + e_web_view_gtkhtml_set_editable (web_view, FALSE); g_free (p->mime_body); p->mime_body = g_strdup (body); diff --git a/composer/e-msg-composer.h b/composer/e-msg-composer.h index 258d260e3f..aa63b0e894 100644 --- a/composer/e-msg-composer.h +++ b/composer/e-msg-composer.h @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include @@ -100,7 +100,8 @@ EFocusTracker * e_msg_composer_get_focus_tracker (EMsgComposer *composer); CamelSession * e_msg_composer_get_session (EMsgComposer *composer); EShell * e_msg_composer_get_shell (EMsgComposer *composer); -EWebView * e_msg_composer_get_web_view (EMsgComposer *composer); +EWebViewGtkHTML * + e_msg_composer_get_web_view (EMsgComposer *composer); void e_msg_composer_send (EMsgComposer *composer); void e_msg_composer_save_to_drafts (EMsgComposer *composer); -- cgit v1.2.3