Jacek Caban (@jacek) commented about dlls/mshtml/htmlevent.c:
+ if(thread_data->event_dispatch_depth == thread_data->blocking_event_dispatch_depth) { + struct queued_event *queued_event = malloc(sizeof(*queued_event)); + + if(!queued_event) { + ERR("no memory to queue event\n"); + return E_OUTOFMEMORY; + } + + queued_event->event = event; + queued_event->event_target = event_target; + IDOMEvent_AddRef(&event->IDOMEvent_iface); + IEventTarget_AddRef(&event_target->IEventTarget_iface); + + list_add_tail(&thread_data->queued_events_list, &queued_event->entry); + return S_OK; + } Things like `preventDefault()` will not work for dispatches delayed like that. Can we somehow assume that those will be delayed by Gecko?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/2098#note_23105