[PATCH 2/2] mshtml: add support for the HTMLWindow.onerror event.

Reece Dunn msclrhd at googlemail.com
Sun Oct 3 07:25:29 CDT 2010


Same thing for the onerror event.

- Reece
-------------- next part --------------
From 9f911f2e61c0411b32df18a028c260b020e37433 Mon Sep 17 00:00:00 2001
From: Reece Dunn <msclrhd at gmail.com>
Date: Sun, 3 Oct 2010 13:21:33 +0100
Subject: [PATCH 2/2] mshtml: add support for the HTMLWindow.onerror event.

---
 dlls/mshtml/htmlevent.c  |    5 +++++
 dlls/mshtml/htmlevent.h  |    1 +
 dlls/mshtml/htmlwindow.c |   12 ++++++++----
 3 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/dlls/mshtml/htmlevent.c b/dlls/mshtml/htmlevent.c
index 9ade961..c85e13a 100644
--- a/dlls/mshtml/htmlevent.c
+++ b/dlls/mshtml/htmlevent.c
@@ -68,6 +68,9 @@ static const WCHAR ondragW[] = {'o','n','d','r','a','g',0};
 static const WCHAR dragstartW[] = {'d','r','a','g','s','t','a','r','t',0};
 static const WCHAR ondragstartW[] = {'o','n','d','r','a','g','s','t','a','r','t',0};
 
+static const WCHAR errorW[] = {'e','r','r','o','r',0};
+static const WCHAR onerrorW[] = {'o','n','e','r','r','o','r',0};
+
 static const WCHAR focusW[] = {'f','o','c','u','s',0};
 static const WCHAR onfocusW[] = {'o','n','f','o','c','u','s',0};
 
@@ -155,6 +158,8 @@ static const event_info_t event_info[] = {
         0},
     {dragstartW,         ondragstartW,         EVENTT_MOUSE,  DISPID_EVMETH_ONDRAGSTART,
         0},
+    {errorW,             onerrorW,             EVENTT_HTML,   DISPID_EVMETH_ONERROR,
+        EVENT_DEFAULTLISTENER},
     {focusW,             onfocusW,             EVENTT_HTML,   DISPID_EVMETH_ONFOCUS,
         EVENT_DEFAULTLISTENER},
     {keydownW,           onkeydownW,           EVENTT_KEY,    DISPID_EVMETH_ONKEYDOWN,
diff --git a/dlls/mshtml/htmlevent.h b/dlls/mshtml/htmlevent.h
index a955be5..d66f856 100644
--- a/dlls/mshtml/htmlevent.h
+++ b/dlls/mshtml/htmlevent.h
@@ -25,6 +25,7 @@ typedef enum {
     EVENTID_DBLCLICK,
     EVENTID_DRAG,
     EVENTID_DRAGSTART,
+    EVENTID_ERROR,
     EVENTID_FOCUS,
     EVENTID_KEYDOWN,
     EVENTID_KEYUP,
diff --git a/dlls/mshtml/htmlwindow.c b/dlls/mshtml/htmlwindow.c
index dfd63cb..70c16b1 100644
--- a/dlls/mshtml/htmlwindow.c
+++ b/dlls/mshtml/htmlwindow.c
@@ -940,15 +940,19 @@ static HRESULT WINAPI HTMLWindow2_get_onhelp(IHTMLWindow2 *iface, VARIANT *p)
 static HRESULT WINAPI HTMLWindow2_put_onerror(IHTMLWindow2 *iface, VARIANT v)
 {
     HTMLWindow *This = HTMLWINDOW2_THIS(iface);
-    FIXME("(%p)->(v(%d))\n", This, V_VT(&v));
-    return E_NOTIMPL;
+
+    TRACE("(%p)->(v(%d))\n", This, V_VT(&v));
+
+    return set_window_event(This, EVENTID_ERROR, &v);
 }
 
 static HRESULT WINAPI HTMLWindow2_get_onerror(IHTMLWindow2 *iface, VARIANT *p)
 {
     HTMLWindow *This = HTMLWINDOW2_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, p);
-    return E_NOTIMPL;
+
+    TRACE("(%p)->(%p)\n", This, p);
+
+    return get_window_event(This, EVENTID_ERROR, p);
 }
 
 static HRESULT WINAPI HTMLWindow2_put_onresize(IHTMLWindow2 *iface, VARIANT v)
-- 
1.7.0.4


More information about the wine-patches mailing list