[evolution/wip-webkit2] Pass Page Id to DOM bindings method in EMailPart



commit 433776c15aff0b7c369af9718ec663113618fdbc
Author: Tomas Popela <tpopela redhat com>
Date:   Wed Oct 30 13:59:14 2013 +0100

    Pass Page Id to DOM bindings method in EMailPart

 em-format/e-mail-part-headers.c           |   11 ++++-------
 em-format/e-mail-part.c                   |    4 +++-
 em-format/e-mail-part.h                   |    3 +++
 mail/e-mail-display.c                     |    7 ++++++-
 modules/itip-formatter/e-mail-part-itip.c |    1 +
 5 files changed, 17 insertions(+), 9 deletions(-)
---
diff --git a/em-format/e-mail-part-headers.c b/em-format/e-mail-part-headers.c
index 0d33d08..6b7e915 100644
--- a/em-format/e-mail-part-headers.c
+++ b/em-format/e-mail-part-headers.c
@@ -216,6 +216,7 @@ mail_part_headers_constructed (GObject *object)
 static void
 mail_part_headers_bind_dom_element (EMailPart *part,
                                     GDBusProxy *web_extension,
+                                   guint64 page_id,
                                     const gchar *element_id)
 {
        if (web_extension) {
@@ -224,15 +225,11 @@ mail_part_headers_bind_dom_element (EMailPart *part,
                result = g_dbus_proxy_call_sync (
                                web_extension,
                                "EMailPartHeadersBindDOMElement",
-                               g_variant_new (
-                                       "(ts)",
-                                       webkit_web_view_get_page_id (
-                                               WEBKIT_WEB_VIEW (web_view)),
-                                       element_id),
+                               g_variant_new ("(ts)", page_id, element_id),
                                G_DBUS_CALL_FLAGS_NONE,
                                -1,
-                               cancellable,
-                               error);
+                               NULL,
+                               NULL);
 
                if (result)
                        g_variant_unref (result);
diff --git a/em-format/e-mail-part.c b/em-format/e-mail-part.c
index f6e02ff..614cc1b 100644
--- a/em-format/e-mail-part.c
+++ b/em-format/e-mail-part.c
@@ -489,18 +489,20 @@ e_mail_part_set_is_attachment (EMailPart *part,
 void
 e_mail_part_bind_dom_element (EMailPart *part,
                               GDBusProxy *web_extension,
+                             guint64 page_id,
                               const gchar *element_id)
 {
        EMailPartClass *class;
 
        g_return_if_fail (E_IS_MAIL_PART (part));
        g_return_if_fail (web_extension);
+       g_return_if_fail (page_id == 0);
        g_return_if_fail (element_id && *element_id);
 
        class = E_MAIL_PART_GET_CLASS (part);
 
        if (class->bind_dom_element != NULL)
-               class->bind_dom_element (part, web_extension, element_id);
+               class->bind_dom_element (part, web_extension, page_id, element_id);
 }
 
 static EMailPartValidityPair *
diff --git a/em-format/e-mail-part.h b/em-format/e-mail-part.h
index b306b48..15a3daa 100644
--- a/em-format/e-mail-part.h
+++ b/em-format/e-mail-part.h
@@ -88,6 +88,7 @@ struct _EMailPartClass {
 
        void            (*bind_dom_element)     (EMailPart *part,
                                                 GDBusProxy *web_extension,
+                                                guint64 page_id,
                                                 const gchar *element_id);
 };
 
@@ -116,6 +117,8 @@ gboolean    e_mail_part_get_is_attachment   (EMailPart *part);
 void           e_mail_part_set_is_attachment   (EMailPart *part,
                                                 gboolean is_attachment);
 void           e_mail_part_bind_dom_element    (EMailPart *part,
+                                                GDBusProxy *web_extension,
+                                                guint64 page_id,
                                                 const gchar *element_id);
 void           e_mail_part_update_validity     (EMailPart *part,
                                                 CamelCipherValidity *validity,
diff --git a/mail/e-mail-display.c b/mail/e-mail-display.c
index 6720f1f..f1d0c96 100644
--- a/mail/e-mail-display.c
+++ b/mail/e-mail-display.c
@@ -905,7 +905,12 @@ mail_parts_bind_dom (WebKitWebView *web_view,
                }
 
                if (element_exists)
-                       e_mail_part_bind_dom_element (part, web_extension, part_id);
+                       e_mail_part_bind_dom_element (
+                               part,
+                               web_extension,
+                               webkit_web_view_get_page_id (
+                                       WEBKIT_WEB_VIEW (display)),
+                               part_id);
        }
 
        while (!g_queue_is_empty (&queue))
diff --git a/modules/itip-formatter/e-mail-part-itip.c b/modules/itip-formatter/e-mail-part-itip.c
index cc070fb..a977d58 100644
--- a/modules/itip-formatter/e-mail-part-itip.c
+++ b/modules/itip-formatter/e-mail-part-itip.c
@@ -78,6 +78,7 @@ mail_part_itip_finalize (GObject *object)
 static void
 mail_part_itip_bind_dom_element (EMailPart *part,
                                  GDBusProxy *evolution_web_extension,
+                                guint64 page_id,
                                  const gchar *element_id)
 {
        ItipView *view;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]