From: Gabriel Ivăncescu gabrielopcode@gmail.com
Signed-off-by: Gabriel Ivăncescu gabrielopcode@gmail.com --- dlls/mshtml/htmlelem.c | 7 ++++++- dlls/mshtml/tests/documentmode.js | 7 +++---- 2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/dlls/mshtml/htmlelem.c b/dlls/mshtml/htmlelem.c index b38ebd40269..36304dda49c 100644 --- a/dlls/mshtml/htmlelem.c +++ b/dlls/mshtml/htmlelem.c @@ -6693,8 +6693,12 @@ void HTMLElement_init_dispex_info(dispex_data_t *info, compat_mode_t mode) }; static const dispex_hook_t elem3_ie11_hooks[] = { {DISPID_IHTMLELEMENT3_FIREEVENT, NULL}, + + /* IE9+ */ + {DISPID_IHTMLELEMENT3_ONPAGE, NULL}, {DISPID_UNKNOWN} }; + const dispex_hook_t *const elem3_ie9_hooks = elem3_ie11_hooks + 1; static const dispex_hook_t elem4_ie9_hooks[] = { {DISPID_IHTMLELEMENT4_NORMALIZE, NULL}, {DISPID_UNKNOWN} @@ -6722,7 +6726,8 @@ void HTMLElement_init_dispex_info(dispex_data_t *info, compat_mode_t mode) dispex_info_add_interface(info, IWineHTMLElementPrivate_tid, NULL); }
- dispex_info_add_interface(info, IHTMLElement3_tid, mode >= COMPAT_MODE_IE11 ? elem3_ie11_hooks : NULL); + dispex_info_add_interface(info, IHTMLElement3_tid, mode >= COMPAT_MODE_IE11 ? elem3_ie11_hooks : + mode >= COMPAT_MODE_IE9 ? elem3_ie9_hooks : NULL); dispex_info_add_interface(info, IHTMLElement_tid, mode >= COMPAT_MODE_IE9 ? elem_ie9_hooks : NULL); dispex_info_add_interface(info, IHTMLElement4_tid, mode >= COMPAT_MODE_IE9 ? elem4_ie9_hooks : NULL); } diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index 883633985c5..5c3051d5a84 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3750,10 +3750,9 @@ sync_test("prototype props", function() { ["onbeforeupdate",11], ["oncellchange",11], ["oncontrolselect",11], ["ondataavailable",11], ["ondatasetchanged",11], ["ondatasetcomplete",11], ["onerrorupdate",11], ["onfilterchange",11], ["oninvalid",10], ["onlayoutcomplete",11], ["onlosecapture",11], ["onmove",11], ["onmoveend",11], ["onmovestart",11], ["onmsanimationend",10], ["onmsanimationiteration",10], ["onmsanimationstart",10], - ["onmscontentzoom",10], ["onmstransitionend",10], ["onmstransitionstart",10], "onpage", ["onpropertychange",11], - ["onreadystatechange",11], ["onresize",11], ["onresizeend",11], ["onresizestart",11], ["onrowenter",11], ["onrowexit",11], - ["onrowsdelete",11], ["onrowsinserted",11], ["removeBehavior",11], "removeExpression", ["removeFilter",10], ["scopeName",10], "setExpression", - ["tagUrn",10], ["xmsAcceleratorKey",10] + ["onmscontentzoom",10], ["onmstransitionend",10], ["onmstransitionstart",10], ["onpropertychange",11], ["onreadystatechange",11], + ["onresize",11], ["onresizeend",11], ["onresizestart",11], ["onrowenter",11], ["onrowexit",11], ["onrowsdelete",11], ["onrowsinserted",11], + ["removeBehavior",11], "removeExpression", ["removeFilter",10], ["scopeName",10], "setExpression", ["tagUrn",10], ["xmsAcceleratorKey",10] ]); check(HTMLUnknownElement, [ "namedRecordset", "recordset" ]); check(KeyboardEvent, [