Jacek Caban : mshtml: Added IDOMMouseEvent key state getters implementation.
Module: wine Branch: master Commit: 6a16a5f424fb8e8a296631b9fe34dc404366579d URL: https://source.winehq.org/git/wine.git/?a=commit;h=6a16a5f424fb8e8a296631b9f... Author: Jacek Caban <jacek(a)codeweavers.com> Date: Mon Feb 5 17:30:08 2018 +0100 mshtml: Added IDOMMouseEvent key state getters implementation. Signed-off-by: Jacek Caban <jacek(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/mshtml/htmlevent.c | 52 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 44 insertions(+), 8 deletions(-) diff --git a/dlls/mshtml/htmlevent.c b/dlls/mshtml/htmlevent.c index e4ba0ed..fbe44f5 100644 --- a/dlls/mshtml/htmlevent.c +++ b/dlls/mshtml/htmlevent.c @@ -1327,29 +1327,65 @@ static HRESULT WINAPI DOMMouseEvent_get_clientY(IDOMMouseEvent *iface, LONG *p) static HRESULT WINAPI DOMMouseEvent_get_ctrlKey(IDOMMouseEvent *iface, VARIANT_BOOL *p) { DOMEvent *This = impl_from_IDOMMouseEvent(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + cpp_bool r; + nsresult nsres; + + TRACE("(%p)->(%p)\n", This, p); + + nsres = nsIDOMMouseEvent_GetCtrlKey(This->mouse_event, &r); + if(NS_FAILED(nsres)) + return E_FAIL; + + *p = variant_bool(r); + return S_OK; } static HRESULT WINAPI DOMMouseEvent_get_shiftKey(IDOMMouseEvent *iface, VARIANT_BOOL *p) { DOMEvent *This = impl_from_IDOMMouseEvent(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + cpp_bool r; + nsresult nsres; + + TRACE("(%p)->(%p)\n", This, p); + + nsres = nsIDOMMouseEvent_GetShiftKey(This->mouse_event, &r); + if(NS_FAILED(nsres)) + return E_FAIL; + + *p = variant_bool(r); + return S_OK; } static HRESULT WINAPI DOMMouseEvent_get_altKey(IDOMMouseEvent *iface, VARIANT_BOOL *p) { DOMEvent *This = impl_from_IDOMMouseEvent(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + cpp_bool r; + nsresult nsres; + + TRACE("(%p)->(%p)\n", This, p); + + nsres = nsIDOMMouseEvent_GetAltKey(This->mouse_event, &r); + if(NS_FAILED(nsres)) + return E_FAIL; + + *p = variant_bool(r); + return S_OK; } static HRESULT WINAPI DOMMouseEvent_get_metaKey(IDOMMouseEvent *iface, VARIANT_BOOL *p) { DOMEvent *This = impl_from_IDOMMouseEvent(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + cpp_bool r; + nsresult nsres; + + TRACE("(%p)->(%p)\n", This, p); + + nsres = nsIDOMMouseEvent_GetMetaKey(This->mouse_event, &r); + if(NS_FAILED(nsres)) + return E_FAIL; + + *p = variant_bool(r); + return S_OK; } static HRESULT WINAPI DOMMouseEvent_get_button(IDOMMouseEvent *iface, USHORT *p)
participants (1)
-
Alexandre Julliard