Module: wine Branch: master Commit: 0e71100e56165b0ebbd7bc1ed3bc3832aec13985 URL: https://gitlab.winehq.org/wine/wine/-/commit/0e71100e56165b0ebbd7bc1ed3bc383...
Author: Gabriel Ivăncescu gabrielopcode@gmail.com Date: Fri Nov 25 19:10:03 2022 +0200
mshtml: Implement print events.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53927 Signed-off-by: Gabriel Ivăncescu gabrielopcode@gmail.com
---
dlls/mshtml/htmlevent.c | 4 ++++ dlls/mshtml/htmlevent.h | 2 ++ dlls/mshtml/htmlwindow.c | 16 ++++++++-------- 3 files changed, 14 insertions(+), 8 deletions(-)
diff --git a/dlls/mshtml/htmlevent.c b/dlls/mshtml/htmlevent.c index 3b6d7a43999..45db4719b10 100644 --- a/dlls/mshtml/htmlevent.c +++ b/dlls/mshtml/htmlevent.c @@ -120,12 +120,16 @@ static const event_info_t event_info[] = { EVENT_BUBBLES | EVENT_CANCELABLE}, {L"abort", EVENT_TYPE_EVENT, DISPID_EVMETH_ONABORT, EVENT_BIND_TO_TARGET}, + {L"afterprint", EVENT_TYPE_EVENT, DISPID_EVMETH_ONAFTERPRINT, + EVENT_DEFAULTLISTENER}, {L"animationend", EVENT_TYPE_EVENT, DISPID_EVPROP_ONANIMATIONEND, EVENT_DEFAULTLISTENER | EVENT_BUBBLES}, {L"animationstart", EVENT_TYPE_EVENT, DISPID_EVPROP_ONANIMATIONSTART, EVENT_DEFAULTLISTENER | EVENT_BUBBLES}, {L"beforeactivate", EVENT_TYPE_EVENT, DISPID_EVMETH_ONBEFOREACTIVATE, EVENT_FIXME | EVENT_BUBBLES | EVENT_CANCELABLE}, + {L"beforeprint", EVENT_TYPE_EVENT, DISPID_EVMETH_ONBEFOREPRINT, + EVENT_DEFAULTLISTENER}, {L"beforeunload", EVENT_TYPE_EVENT, DISPID_EVMETH_ONBEFOREUNLOAD, EVENT_DEFAULTLISTENER | EVENT_CANCELABLE }, {L"blur", EVENT_TYPE_FOCUS, DISPID_EVMETH_ONBLUR, diff --git a/dlls/mshtml/htmlevent.h b/dlls/mshtml/htmlevent.h index a6d1f734a40..104cb8554d2 100644 --- a/dlls/mshtml/htmlevent.h +++ b/dlls/mshtml/htmlevent.h @@ -19,9 +19,11 @@ typedef enum { EVENTID_DOMCONTENTLOADED, EVENTID_ABORT, + EVENTID_AFTERPRINT, EVENTID_ANIMATIONEND, EVENTID_ANIMATIONSTART, EVENTID_BEFOREACTIVATE, + EVENTID_BEFOREPRINT, EVENTID_BEFOREUNLOAD, EVENTID_BLUR, EVENTID_CHANGE, diff --git a/dlls/mshtml/htmlwindow.c b/dlls/mshtml/htmlwindow.c index 044d3bc8371..bc3908b8d4c 100644 --- a/dlls/mshtml/htmlwindow.c +++ b/dlls/mshtml/htmlwindow.c @@ -1806,29 +1806,29 @@ static HRESULT WINAPI HTMLWindow3_print(IHTMLWindow3 *iface) static HRESULT WINAPI HTMLWindow3_put_onbeforeprint(IHTMLWindow3 *iface, VARIANT v) { HTMLWindow *This = impl_from_IHTMLWindow3(iface); - FIXME("(%p)->(%s)\n", This, debugstr_variant(&v)); - return E_NOTIMPL; + TRACE("(%p)->(%s)\n", This, debugstr_variant(&v)); + return set_window_event(This, EVENTID_BEFOREPRINT, &v); }
static HRESULT WINAPI HTMLWindow3_get_onbeforeprint(IHTMLWindow3 *iface, VARIANT *p) { HTMLWindow *This = impl_from_IHTMLWindow3(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + TRACE("(%p)->(%p)\n", This, p); + return get_window_event(This, EVENTID_BEFOREPRINT, p); }
static HRESULT WINAPI HTMLWindow3_put_onafterprint(IHTMLWindow3 *iface, VARIANT v) { HTMLWindow *This = impl_from_IHTMLWindow3(iface); - FIXME("(%p)->(%s)\n", This, debugstr_variant(&v)); - return E_NOTIMPL; + TRACE("(%p)->(%s)\n", This, debugstr_variant(&v)); + return set_window_event(This, EVENTID_AFTERPRINT, &v); }
static HRESULT WINAPI HTMLWindow3_get_onafterprint(IHTMLWindow3 *iface, VARIANT *p) { HTMLWindow *This = impl_from_IHTMLWindow3(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + TRACE("(%p)->(%p)\n", This, p); + return get_window_event(This, EVENTID_AFTERPRINT, p); }
static HRESULT WINAPI HTMLWindow3_get_clipboardData(IHTMLWindow3 *iface, IHTMLDataTransfer **p)