Module: wine Branch: master Commit: 1c277a26bbefb23c1d0cc38aea52c3bab2755515 URL: http://source.winehq.org/git/wine.git/?a=commit;h=1c277a26bbefb23c1d0cc38aea...
Author: Jacek Caban jacek@codeweavers.com Date: Tue Apr 10 12:53:12 2012 +0200
mshtml: Added IHTMLDocument2::onkeypress implementation.
---
dlls/mshtml/htmldoc.c | 12 ++++++++---- dlls/mshtml/htmlevent.c | 5 +++++ dlls/mshtml/htmlevent.h | 1 + 3 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/dlls/mshtml/htmldoc.c b/dlls/mshtml/htmldoc.c index 1d483d4..a5b20bc 100644 --- a/dlls/mshtml/htmldoc.c +++ b/dlls/mshtml/htmldoc.c @@ -1103,15 +1103,19 @@ static HRESULT WINAPI HTMLDocument_get_onkeydown(IHTMLDocument2 *iface, VARIANT static HRESULT WINAPI HTMLDocument_put_onkeypress(IHTMLDocument2 *iface, VARIANT v) { HTMLDocument *This = impl_from_IHTMLDocument2(iface); - FIXME("(%p)->(%s)\n", This, debugstr_variant(&v)); - return E_NOTIMPL; + + TRACE("(%p)->(%s)\n", This, debugstr_variant(&v)); + + return set_doc_event(This, EVENTID_KEYPRESS, &v); }
static HRESULT WINAPI HTMLDocument_get_onkeypress(IHTMLDocument2 *iface, VARIANT *p) { HTMLDocument *This = impl_from_IHTMLDocument2(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + + TRACE("(%p)->(%p)\n", This, p); + + return get_doc_event(This, EVENTID_KEYPRESS, p); }
static HRESULT WINAPI HTMLDocument_put_onmouseup(IHTMLDocument2 *iface, VARIANT v) diff --git a/dlls/mshtml/htmlevent.c b/dlls/mshtml/htmlevent.c index 7454549..2d8dc83 100644 --- a/dlls/mshtml/htmlevent.c +++ b/dlls/mshtml/htmlevent.c @@ -77,6 +77,9 @@ static const WCHAR onfocusW[] = {'o','n','f','o','c','u','s',0}; static const WCHAR keydownW[] = {'k','e','y','d','o','w','n',0}; static const WCHAR onkeydownW[] = {'o','n','k','e','y','d','o','w','n',0};
+static const WCHAR keypressW[] = {'k','e','y','p','r','e','s','s',0}; +static const WCHAR onkeypressW[] = {'o','n','k','e','y','p','r','e','s','s',0}; + static const WCHAR keyupW[] = {'k','e','y','u','p',0}; static const WCHAR onkeyupW[] = {'o','n','k','e','y','u','p',0};
@@ -169,6 +172,8 @@ static const event_info_t event_info[] = { EVENT_DEFAULTLISTENER}, {keydownW, onkeydownW, EVENTT_KEY, DISPID_EVMETH_ONKEYDOWN, EVENT_DEFAULTLISTENER|EVENT_BUBBLE}, + {keypressW, onkeypressW, EVENTT_KEY, DISPID_EVMETH_ONKEYPRESS, + EVENT_DEFAULTLISTENER|EVENT_BUBBLE}, {keyupW, onkeyupW, EVENTT_KEY, DISPID_EVMETH_ONKEYUP, EVENT_DEFAULTLISTENER|EVENT_BUBBLE}, {loadW, onloadW, EVENTT_HTML, DISPID_EVMETH_ONLOAD, diff --git a/dlls/mshtml/htmlevent.h b/dlls/mshtml/htmlevent.h index 70056b3..ef39caf 100644 --- a/dlls/mshtml/htmlevent.h +++ b/dlls/mshtml/htmlevent.h @@ -28,6 +28,7 @@ typedef enum { EVENTID_ERROR, EVENTID_FOCUS, EVENTID_KEYDOWN, + EVENTID_KEYPRESS, EVENTID_KEYUP, EVENTID_LOAD, EVENTID_MOUSEDOWN,