Module: wine Branch: master Commit: 5e0f624c418b9668b03f3ee70a43e289aef91c59 URL: http://source.winehq.org/git/wine.git/?a=commit;h=5e0f624c418b9668b03f3ee70a...
Author: Jacek Caban jacek@codeweavers.com Date: Wed Oct 17 12:18:30 2012 +0200
mshtml: Added HTMLImgElement::onabort implementation.
---
dlls/mshtml/htmlevent.c | 7 ++++++- dlls/mshtml/htmlevent.h | 1 + dlls/mshtml/htmlimg.c | 12 ++++++++---- 3 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/dlls/mshtml/htmlevent.c b/dlls/mshtml/htmlevent.c index 94a9e7e..b2dfa61 100644 --- a/dlls/mshtml/htmlevent.c +++ b/dlls/mshtml/htmlevent.c @@ -45,6 +45,9 @@ struct event_target_t { handler_vector_t *event_table[EVENTID_LAST]; };
+static const WCHAR abortW[] = {'a','b','o','r','t',0}; +static const WCHAR onabortW[] = {'o','n','a','b','o','r','t',0}; + static const WCHAR beforeunloadW[] = {'b','e','f','o','r','e','u','n','l','o','a','d',0}; static const WCHAR onbeforeunloadW[] = {'o','n','b','e','f','o','r','e','u','n','l','o','a','d',0};
@@ -160,6 +163,8 @@ typedef struct { #define EVENT_HASDEFAULTHANDLERS 0x0020
static const event_info_t event_info[] = { + {abortW, onabortW, EVENTT_NONE, DISPID_EVMETH_ONABORT, + EVENT_NODEHANDLER}, {beforeunloadW, onbeforeunloadW, EVENTT_NONE, DISPID_EVMETH_ONBEFOREUNLOAD, EVENT_DEFAULTLISTENER|EVENT_FORWARDBODY}, {blurW, onblurW, EVENTT_HTML, DISPID_EVMETH_ONBLUR, @@ -216,7 +221,7 @@ static const event_info_t event_info[] = { EVENT_DEFAULTLISTENER|EVENT_BUBBLE|EVENT_CANCELABLE} };
-static const eventid_t node_handled_list[] = { EVENTID_ERROR, EVENTID_LOAD }; +static const eventid_t node_handled_list[] = { EVENTID_ABORT, EVENTID_ERROR, EVENTID_LOAD };
eventid_t str_to_eid(LPCWSTR str) { diff --git a/dlls/mshtml/htmlevent.h b/dlls/mshtml/htmlevent.h index 174d2f7..8aa8ed1 100644 --- a/dlls/mshtml/htmlevent.h +++ b/dlls/mshtml/htmlevent.h @@ -17,6 +17,7 @@ */
typedef enum { + EVENTID_ABORT, EVENTID_BEFOREUNLOAD, EVENTID_BLUR, EVENTID_CHANGE, diff --git a/dlls/mshtml/htmlimg.c b/dlls/mshtml/htmlimg.c index bc6ec80..4ca02fc 100644 --- a/dlls/mshtml/htmlimg.c +++ b/dlls/mshtml/htmlimg.c @@ -429,15 +429,19 @@ static HRESULT WINAPI HTMLImgElement_get_onerror(IHTMLImgElement *iface, VARIANT static HRESULT WINAPI HTMLImgElement_put_onabort(IHTMLImgElement *iface, VARIANT v) { HTMLImgElement *This = impl_from_IHTMLImgElement(iface); - FIXME("(%p)->()\n", This); - return E_NOTIMPL; + + TRACE("(%p)->()\n", This); + + return set_node_event(&This->element.node, EVENTID_ABORT, &v); }
static HRESULT WINAPI HTMLImgElement_get_onabort(IHTMLImgElement *iface, VARIANT *p) { HTMLImgElement *This = impl_from_IHTMLImgElement(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + + TRACE("(%p)->(%p)\n", This, p); + + return get_node_event(&This->element.node, EVENTID_ABORT, p); }
static HRESULT WINAPI HTMLImgElement_put_name(IHTMLImgElement *iface, BSTR v)