diff --git a/dlls/mshtml/htmlelem.c b/dlls/mshtml/htmlelem.c index 8aab4c4ea8e..9f231f5469f 100644 --- a/dlls/mshtml/htmlelem.c +++ b/dlls/mshtml/htmlelem.c @@ -5188,10 +5188,17 @@ HRESULT HTMLElement_handle_event(HTMLDOMNode *iface, DWORD eid, nsIDOMEvent *eve nsIDOMKeyEvent_GetKeyCode(key_event, &code); - switch(code) { - case VK_F1: /* DOM_VK_F1 */ + if(code == VK_F1 /* DOM_VK_F1 */) { + DOMEvent *help_event; + HRESULT hres; + TRACE("F1 pressed\n"); - fire_event(This->node.doc, EVENTID_HELP, TRUE, &This->node.event_target, NULL); + + hres = create_document_event(This->node.doc, EVENTID_HELP, &help_event); + if(SUCCEEDED(hres)) { + fire_event_obj(&This->node.event_target, help_event); + IDOMEvent_Release(&help_event->IDOMEvent_iface); + } *prevent_default = TRUE; }