Jacek Caban : mshtml: Added IHTMLElement4:: onbeforeactivate property implementation.

Alexandre Julliard julliard at winehq.org
Wed Feb 15 16:06:24 CST 2017


Module: wine
Branch: master
Commit: de998b95ac618da367683f857c01184d1ba19be2
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=de998b95ac618da367683f857c01184d1ba19be2

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Wed Feb 15 16:28:37 2017 +0100

mshtml: Added IHTMLElement4::onbeforeactivate property implementation.

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

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

diff --git a/dlls/mshtml/htmlelem.c b/dlls/mshtml/htmlelem.c
index 3d156d8..42674a3 100644
--- a/dlls/mshtml/htmlelem.c
+++ b/dlls/mshtml/htmlelem.c
@@ -3865,15 +3865,19 @@ static HRESULT WINAPI HTMLElement4_removeAttributeNode(IHTMLElement4 *iface, IHT
 static HRESULT WINAPI HTMLElement4_put_onbeforeactivate(IHTMLElement4 *iface, VARIANT v)
 {
     HTMLElement *This = impl_from_IHTMLElement4(iface);
-    FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
-    return E_NOTIMPL;
+
+    TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
+
+    return set_node_event(&This->node, EVENTID_BEFOREACTIVATE, &v);
 }
 
 static HRESULT WINAPI HTMLElement4_get_onbeforeactivate(IHTMLElement4 *iface, VARIANT *p)
 {
     HTMLElement *This = impl_from_IHTMLElement4(iface);
-    FIXME("(%p)->(%p)\n", This, p);
-    return E_NOTIMPL;
+
+    TRACE("(%p)->(%p)\n", This, p);
+
+    return get_node_event(&This->node, EVENTID_BEFOREACTIVATE, p);
 }
 
 static HRESULT WINAPI HTMLElement4_put_onfocusin(IHTMLElement4 *iface, VARIANT v)
diff --git a/dlls/mshtml/htmlevent.c b/dlls/mshtml/htmlevent.c
index 27e041c..57c13c6 100644
--- a/dlls/mshtml/htmlevent.c
+++ b/dlls/mshtml/htmlevent.c
@@ -46,6 +46,9 @@ typedef struct {
 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 beforeactivateW[] = {'b','e','f','o','r','e','a','c','t','i','v','a','t','e',0};
+static const WCHAR onbeforeactivateW[] = {'o','n','b','e','f','o','r','e','a','c','t','i','v','a','t','e',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};
 
@@ -179,6 +182,8 @@ typedef struct {
 static const event_info_t event_info[] = {
     {abortW,             onabortW,             EVENTT_NONE,   DISPID_EVMETH_ONABORT,
         EVENT_BIND_TO_BODY},
+    {beforeactivateW,    onbeforeactivateW,    EVENTT_NONE,   DISPID_EVMETH_ONBEFOREACTIVATE,
+        EVENT_FIXME},
     {beforeunloadW,      onbeforeunloadW,      EVENTT_NONE,   DISPID_EVMETH_ONBEFOREUNLOAD,
         EVENT_DEFAULTLISTENER|EVENT_FORWARDBODY},
     {blurW,              onblurW,              EVENTT_HTML,   DISPID_EVMETH_ONBLUR,
diff --git a/dlls/mshtml/htmlevent.h b/dlls/mshtml/htmlevent.h
index 5bdd435..8844eb3 100644
--- a/dlls/mshtml/htmlevent.h
+++ b/dlls/mshtml/htmlevent.h
@@ -18,6 +18,7 @@
 
 typedef enum {
     EVENTID_ABORT,
+    EVENTID_BEFOREACTIVATE,
     EVENTID_BEFOREUNLOAD,
     EVENTID_BLUR,
     EVENTID_CHANGE,




More information about the wine-cvs mailing list