Jacek Caban : mshtml: Expose IHTMLWindow7 interface to scripts.

Alexandre Julliard julliard at winehq.org
Fri May 18 16:53:13 CDT 2018


Module: wine
Branch: master
Commit: ca313f57b1ef722d1433c2a496f85d9c849a3bac
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=ca313f57b1ef722d1433c2a496f85d9c849a3bac

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Fri May 18 13:53:54 2018 +0200

mshtml: Expose IHTMLWindow7 interface to scripts.

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

---

 dlls/mshtml/htmlwindow.c          | 9 +++++++++
 dlls/mshtml/tests/documentmode.js | 2 ++
 2 files changed, 11 insertions(+)

diff --git a/dlls/mshtml/htmlwindow.c b/dlls/mshtml/htmlwindow.c
index ec20e8f..9b84780 100644
--- a/dlls/mshtml/htmlwindow.c
+++ b/dlls/mshtml/htmlwindow.c
@@ -3418,6 +3418,15 @@ static void HTMLWindow_bind_event(DispatchEx *dispex, eventid_t eid)
 
 static void HTMLWindow_init_dispex_info(dispex_data_t *info, compat_mode_t compat_mode)
 {
+    /* FIXME: Expose getComputedStyle and performance once they are implemented.
+     * Stubs break existing web sites. */
+    static const dispex_hook_t window7_hooks[] = {
+        {DISPID_IHTMLWINDOW7_GETCOMPUTEDSTYLE, NULL},
+        {DISPID_IHTMLWINDOW7_PERFORMANCE, NULL},
+        {DISPID_UNKNOWN}
+    };
+    if(compat_mode >= COMPAT_MODE_IE9)
+        dispex_info_add_interface(info, IHTMLWindow7_tid, window7_hooks);
     dispex_info_add_interface(info, IHTMLWindow5_tid, NULL);
     EventTarget_init_dispex_info(info, compat_mode);
 }
diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js
index 02f0778..12edb4b 100644
--- a/dlls/mshtml/tests/documentmode.js
+++ b/dlls/mshtml/tests/documentmode.js
@@ -84,6 +84,8 @@ function test_window_props() {
     test_exposed("addEventListener", v >= 9);
     test_exposed("removeEventListener", v >= 9);
     test_exposed("dispatchEvent", v >= 9);
+    test_exposed("getSelection", v >= 9);
+    test_exposed("onfocusout", v >= 9);
 
     next_test();
 }




More information about the wine-cvs mailing list