[evolution/wip-webkit2] EDOMUtils - Fix finding of active element in underlying documents



commit 65c11d6ed33a064fad4e17a2227c65f4e1c9e6b0
Author: Tomas Popela <tpopela redhat com>
Date:   Thu Nov 21 13:26:12 2013 +0100

    EDOMUtils - Fix finding of active element in underlying documents

 e-util/e-dom-utils.c |   18 ++++++++++++++++--
 1 files changed, 16 insertions(+), 2 deletions(-)
---
diff --git a/e-util/e-dom-utils.c b/e-util/e-dom-utils.c
index d52fbeb..658578a 100644
--- a/e-util/e-dom-utils.c
+++ b/e-util/e-dom-utils.c
@@ -765,13 +765,27 @@ gchar *
 e_dom_utils_get_active_element_name (WebKitDOMDocument *document)
 {
        WebKitDOMElement *element;
-       /* FIXME XXX Do version that checks underlying documents */
 
        element = webkit_dom_html_document_get_active_element (
-                       WEBKIT_DOM_HTML_DOCUMENT (document));
+               WEBKIT_DOM_HTML_DOCUMENT (document));
+
        if (!element)
                return NULL;
 
+       while (WEBKIT_DOM_IS_HTML_IFRAME_ELEMENT (element)) {
+               WebKitDOMDocument *content_document;
+
+               content_document =
+                       webkit_dom_html_iframe_element_get_content_document (
+                               WEBKIT_DOM_HTML_IFRAME_ELEMENT (element));
+
+               if (!content_document)
+                       break;
+
+               element = webkit_dom_html_document_get_active_element (
+                       WEBKIT_DOM_HTML_DOCUMENT (content_document));
+       }
+
        return webkit_dom_node_get_local_name (WEBKIT_DOM_NODE (element));
 }
 


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