From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/htmlevent.c | 15 ++++++++------- dlls/mshtml/mshtml_private.h | 1 + dlls/mshtml/tests/documentmode.js | 4 ++++ 3 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/dlls/mshtml/htmlevent.c b/dlls/mshtml/htmlevent.c index 019da7b5ca4..86886f2ccc5 100644 --- a/dlls/mshtml/htmlevent.c +++ b/dlls/mshtml/htmlevent.c @@ -3719,17 +3719,18 @@ static const dispex_static_data_vtbl_t DOMProgressEvent_dispex_vtbl = { .unlink = DOMProgressEvent_unlink };
-static const tid_t DOMProgressEvent_iface_tids[] = { +static const tid_t ProgressEvent_iface_tids[] = { IDOMEvent_tid, IDOMProgressEvent_tid, 0 };
-static dispex_static_data_t DOMProgressEvent_dispex = { - "ProgressEvent", - &DOMProgressEvent_dispex_vtbl, - DispDOMProgressEvent_tid, - DOMProgressEvent_iface_tids +dispex_static_data_t ProgressEvent_dispex = { + .id = PROT_ProgressEvent, + .prototype_id = PROT_Event, + .vtbl = &DOMProgressEvent_dispex_vtbl, + .disp_tid = DispDOMProgressEvent_tid, + .iface_tids = ProgressEvent_iface_tids, };
static const dispex_static_data_vtbl_t DOMStorageEvent_dispex_vtbl = { @@ -3849,7 +3850,7 @@ static DOMEvent *progress_event_ctor(void *iface, nsIDOMEvent *nsevent, eventid_ { DOMProgressEvent *progress_event;
- if(!(progress_event = event_ctor(sizeof(DOMProgressEvent), &DOMProgressEvent_dispex, nsevent, event_id, script_global, compat_mode))) + if(!(progress_event = event_ctor(sizeof(DOMProgressEvent), &ProgressEvent_dispex, nsevent, event_id, script_global, compat_mode))) return NULL; progress_event->IDOMProgressEvent_iface.lpVtbl = &DOMProgressEventVtbl; progress_event->nsevent = iface; diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index c2a7f78e5dc..069ccfc4813 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -459,6 +459,7 @@ typedef struct { X(Navigator) \ X(Node) \ X(PageTransitionEvent) \ + X(ProgressEvent) \ X(SVGCircleElement) \ X(SVGElement) \ X(SVGSVGElement) \ diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index 2a26d720185..0129e41bcbd 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3257,4 +3257,8 @@ sync_test("prototypes", function() { check(CustomEvent.prototype, Event.prototype, "custom event prototype"); check(document.createEvent("MessageEvent"), MessageEvent.prototype, "message event"); check(MessageEvent.prototype, Event.prototype, "message event prototype"); + if(v >= 10) { + check(document.createEvent("ProgressEvent"), ProgressEvent.prototype, "progress event"); + check(ProgressEvent.prototype, Event.prototype, "progress event prototype"); + } });