Jacek Caban : mshtml: Expose IDocumentEvent to scripts.

Alexandre Julliard julliard at winehq.org
Mon Dec 4 14:58:21 CST 2017


Module: wine
Branch: master
Commit: 49679eb97b7b0233f7d4db65c47520a3a20a5ecb
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=49679eb97b7b0233f7d4db65c47520a3a20a5ecb

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Mon Dec  4 18:02:11 2017 +0100

mshtml: Expose IDocumentEvent to scripts.

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/mshtml/htmldoc.c             | 4 +++-
 dlls/mshtml/mshtml_private.h      | 1 +
 dlls/mshtml/tests/documentmode.js | 1 +
 3 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/dlls/mshtml/htmldoc.c b/dlls/mshtml/htmldoc.c
index c9f21fa..5e3ed75 100644
--- a/dlls/mshtml/htmldoc.c
+++ b/dlls/mshtml/htmldoc.c
@@ -5107,8 +5107,10 @@ static void HTMLDocumentNode_init_dispex_info(dispex_data_t *info, compat_mode_t
 {
     HTMLDOMNode_init_dispex_info(info, mode);
 
-    if(mode >= COMPAT_MODE_IE9)
+    if(mode >= COMPAT_MODE_IE9) {
         dispex_info_add_interface(info, IHTMLDocument7_tid, NULL);
+        dispex_info_add_interface(info, IDocumentEvent_tid, NULL);
+    }
 
     /* Depending on compatibility version, we add interfaces in different order
      * so that the right getElementById implementation is used. */
diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h
index 2387372..aef82cd 100644
--- a/dlls/mshtml/mshtml_private.h
+++ b/dlls/mshtml/mshtml_private.h
@@ -126,6 +126,7 @@ typedef struct EventTarget EventTarget;
     XDIID(HTMLDocumentEvents) \
     XDIID(HTMLElementEvents2) \
     XIID(IDOMEvent) \
+    XIID(IDocumentEvent) \
     XIID(IDocumentSelector) \
     XIID(IElementSelector) \
     XIID(IElementTraversal) \
diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js
index beee493..498dfed 100644
--- a/dlls/mshtml/tests/documentmode.js
+++ b/dlls/mshtml/tests/documentmode.js
@@ -62,6 +62,7 @@ function test_doc_props() {
     test_exposed("addEventListener", v >= 9);
     test_exposed("removeEventListener", v >= 9);
     test_exposed("dispatchEvent", v >= 9);
+    test_exposed("createEvent", v >= 9);
 
     test_exposed("parentWindow", true);
     if(v >= 9) ok(document.defaultView === document.parentWindow, "defaultView != parentWindow");




More information about the wine-cvs mailing list