ReactOS 0.4.15-dev-7842-g558ab78
htmlwindow.c File Reference
#include "mshtml_private.h"
#include <exdispid.h>
Include dependency graph for htmlwindow.c:

Go to the source code of this file.

Classes

struct  prompt_arg
 

Macros

#define MAX_MESSAGE_LEN   2000
 

Functions

static BOOL is_outer_window (HTMLWindow *window)
 
static void release_children (HTMLOuterWindow *This)
 
static HRESULT get_location (HTMLInnerWindow *This, HTMLLocation **ret)
 
void get_top_window (HTMLOuterWindow *window, HTMLOuterWindow **ret)
 
static HRESULT set_window_event (HTMLWindow *window, eventid_t eid, VARIANT *var)
 
static HRESULT get_window_event (HTMLWindow *window, eventid_t eid, VARIANT *var)
 
static void detach_inner_window (HTMLInnerWindow *window)
 
static HTMLWindowimpl_from_IHTMLWindow2 (IHTMLWindow2 *iface)
 
static HRESULT WINAPI HTMLWindow2_QueryInterface (IHTMLWindow2 *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI HTMLWindow2_AddRef (IHTMLWindow2 *iface)
 
static void release_outer_window (HTMLOuterWindow *This)
 
static void release_inner_window (HTMLInnerWindow *This)
 
static ULONG WINAPI HTMLWindow2_Release (IHTMLWindow2 *iface)
 
static HRESULT WINAPI HTMLWindow2_GetTypeInfoCount (IHTMLWindow2 *iface, UINT *pctinfo)
 
static HRESULT WINAPI HTMLWindow2_GetTypeInfo (IHTMLWindow2 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
 
static HRESULT WINAPI HTMLWindow2_GetIDsOfNames (IHTMLWindow2 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
 
static HRESULT WINAPI HTMLWindow2_Invoke (IHTMLWindow2 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
 
static HRESULT get_frame_by_index (HTMLOuterWindow *This, UINT32 index, HTMLOuterWindow **ret)
 
HRESULT get_frame_by_name (HTMLOuterWindow *This, const WCHAR *name, BOOL deep, HTMLOuterWindow **ret)
 
static HRESULT WINAPI HTMLWindow2_item (IHTMLWindow2 *iface, VARIANT *pvarIndex, VARIANT *pvarResult)
 
static HRESULT WINAPI HTMLWindow2_get_length (IHTMLWindow2 *iface, LONG *p)
 
static HRESULT WINAPI HTMLWindow2_get_frames (IHTMLWindow2 *iface, IHTMLFramesCollection2 **p)
 
static HRESULT WINAPI HTMLWindow2_put_defaultStatus (IHTMLWindow2 *iface, BSTR v)
 
static HRESULT WINAPI HTMLWindow2_get_defaultStatus (IHTMLWindow2 *iface, BSTR *p)
 
static HRESULT WINAPI HTMLWindow2_put_status (IHTMLWindow2 *iface, BSTR v)
 
static HRESULT WINAPI HTMLWindow2_get_status (IHTMLWindow2 *iface, BSTR *p)
 
static HRESULT WINAPI HTMLWindow2_setTimeout (IHTMLWindow2 *iface, BSTR expression, LONG msec, VARIANT *language, LONG *timerID)
 
static HRESULT WINAPI HTMLWindow2_clearTimeout (IHTMLWindow2 *iface, LONG timerID)
 
static HRESULT WINAPI HTMLWindow2_alert (IHTMLWindow2 *iface, BSTR message)
 
static HRESULT WINAPI HTMLWindow2_confirm (IHTMLWindow2 *iface, BSTR message, VARIANT_BOOL *confirmed)
 
static INT_PTR CALLBACK prompt_dlgproc (HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
 
static HRESULT WINAPI HTMLWindow2_prompt (IHTMLWindow2 *iface, BSTR message, BSTR dststr, VARIANT *textdata)
 
static HRESULT WINAPI HTMLWindow2_get_Image (IHTMLWindow2 *iface, IHTMLImageElementFactory **p)
 
static HRESULT WINAPI HTMLWindow2_get_location (IHTMLWindow2 *iface, IHTMLLocation **p)
 
static HRESULT WINAPI HTMLWindow2_get_history (IHTMLWindow2 *iface, IOmHistory **p)
 
static BOOL notify_webbrowser_close (HTMLOuterWindow *window, HTMLDocumentObj *doc)
 
static HRESULT WINAPI HTMLWindow2_close (IHTMLWindow2 *iface)
 
static HRESULT WINAPI HTMLWindow2_put_opener (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_opener (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_get_navigator (IHTMLWindow2 *iface, IOmNavigator **p)
 
static HRESULT WINAPI HTMLWindow2_put_name (IHTMLWindow2 *iface, BSTR v)
 
static HRESULT WINAPI HTMLWindow2_get_name (IHTMLWindow2 *iface, BSTR *p)
 
static HRESULT WINAPI HTMLWindow2_get_parent (IHTMLWindow2 *iface, IHTMLWindow2 **p)
 
static HRESULT WINAPI HTMLWindow2_open (IHTMLWindow2 *iface, BSTR url, BSTR name, BSTR features, VARIANT_BOOL replace, IHTMLWindow2 **pomWindowResult)
 
static HRESULT WINAPI HTMLWindow2_get_self (IHTMLWindow2 *iface, IHTMLWindow2 **p)
 
static HRESULT WINAPI HTMLWindow2_get_top (IHTMLWindow2 *iface, IHTMLWindow2 **p)
 
static HRESULT WINAPI HTMLWindow2_get_window (IHTMLWindow2 *iface, IHTMLWindow2 **p)
 
static HRESULT WINAPI HTMLWindow2_navigate (IHTMLWindow2 *iface, BSTR url)
 
static HRESULT WINAPI HTMLWindow2_put_onfocus (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onfocus (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_put_onblur (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onblur (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_put_onload (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onload (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_put_onbeforeunload (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onbeforeunload (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_put_onunload (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onunload (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_put_onhelp (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onhelp (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_put_onerror (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onerror (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_put_onresize (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onresize (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_put_onscroll (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_onscroll (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_get_document (IHTMLWindow2 *iface, IHTMLDocument2 **p)
 
static HRESULT WINAPI HTMLWindow2_get_event (IHTMLWindow2 *iface, IHTMLEventObj **p)
 
static HRESULT WINAPI HTMLWindow2_get__newEnum (IHTMLWindow2 *iface, IUnknown **p)
 
static HRESULT WINAPI HTMLWindow2_showModalDialog (IHTMLWindow2 *iface, BSTR dialog, VARIANT *varArgIn, VARIANT *varOptions, VARIANT *varArgOut)
 
static HRESULT WINAPI HTMLWindow2_showHelp (IHTMLWindow2 *iface, BSTR helpURL, VARIANT helpArg, BSTR features)
 
static HRESULT WINAPI HTMLWindow2_get_screen (IHTMLWindow2 *iface, IHTMLScreen **p)
 
static HRESULT WINAPI HTMLWindow2_get_Option (IHTMLWindow2 *iface, IHTMLOptionElementFactory **p)
 
static HRESULT WINAPI HTMLWindow2_focus (IHTMLWindow2 *iface)
 
static HRESULT WINAPI HTMLWindow2_get_closed (IHTMLWindow2 *iface, VARIANT_BOOL *p)
 
static HRESULT WINAPI HTMLWindow2_blur (IHTMLWindow2 *iface)
 
static HRESULT WINAPI HTMLWindow2_scroll (IHTMLWindow2 *iface, LONG x, LONG y)
 
static HRESULT WINAPI HTMLWindow2_get_clientInformation (IHTMLWindow2 *iface, IOmNavigator **p)
 
static HRESULT WINAPI HTMLWindow2_setInterval (IHTMLWindow2 *iface, BSTR expression, LONG msec, VARIANT *language, LONG *timerID)
 
static HRESULT WINAPI HTMLWindow2_clearInterval (IHTMLWindow2 *iface, LONG timerID)
 
static HRESULT WINAPI HTMLWindow2_put_offscreenBuffering (IHTMLWindow2 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow2_get_offscreenBuffering (IHTMLWindow2 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow2_execScript (IHTMLWindow2 *iface, BSTR scode, BSTR language, VARIANT *pvarRet)
 
static HRESULT WINAPI HTMLWindow2_toString (IHTMLWindow2 *iface, BSTR *String)
 
static HRESULT WINAPI HTMLWindow2_scrollBy (IHTMLWindow2 *iface, LONG x, LONG y)
 
static HRESULT WINAPI HTMLWindow2_scrollTo (IHTMLWindow2 *iface, LONG x, LONG y)
 
static HRESULT WINAPI HTMLWindow2_moveTo (IHTMLWindow2 *iface, LONG x, LONG y)
 
static HRESULT WINAPI HTMLWindow2_moveBy (IHTMLWindow2 *iface, LONG x, LONG y)
 
static HRESULT WINAPI HTMLWindow2_resizeTo (IHTMLWindow2 *iface, LONG x, LONG y)
 
static HRESULT WINAPI HTMLWindow2_resizeBy (IHTMLWindow2 *iface, LONG x, LONG y)
 
static HRESULT WINAPI HTMLWindow2_get_external (IHTMLWindow2 *iface, IDispatch **p)
 
static HTMLWindowimpl_from_IHTMLWindow3 (IHTMLWindow3 *iface)
 
static HRESULT WINAPI HTMLWindow3_QueryInterface (IHTMLWindow3 *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI HTMLWindow3_AddRef (IHTMLWindow3 *iface)
 
static ULONG WINAPI HTMLWindow3_Release (IHTMLWindow3 *iface)
 
static HRESULT WINAPI HTMLWindow3_GetTypeInfoCount (IHTMLWindow3 *iface, UINT *pctinfo)
 
static HRESULT WINAPI HTMLWindow3_GetTypeInfo (IHTMLWindow3 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
 
static HRESULT WINAPI HTMLWindow3_GetIDsOfNames (IHTMLWindow3 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
 
static HRESULT WINAPI HTMLWindow3_Invoke (IHTMLWindow3 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
 
static HRESULT WINAPI HTMLWindow3_get_screenLeft (IHTMLWindow3 *iface, LONG *p)
 
static HRESULT WINAPI HTMLWindow3_get_screenTop (IHTMLWindow3 *iface, LONG *p)
 
static HRESULT WINAPI HTMLWindow3_attachEvent (IHTMLWindow3 *iface, BSTR event, IDispatch *pDisp, VARIANT_BOOL *pfResult)
 
static HRESULT WINAPI HTMLWindow3_detachEvent (IHTMLWindow3 *iface, BSTR event, IDispatch *pDisp)
 
static HRESULT window_set_timer (HTMLInnerWindow *This, VARIANT *expr, LONG msec, VARIANT *language, BOOL interval, LONG *timer_id)
 
static HRESULT WINAPI HTMLWindow3_setTimeout (IHTMLWindow3 *iface, VARIANT *expression, LONG msec, VARIANT *language, LONG *timerID)
 
static HRESULT WINAPI HTMLWindow3_setInterval (IHTMLWindow3 *iface, VARIANT *expression, LONG msec, VARIANT *language, LONG *timerID)
 
static HRESULT WINAPI HTMLWindow3_print (IHTMLWindow3 *iface)
 
static HRESULT WINAPI HTMLWindow3_put_onbeforeprint (IHTMLWindow3 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow3_get_onbeforeprint (IHTMLWindow3 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow3_put_onafterprint (IHTMLWindow3 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow3_get_onafterprint (IHTMLWindow3 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow3_get_clipboardData (IHTMLWindow3 *iface, IHTMLDataTransfer **p)
 
static HRESULT WINAPI HTMLWindow3_showModelessDialog (IHTMLWindow3 *iface, BSTR url, VARIANT *varArgIn, VARIANT *options, IHTMLWindow2 **pDialog)
 
static HTMLWindowimpl_from_IHTMLWindow4 (IHTMLWindow4 *iface)
 
static HRESULT WINAPI HTMLWindow4_QueryInterface (IHTMLWindow4 *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI HTMLWindow4_AddRef (IHTMLWindow4 *iface)
 
static ULONG WINAPI HTMLWindow4_Release (IHTMLWindow4 *iface)
 
static HRESULT WINAPI HTMLWindow4_GetTypeInfoCount (IHTMLWindow4 *iface, UINT *pctinfo)
 
static HRESULT WINAPI HTMLWindow4_GetTypeInfo (IHTMLWindow4 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
 
static HRESULT WINAPI HTMLWindow4_GetIDsOfNames (IHTMLWindow4 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
 
static HRESULT WINAPI HTMLWindow4_Invoke (IHTMLWindow4 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
 
static HRESULT WINAPI HTMLWindow4_createPopup (IHTMLWindow4 *iface, VARIANT *varArgIn, IDispatch **ppPopup)
 
static HRESULT WINAPI HTMLWindow4_get_frameElement (IHTMLWindow4 *iface, IHTMLFrameBase **p)
 
static HTMLWindowimpl_from_IHTMLWindow5 (IHTMLWindow5 *iface)
 
static HRESULT WINAPI HTMLWindow5_QueryInterface (IHTMLWindow5 *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI HTMLWindow5_AddRef (IHTMLWindow5 *iface)
 
static ULONG WINAPI HTMLWindow5_Release (IHTMLWindow5 *iface)
 
static HRESULT WINAPI HTMLWindow5_GetTypeInfoCount (IHTMLWindow5 *iface, UINT *pctinfo)
 
static HRESULT WINAPI HTMLWindow5_GetTypeInfo (IHTMLWindow5 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
 
static HRESULT WINAPI HTMLWindow5_GetIDsOfNames (IHTMLWindow5 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
 
static HRESULT WINAPI HTMLWindow5_Invoke (IHTMLWindow5 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
 
static HRESULT WINAPI HTMLWindow5_put_XMLHttpRequest (IHTMLWindow5 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow5_get_XMLHttpRequest (IHTMLWindow5 *iface, VARIANT *p)
 
static HTMLWindowimpl_from_IHTMLWindow6 (IHTMLWindow6 *iface)
 
static HRESULT WINAPI HTMLWindow6_QueryInterface (IHTMLWindow6 *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI HTMLWindow6_AddRef (IHTMLWindow6 *iface)
 
static ULONG WINAPI HTMLWindow6_Release (IHTMLWindow6 *iface)
 
static HRESULT WINAPI HTMLWindow6_GetTypeInfoCount (IHTMLWindow6 *iface, UINT *pctinfo)
 
static HRESULT WINAPI HTMLWindow6_GetTypeInfo (IHTMLWindow6 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
 
static HRESULT WINAPI HTMLWindow6_GetIDsOfNames (IHTMLWindow6 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
 
static HRESULT WINAPI HTMLWindow6_Invoke (IHTMLWindow6 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
 
static HRESULT WINAPI HTMLWindow6_put_XDomainRequest (IHTMLWindow6 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow6_get_XDomainRequest (IHTMLWindow6 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow6_get_sessionStorage (IHTMLWindow6 *iface, IHTMLStorage **p)
 
static HRESULT WINAPI HTMLWindow6_get_localStorage (IHTMLWindow6 *iface, IHTMLStorage **p)
 
static HRESULT WINAPI HTMLWindow6_put_onhashchange (IHTMLWindow6 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow6_get_onhashchange (IHTMLWindow6 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow6_get_maxConnectionsPerServer (IHTMLWindow6 *iface, LONG *p)
 
static HRESULT WINAPI HTMLWindow6_postMessage (IHTMLWindow6 *iface, BSTR msg, VARIANT targetOrigin)
 
static HRESULT WINAPI HTMLWindow6_toStaticHTML (IHTMLWindow6 *iface, BSTR bstrHTML, BSTR *pbstrStaticHTML)
 
static HRESULT WINAPI HTMLWindow6_put_onmessage (IHTMLWindow6 *iface, VARIANT v)
 
static HRESULT WINAPI HTMLWindow6_get_onmessage (IHTMLWindow6 *iface, VARIANT *p)
 
static HRESULT WINAPI HTMLWindow6_msWriteProfilerMark (IHTMLWindow6 *iface, BSTR bstrProfilerMark)
 
static HTMLWindowimpl_from_IHTMLPrivateWindow (IHTMLPrivateWindow *iface)
 
static HRESULT WINAPI HTMLPrivateWindow_QueryInterface (IHTMLPrivateWindow *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI HTMLPrivateWindow_AddRef (IHTMLPrivateWindow *iface)
 
static ULONG WINAPI HTMLPrivateWindow_Release (IHTMLPrivateWindow *iface)
 
static HRESULT WINAPI HTMLPrivateWindow_SuperNavigate (IHTMLPrivateWindow *iface, BSTR url, BSTR arg2, BSTR arg3, BSTR arg4, VARIANT *post_data_var, VARIANT *headers_var, ULONG flags)
 
static HRESULT WINAPI HTMLPrivateWindow_GetPendingUrl (IHTMLPrivateWindow *iface, BSTR *url)
 
static HRESULT WINAPI HTMLPrivateWindow_SetPICSTarget (IHTMLPrivateWindow *iface, IOleCommandTarget *cmdtrg)
 
static HRESULT WINAPI HTMLPrivateWindow_PICSComplete (IHTMLPrivateWindow *iface, int arg)
 
static HRESULT WINAPI HTMLPrivateWindow_FindWindowByName (IHTMLPrivateWindow *iface, LPCWSTR name, IHTMLWindow2 **ret)
 
static HRESULT WINAPI HTMLPrivateWindow_GetAddressBarUrl (IHTMLPrivateWindow *iface, BSTR *url)
 
static HTMLWindowimpl_from_ITravelLogClient (ITravelLogClient *iface)
 
static HRESULT WINAPI TravelLogClient_QueryInterface (ITravelLogClient *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI TravelLogClient_AddRef (ITravelLogClient *iface)
 
static ULONG WINAPI TravelLogClient_Release (ITravelLogClient *iface)
 
static HRESULT WINAPI TravelLogClient_FindWindowByIndex (ITravelLogClient *iface, DWORD dwID, IUnknown **ppunk)
 
static HRESULT WINAPI TravelLogClient_GetWindowData (ITravelLogClient *iface, IStream *pStream, LPWINDOWDATA pWinData)
 
static HRESULT WINAPI TravelLogClient_LoadHistoryPosition (ITravelLogClient *iface, LPWSTR pszUrlLocation, DWORD dwPosition)
 
static HTMLWindowimpl_from_IObjectIdentity (IObjectIdentity *iface)
 
static HRESULT WINAPI ObjectIdentity_QueryInterface (IObjectIdentity *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI ObjectIdentity_AddRef (IObjectIdentity *iface)
 
static ULONG WINAPI ObjectIdentity_Release (IObjectIdentity *iface)
 
static HRESULT WINAPI ObjectIdentity_IsEqualObject (IObjectIdentity *iface, IUnknown *unk)
 
static HTMLWindowimpl_from_IDispatchEx (IDispatchEx *iface)
 
static HRESULT WINAPI WindowDispEx_QueryInterface (IDispatchEx *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI WindowDispEx_AddRef (IDispatchEx *iface)
 
static ULONG WINAPI WindowDispEx_Release (IDispatchEx *iface)
 
static HRESULT WINAPI WindowDispEx_GetTypeInfoCount (IDispatchEx *iface, UINT *pctinfo)
 
static HRESULT WINAPI WindowDispEx_GetTypeInfo (IDispatchEx *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
 
static HRESULT WINAPI WindowDispEx_GetIDsOfNames (IDispatchEx *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
 
static HRESULT WINAPI WindowDispEx_Invoke (IDispatchEx *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
 
static global_prop_talloc_global_prop (HTMLInnerWindow *This, global_prop_type_t type, BSTR name)
 
static DWORD prop_to_dispid (HTMLInnerWindow *This, global_prop_t *prop)
 
HRESULT search_window_props (HTMLInnerWindow *This, BSTR bstrName, DWORD grfdex, DISPID *pid)
 
static HRESULT WINAPI WindowDispEx_GetDispID (IDispatchEx *iface, BSTR bstrName, DWORD grfdex, DISPID *pid)
 
static HRESULT WINAPI WindowDispEx_InvokeEx (IDispatchEx *iface, DISPID id, LCID lcid, WORD wFlags, DISPPARAMS *pdp, VARIANT *pvarRes, EXCEPINFO *pei, IServiceProvider *pspCaller)
 
static HRESULT WINAPI WindowDispEx_DeleteMemberByName (IDispatchEx *iface, BSTR bstrName, DWORD grfdex)
 
static HRESULT WINAPI WindowDispEx_DeleteMemberByDispID (IDispatchEx *iface, DISPID id)
 
static HRESULT WINAPI WindowDispEx_GetMemberProperties (IDispatchEx *iface, DISPID id, DWORD grfdexFetch, DWORD *pgrfdex)
 
static HRESULT WINAPI WindowDispEx_GetMemberName (IDispatchEx *iface, DISPID id, BSTR *pbstrName)
 
static HRESULT WINAPI WindowDispEx_GetNextDispID (IDispatchEx *iface, DWORD grfdex, DISPID id, DISPID *pid)
 
static HRESULT WINAPI WindowDispEx_GetNameSpaceParent (IDispatchEx *iface, IUnknown **ppunk)
 
static HTMLWindowimpl_from_IServiceProvider (IServiceProvider *iface)
 
static HRESULT WINAPI HTMLWindowSP_QueryInterface (IServiceProvider *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI HTMLWindowSP_AddRef (IServiceProvider *iface)
 
static ULONG WINAPI HTMLWindowSP_Release (IServiceProvider *iface)
 
static HRESULT WINAPI HTMLWindowSP_QueryService (IServiceProvider *iface, REFGUID guidService, REFIID riid, void **ppv)
 
static HTMLInnerWindowimpl_from_DispatchEx (DispatchEx *iface)
 
static HRESULT HTMLWindow_invoke (DispatchEx *dispex, DISPID id, LCID lcid, WORD flags, DISPPARAMS *params, VARIANT *res, EXCEPINFO *ei, IServiceProvider *caller)
 
static event_target_t ** HTMLWindow_get_event_target_ptr (DispatchEx *dispex)
 
static void HTMLWindow_bind_event (DispatchEx *dispex, int eid)
 
static voidalloc_window (size_t size)
 
static HRESULT create_inner_window (HTMLOuterWindow *outer_window, IMoniker *mon, HTMLInnerWindow **ret)
 
HRESULT HTMLOuterWindow_Create (HTMLDocumentObj *doc_obj, nsIDOMWindow *nswindow, HTMLOuterWindow *parent, HTMLOuterWindow **ret)
 
HRESULT create_pending_window (HTMLOuterWindow *outer_window, nsChannelBSC *channelbsc)
 
HRESULT update_window_doc (HTMLInnerWindow *window)
 
HTMLOuterWindownswindow_to_window (const nsIDOMWindow *nswindow)
 

Variables

static struct list window_list = LIST_INIT(window_list)
 
static const IHTMLWindow2Vtbl HTMLWindow2Vtbl
 
static const IHTMLWindow3Vtbl HTMLWindow3Vtbl
 
static const IHTMLWindow4Vtbl HTMLWindow4Vtbl
 
static const IHTMLWindow5Vtbl HTMLWindow5Vtbl
 
static const IHTMLWindow6Vtbl HTMLWindow6Vtbl
 
static const IHTMLPrivateWindowVtbl HTMLPrivateWindowVtbl
 
static const ITravelLogClientVtbl TravelLogClientVtbl
 
static const IObjectIdentityVtbl ObjectIdentityVtbl
 
static const IDispatchExVtbl WindowDispExVtbl
 
static const IServiceProviderVtbl ServiceProviderVtbl
 
static const dispex_static_data_vtbl_t HTMLWindow_dispex_vtbl
 
static const tid_t HTMLWindow_iface_tids []
 
static dispex_static_data_t HTMLWindow_dispex
 

Macro Definition Documentation

◆ MAX_MESSAGE_LEN

#define MAX_MESSAGE_LEN   2000

Definition at line 566 of file htmlwindow.c.

Function Documentation

◆ alloc_global_prop()

static global_prop_t * alloc_global_prop ( HTMLInnerWindow This,
global_prop_type_t  type,
BSTR  name 
)
static

Definition at line 2481 of file htmlwindow.c.

2482{
2483 if(This->global_prop_cnt == This->global_prop_size) {
2484 global_prop_t *new_props;
2485 DWORD new_size;
2486
2487 if(This->global_props) {
2488 new_size = This->global_prop_size*2;
2489 new_props = heap_realloc(This->global_props, new_size*sizeof(global_prop_t));
2490 }else {
2491 new_size = 16;
2492 new_props = heap_alloc(new_size*sizeof(global_prop_t));
2493 }
2494 if(!new_props)
2495 return NULL;
2496 This->global_props = new_props;
2497 This->global_prop_size = new_size;
2498 }
2499
2500 This->global_props[This->global_prop_cnt].name = heap_strdupW(name);
2501 if(!This->global_props[This->global_prop_cnt].name)
2502 return NULL;
2503
2504 This->global_props[This->global_prop_cnt].type = type;
2505 return This->global_props + This->global_prop_cnt++;
2506}
static void * heap_alloc(size_t len)
Definition: appwiz.h:66
static void * heap_realloc(void *mem, size_t len)
Definition: appwiz.h:71
#define NULL
Definition: types.h:112
static WCHAR * heap_strdupW(const WCHAR *str)
Definition: propsheet.c:178
unsigned long DWORD
Definition: ntddk_ex.h:95
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
Definition: name.c:39

Referenced by search_window_props(), and WindowDispEx_GetDispID().

◆ alloc_window()

static void * alloc_window ( size_t  size)
static

Definition at line 2894 of file htmlwindow.c.

2895{
2897
2898 window = heap_alloc_zero(size);
2899 if(!window)
2900 return NULL;
2901
2902 window->IHTMLWindow2_iface.lpVtbl = &HTMLWindow2Vtbl;
2903 window->IHTMLWindow3_iface.lpVtbl = &HTMLWindow3Vtbl;
2904 window->IHTMLWindow4_iface.lpVtbl = &HTMLWindow4Vtbl;
2905 window->IHTMLWindow5_iface.lpVtbl = &HTMLWindow5Vtbl;
2906 window->IHTMLWindow6_iface.lpVtbl = &HTMLWindow6Vtbl;
2907 window->IHTMLPrivateWindow_iface.lpVtbl = &HTMLPrivateWindowVtbl;
2908 window->IDispatchEx_iface.lpVtbl = &WindowDispExVtbl;
2909 window->IServiceProvider_iface.lpVtbl = &ServiceProviderVtbl;
2910 window->ITravelLogClient_iface.lpVtbl = &TravelLogClientVtbl;
2911 window->IObjectIdentity_iface.lpVtbl = &ObjectIdentityVtbl;
2912 window->ref = 1;
2913
2914 return window;
2915}
GLsizeiptr size
Definition: glext.h:5919
static const IHTMLWindow2Vtbl HTMLWindow2Vtbl
Definition: htmlwindow.c:1463
static const IHTMLWindow3Vtbl HTMLWindow3Vtbl
Definition: htmlwindow.c:1766
static const IHTMLWindow6Vtbl HTMLWindow6Vtbl
Definition: htmlwindow.c:2143
static const ITravelLogClientVtbl TravelLogClientVtbl
Definition: htmlwindow.c:2341
static const IHTMLWindow5Vtbl HTMLWindow5Vtbl
Definition: htmlwindow.c:1974
static const IHTMLPrivateWindowVtbl HTMLPrivateWindowVtbl
Definition: htmlwindow.c:2279
static const IDispatchExVtbl WindowDispExVtbl
Definition: htmlwindow.c:2682
static const IHTMLWindow4Vtbl HTMLWindow4Vtbl
Definition: htmlwindow.c:1872
static const IServiceProviderVtbl ServiceProviderVtbl
Definition: htmlwindow.c:2741
static const IObjectIdentityVtbl ObjectIdentityVtbl
Definition: htmlwindow.c:2394
static IHTMLWindow2 * window
Definition: events.c:77

Referenced by create_inner_window(), and HTMLOuterWindow_Create().

◆ create_inner_window()

static HRESULT create_inner_window ( HTMLOuterWindow outer_window,
IMoniker mon,
HTMLInnerWindow **  ret 
)
static

Definition at line 2917 of file htmlwindow.c.

2918{
2920
2922 if(!window)
2923 return E_OUTOFMEMORY;
2924
2925 list_init(&window->script_hosts);
2926 list_init(&window->bindings);
2927 list_init(&window->script_queue);
2928
2929 window->base.outer_window = outer_window;
2930 window->base.inner_window = window;
2931
2932 init_dispex(&window->event_target.dispex, (IUnknown*)&window->base.IHTMLWindow2_iface, &HTMLWindow_dispex);
2933
2934 window->task_magic = get_task_target_magic();
2935
2936 if(mon) {
2937 IMoniker_AddRef(mon);
2938 window->mon = mon;
2939 }
2940
2941 *ret = window;
2942 return S_OK;
2943}
static void list_init(struct list_entry *head)
Definition: list.h:51
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static dispex_static_data_t HTMLWindow_dispex
Definition: htmlwindow.c:2887
static void * alloc_window(size_t size)
Definition: htmlwindow.c:2894
#define S_OK
Definition: intsafe.h:52
HRESULT init_dispex(jsdisp_t *dispex, script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *prototype)
Definition: dispex.c:919
LONG get_task_target_magic(void) DECLSPEC_HIDDEN
Definition: task.c:139
int ret

Referenced by create_pending_window().

◆ create_pending_window()

HRESULT create_pending_window ( HTMLOuterWindow outer_window,
nsChannelBSC channelbsc 
)

Definition at line 3009 of file htmlwindow.c.

3010{
3011 HTMLInnerWindow *pending_window;
3012 HRESULT hres;
3013
3014 hres = create_inner_window(outer_window, outer_window->mon /* FIXME */, &pending_window);
3015 if(FAILED(hres))
3016 return hres;
3017
3018 if(channelbsc) {
3019 IBindStatusCallback_AddRef(&channelbsc->bsc.IBindStatusCallback_iface);
3020 pending_window->bscallback = channelbsc;
3021 }
3022
3023 if(outer_window->pending_window) {
3025 outer_window->pending_window->base.outer_window = NULL;
3026 IHTMLWindow2_Release(&outer_window->pending_window->base.IHTMLWindow2_iface);
3027 }
3028
3029 outer_window->pending_window = pending_window;
3030 return S_OK;
3031}
static HRESULT create_inner_window(HTMLOuterWindow *outer_window, IMoniker *mon, HTMLInnerWindow **ret)
Definition: htmlwindow.c:2917
#define FAILED(hr)
Definition: intsafe.h:51
HRESULT hres
Definition: protocol.c:465
void abort_window_bindings(HTMLInnerWindow *) DECLSPEC_HIDDEN
Definition: navigate.c:1775
IBindStatusCallback IBindStatusCallback_iface
Definition: binding.h:72
nsChannelBSC * bscallback
HTMLInnerWindow * pending_window
HTMLOuterWindow * outer_window
IHTMLWindow2 IHTMLWindow2_iface
BSCallback bsc
Definition: binding.h:98

Referenced by async_open(), HTMLOuterWindow_Create(), and set_moniker().

◆ detach_inner_window()

static void detach_inner_window ( HTMLInnerWindow window)
static

Definition at line 87 of file htmlwindow.c.

88{
89 HTMLOuterWindow *outer_window = window->base.outer_window;
90
91 if(outer_window && outer_window->doc_obj && outer_window == outer_window->doc_obj->basedoc.window)
92 window->doc->basedoc.cp_container.forward_container = NULL;
93
94 if(window->doc) {
96 while(!list_empty(&window->doc->plugin_hosts))
98 }
99
101 remove_target_tasks(window->task_magic);
103 window->base.outer_window = NULL;
104
105 if(outer_window && outer_window->base.inner_window == window) {
106 outer_window->base.inner_window = NULL;
107 IHTMLWindow2_Release(&window->base.IHTMLWindow2_iface);
108 }
109}
static int list_empty(struct list_entry *head)
Definition: list.h:58
void detach_events(HTMLDocumentNode *doc)
Definition: htmlevent.c:1341
void release_script_hosts(HTMLInnerWindow *) DECLSPEC_HIDDEN
Definition: script.c:1583
uint32_t entry
Definition: isohybrid.c:63
void remove_target_tasks(LONG) DECLSPEC_HIDDEN
Definition: task.c:107
void detach_plugin_host(PluginHost *host)
Definition: pluginhost.c:1988
HTMLDocument basedoc
HTMLOuterWindow * window
HTMLDocumentObj * doc_obj
HTMLInnerWindow * inner_window
Definition: list.h:15
#define LIST_ENTRY(type)
Definition: queue.h:175

Referenced by release_inner_window(), release_outer_window(), and update_window_doc().

◆ get_frame_by_index()

static HRESULT get_frame_by_index ( HTMLOuterWindow This,
UINT32  index,
HTMLOuterWindow **  ret 
)
static

Definition at line 309 of file htmlwindow.c.

310{
311 nsIDOMWindowCollection *nsframes;
312 nsIDOMWindow *nswindow;
314 nsresult nsres;
315
316 nsres = nsIDOMWindow_GetFrames(This->nswindow, &nsframes);
317 if(NS_FAILED(nsres)) {
318 FIXME("nsIDOMWindow_GetFrames failed: 0x%08x\n", nsres);
319 return E_FAIL;
320 }
321
322 nsres = nsIDOMWindowCollection_GetLength(nsframes, &length);
323 assert(nsres == NS_OK);
324
325 if(index >= length) {
326 nsIDOMWindowCollection_Release(nsframes);
328 }
329
330 nsres = nsIDOMWindowCollection_Item(nsframes, index, &nswindow);
331 nsIDOMWindowCollection_Release(nsframes);
332 if(NS_FAILED(nsres)) {
333 FIXME("nsIDOMWindowCollection_Item failed: 0x%08x\n", nsres);
334 return E_FAIL;
335 }
336
337 *ret = nswindow_to_window(nswindow);
338
339 nsIDOMWindow_Release(nswindow);
340 return S_OK;
341}
unsigned int UINT32
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_FAIL
Definition: ddrawi.h:102
#define assert(x)
Definition: debug.h:53
GLuint index
Definition: glext.h:6031
GLuint GLsizei GLsizei * length
Definition: glext.h:6040
HTMLOuterWindow * nswindow_to_window(const nsIDOMWindow *nswindow)
Definition: htmlwindow.c:3099
#define NS_OK
#define NS_FAILED(res)
#define DISP_E_MEMBERNOTFOUND
Definition: winerror.h:2512

Referenced by HTMLWindow2_item().

◆ get_frame_by_name()

HRESULT get_frame_by_name ( HTMLOuterWindow This,
const WCHAR name,
BOOL  deep,
HTMLOuterWindow **  ret 
)

Definition at line 343 of file htmlwindow.c.

344{
345 nsIDOMWindowCollection *nsframes;
347 nsIDOMWindow *nswindow;
348 nsAString name_str;
349 UINT32 length, i;
350 nsresult nsres;
351 HRESULT hres = S_OK;
352
353 nsres = nsIDOMWindow_GetFrames(This->nswindow, &nsframes);
354 if(NS_FAILED(nsres)) {
355 FIXME("nsIDOMWindow_GetFrames failed: 0x%08x\n", nsres);
356 return E_FAIL;
357 }
358
359 if(!nsframes) {
360 WARN("nsIDOMWindow_GetFrames returned NULL nsframes: %p\n", This->nswindow);
362 }
363
364 nsAString_InitDepend(&name_str, name);
365 nsres = nsIDOMWindowCollection_NamedItem(nsframes, &name_str, &nswindow);
366 nsAString_Finish(&name_str);
367 if(NS_FAILED(nsres)) {
368 nsIDOMWindowCollection_Release(nsframes);
369 return E_FAIL;
370 }
371
372 if(nswindow) {
373 *ret = nswindow_to_window(nswindow);
374 return S_OK;
375 }
376
377 nsres = nsIDOMWindowCollection_GetLength(nsframes, &length);
378 assert(nsres == NS_OK);
379
380 for(i = 0; i < length && !window; ++i) {
381 HTMLOuterWindow *window_iter;
382 BSTR id;
383
384 nsres = nsIDOMWindowCollection_Item(nsframes, i, &nswindow);
385 if(NS_FAILED(nsres)) {
386 FIXME("nsIDOMWindowCollection_Item failed: 0x%08x\n", nsres);
387 hres = E_FAIL;
388 break;
389 }
390
391 window_iter = nswindow_to_window(nswindow);
392
393 nsIDOMWindow_Release(nswindow);
394
395 if(!window_iter) {
396 WARN("nsIDOMWindow without HTMLOuterWindow: %p\n", nswindow);
397 continue;
398 }
399
400 hres = IHTMLElement_get_id(&window_iter->frame_element->element.IHTMLElement_iface, &id);
401 if(FAILED(hres)) {
402 FIXME("IHTMLElement_get_id failed: 0x%08x\n", hres);
403 break;
404 }
405
406 if(id && !strcmpiW(id, name))
407 window = window_iter;
408
409 SysFreeString(id);
410
411 if(!window && deep)
412 get_frame_by_name(window_iter, name, TRUE, &window);
413 }
414
415 nsIDOMWindowCollection_Release(nsframes);
416 if(FAILED(hres))
417 return hres;
418
419 *ret = window;
420 return NS_OK;
421}
#define WARN(fmt,...)
Definition: debug.h:112
#define TRUE
Definition: types.h:120
OLECHAR * BSTR
Definition: compat.h:2293
GLuint id
Definition: glext.h:5910
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
HRESULT get_frame_by_name(HTMLOuterWindow *This, const WCHAR *name, BOOL deep, HTMLOuterWindow **ret)
Definition: htmlwindow.c:343
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:826
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
Definition: oleaut.c:271
#define strcmpiW(s1, s2)
Definition: unicode.h:39
IHTMLElement IHTMLElement_iface
HTMLElement element
HTMLFrameBase * frame_element

Referenced by get_frame_by_name(), get_target_window(), HTMLWindow2_item(), HTMLWindow_invoke(), and WindowDispEx_GetDispID().

◆ get_location()

static HRESULT get_location ( HTMLInnerWindow This,
HTMLLocation **  ret 
)
static

Definition at line 43 of file htmlwindow.c.

44{
45 if(This->location) {
46 IHTMLLocation_AddRef(&This->location->IHTMLLocation_iface);
47 }else {
49
50 hres = HTMLLocation_Create(This, &This->location);
51 if(FAILED(hres))
52 return hres;
53 }
54
55 *ret = This->location;
56 return S_OK;
57}
HRESULT HTMLLocation_Create(HTMLInnerWindow *window, HTMLLocation **ret)
Definition: htmllocation.c:622

Referenced by FT_DEFINE_SERVICE(), HTMLWindow2_get_location(), XMLStorage::XMLReaderBase::StartElementHandler(), and WindowDispEx_InvokeEx().

◆ get_top_window()

void get_top_window ( HTMLOuterWindow window,
HTMLOuterWindow **  ret 
)

Definition at line 59 of file htmlwindow.c.

60{
61 HTMLOuterWindow *iter;
62
63 for(iter = window; iter->parent; iter = iter->parent);
64 *ret = iter;
65}
HTMLOuterWindow * parent

Referenced by get_target_window(), and HTMLWindow2_get_top().

◆ get_window_event()

static HRESULT get_window_event ( HTMLWindow window,
eventid_t  eid,
VARIANT var 
)
inlinestatic

Definition at line 77 of file htmlwindow.c.

78{
79 if(!window->inner_window->doc) {
80 FIXME("No document\n");
81 return E_FAIL;
82 }
83
84 return get_event_handler(&window->inner_window->event_target, eid, var);
85}
HRESULT get_event_handler(EventTarget *event_target, eventid_t eid, VARIANT *var)
Definition: htmlevent.c:1447
const char * var
Definition: shader.c:5666

Referenced by HTMLWindow2_get_onbeforeunload(), HTMLWindow2_get_onblur(), HTMLWindow2_get_onerror(), HTMLWindow2_get_onfocus(), HTMLWindow2_get_onhelp(), HTMLWindow2_get_onload(), HTMLWindow2_get_onresize(), and HTMLWindow2_get_onscroll().

◆ HTMLOuterWindow_Create()

HRESULT HTMLOuterWindow_Create ( HTMLDocumentObj doc_obj,
nsIDOMWindow nswindow,
HTMLOuterWindow parent,
HTMLOuterWindow **  ret 
)

Definition at line 2945 of file htmlwindow.c.

2947{
2949 HRESULT hres;
2950
2952 if(!window)
2953 return E_OUTOFMEMORY;
2954
2955 window->base.outer_window = window;
2956 window->base.inner_window = NULL;
2957
2958 window->window_ref = heap_alloc(sizeof(windowref_t));
2959 if(!window->window_ref) {
2961 return E_OUTOFMEMORY;
2962 }
2963
2964 window->doc_obj = doc_obj;
2965
2966 window->window_ref->window = window;
2967 window->window_ref->ref = 1;
2968
2969 if(nswindow) {
2970 nsIDOMWindow_AddRef(nswindow);
2971 window->nswindow = nswindow;
2972 }
2973
2974 window->scriptmode = parent ? parent->scriptmode : SCRIPTMODE_GECKO;
2975 window->readystate = READYSTATE_UNINITIALIZED;
2976
2978 if(SUCCEEDED(hres))
2979 hres = update_window_doc(window->pending_window);
2980 if(FAILED(hres)) {
2981 IHTMLWindow2_Release(&window->base.IHTMLWindow2_iface);
2982 return hres;
2983 }
2984
2986 if(FAILED(hres)) {
2987 IHTMLWindow2_Release(&window->base.IHTMLWindow2_iface);
2988 return hres;
2989 }
2990
2991 window->task_magic = get_task_target_magic();
2992
2993 list_init(&window->children);
2994 list_add_head(&window_list, &window->entry);
2995
2996 if(parent) {
2997 IHTMLWindow2_AddRef(&window->base.IHTMLWindow2_iface);
2998
2999 window->parent = parent;
3000 list_add_tail(&parent->children, &window->sibling_entry);
3001 }
3002
3003 TRACE("%p inner_window %p\n", window, window->base.inner_window);
3004
3005 *ret = window;
3006 return S_OK;
3007}
static BOOL heap_free(void *mem)
Definition: appwiz.h:76
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
Definition: list.h:83
static void list_add_head(struct list_entry *head, struct list_entry *entry)
Definition: list.h:76
HRESULT WINAPI CoInternetCreateSecurityManager(IServiceProvider *pSP, IInternetSecurityManager **ppSM, DWORD dwReserved)
Definition: sec_mgr.c:1841
r parent
Definition: btrfs.c:3010
static struct list window_list
Definition: htmlwindow.c:23
HRESULT update_window_doc(HTMLInnerWindow *window)
Definition: htmlwindow.c:3033
HRESULT create_pending_window(HTMLOuterWindow *outer_window, nsChannelBSC *channelbsc)
Definition: htmlwindow.c:3009
#define SUCCEEDED(hr)
Definition: intsafe.h:50
@ SCRIPTMODE_GECKO
#define TRACE(s)
Definition: solgame.cpp:4

Referenced by HTMLDocument_Create(), and set_frame_doc().

◆ HTMLPrivateWindow_AddRef()

static ULONG WINAPI HTMLPrivateWindow_AddRef ( IHTMLPrivateWindow iface)
static

Definition at line 2177 of file htmlwindow.c.

2178{
2180
2181 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
2182}
static HTMLWindow * impl_from_IHTMLPrivateWindow(IHTMLPrivateWindow *iface)
Definition: htmlwindow.c:2165

◆ HTMLPrivateWindow_FindWindowByName()

static HRESULT WINAPI HTMLPrivateWindow_FindWindowByName ( IHTMLPrivateWindow iface,
LPCWSTR  name,
IHTMLWindow2 **  ret 
)
static

Definition at line 2260 of file htmlwindow.c.

2261{
2263 FIXME("(%p)->(%s %p)\n", This, debugstr_w(name), ret);
2264 return E_NOTIMPL;
2265}
#define E_NOTIMPL
Definition: ddrawi.h:99
#define debugstr_w
Definition: kernel32.h:32

◆ HTMLPrivateWindow_GetAddressBarUrl()

static HRESULT WINAPI HTMLPrivateWindow_GetAddressBarUrl ( IHTMLPrivateWindow iface,
BSTR url 
)
static

Definition at line 2267 of file htmlwindow.c.

2268{
2270 TRACE("(%p)->(%p)\n", This, url);
2271
2272 if(!url)
2273 return E_INVALIDARG;
2274
2275 *url = SysAllocString(This->outer_window->url);
2276 return S_OK;
2277}
#define E_INVALIDARG
Definition: ddrawi.h:101
static const WCHAR url[]
Definition: encode.c:1432
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:238

◆ HTMLPrivateWindow_GetPendingUrl()

static HRESULT WINAPI HTMLPrivateWindow_GetPendingUrl ( IHTMLPrivateWindow iface,
BSTR url 
)
static

Definition at line 2239 of file htmlwindow.c.

2240{
2242 FIXME("(%p)->(%p)\n", This, url);
2243 return E_NOTIMPL;
2244}

◆ HTMLPrivateWindow_PICSComplete()

static HRESULT WINAPI HTMLPrivateWindow_PICSComplete ( IHTMLPrivateWindow iface,
int  arg 
)
static

Definition at line 2253 of file htmlwindow.c.

2254{
2256 FIXME("(%p)->(%x)\n", This, arg);
2257 return E_NOTIMPL;
2258}

◆ HTMLPrivateWindow_QueryInterface()

static HRESULT WINAPI HTMLPrivateWindow_QueryInterface ( IHTMLPrivateWindow iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 2170 of file htmlwindow.c.

2171{
2173
2174 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
2175}
REFIID riid
Definition: atlbase.h:39
REFIID LPVOID * ppv
Definition: atlbase.h:39

◆ HTMLPrivateWindow_Release()

static ULONG WINAPI HTMLPrivateWindow_Release ( IHTMLPrivateWindow iface)
static

Definition at line 2184 of file htmlwindow.c.

2185{
2187
2188 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
2189}

◆ HTMLPrivateWindow_SetPICSTarget()

static HRESULT WINAPI HTMLPrivateWindow_SetPICSTarget ( IHTMLPrivateWindow iface,
IOleCommandTarget cmdtrg 
)
static

Definition at line 2246 of file htmlwindow.c.

2247{
2249 FIXME("(%p)->(%p)\n", This, cmdtrg);
2250 return E_NOTIMPL;
2251}

◆ HTMLPrivateWindow_SuperNavigate()

static HRESULT WINAPI HTMLPrivateWindow_SuperNavigate ( IHTMLPrivateWindow iface,
BSTR  url,
BSTR  arg2,
BSTR  arg3,
BSTR  arg4,
VARIANT post_data_var,
VARIANT headers_var,
ULONG  flags 
)
static

Definition at line 2191 of file htmlwindow.c.

2193{
2195 HTMLOuterWindow *window = This->outer_window;
2196 OLECHAR *translated_url = NULL;
2197 DWORD post_data_size = 0;
2198 BYTE *post_data = NULL;
2199 WCHAR *headers = NULL;
2200 IUri *uri;
2201 HRESULT hres;
2202
2203 TRACE("(%p)->(%s %s %s %s %s %s %x)\n", This, debugstr_w(url), debugstr_w(arg2), debugstr_w(arg3), debugstr_w(arg4),
2204 debugstr_variant(post_data_var), debugstr_variant(headers_var), flags);
2205
2206 if(window->doc_obj->hostui) {
2207 hres = IDocHostUIHandler_TranslateUrl(window->doc_obj->hostui, 0, url, &translated_url);
2208 if(hres != S_OK)
2209 translated_url = NULL;
2210 }
2211
2212 hres = create_uri(translated_url ? translated_url : url, 0, &uri);
2213 CoTaskMemFree(translated_url);
2214 if(FAILED(hres))
2215 return hres;
2216
2217 if(post_data_var) {
2218 if(V_VT(post_data_var) == (VT_ARRAY|VT_UI1)) {
2219 SafeArrayAccessData(V_ARRAY(post_data_var), (void**)&post_data);
2220 post_data_size = V_ARRAY(post_data_var)->rgsabound[0].cElements;
2221 }
2222 }
2223
2224 if(headers_var && V_VT(headers_var) != VT_EMPTY && V_VT(headers_var) != VT_ERROR) {
2225 if(V_VT(headers_var) != VT_BSTR)
2226 return E_INVALIDARG;
2227
2228 headers = V_BSTR(headers_var);
2229 }
2230
2232 IUri_Release(uri);
2233 if(post_data)
2234 SafeArrayUnaccessData(V_ARRAY(post_data_var));
2235
2236 return hres;
2237}
#define BINDING_NAVIGATED
Definition: binding.h:127
#define BINDING_NOFRAG
Definition: binding.h:132
HRESULT super_navigate(HTMLOuterWindow *, IUri *, DWORD, const WCHAR *, BYTE *, DWORD) DECLSPEC_HIDDEN
Definition: navigate.c:2016
HRESULT create_uri(const WCHAR *, DWORD, IUri **) DECLSPEC_HIDDEN
Definition: persist.c:158
WCHAR OLECHAR
Definition: compat.h:2292
@ VT_BSTR
Definition: compat.h:2303
@ VT_ERROR
Definition: compat.h:2305
@ VT_ARRAY
Definition: compat.h:2341
@ VT_EMPTY
Definition: compat.h:2295
@ VT_UI1
Definition: compat.h:2311
HRESULT WINAPI SafeArrayAccessData(SAFEARRAY *psa, void **ppvData)
Definition: safearray.c:1137
HRESULT WINAPI SafeArrayUnaccessData(SAFEARRAY *psa)
Definition: safearray.c:1168
GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint GLuint arg3
Definition: glext.h:9515
GLuint GLuint GLuint GLuint GLuint GLuint GLuint arg2
Definition: glext.h:9514
GLbitfield flags
Definition: glext.h:7161
VOID WINAPI CoTaskMemFree(LPVOID ptr)
Definition: ifs.c:442
static const char * debugstr_variant(const VARIANT *var)
Definition: container.c:46
static const CHAR post_data[]
Definition: protocol.c:217
const char * uri
Definition: sec_mgr.c:1588
#define V_ARRAY(A)
Definition: oleauto.h:222
#define V_VT(A)
Definition: oleauto.h:211
#define V_BSTR(A)
Definition: oleauto.h:226
vector< Header * > headers
Definition: sdkparse.cpp:39
__wchar_t WCHAR
Definition: xmlstorage.h:180
unsigned char BYTE
Definition: xxhash.c:193

◆ HTMLWindow2_AddRef()

static ULONG WINAPI HTMLWindow2_AddRef ( IHTMLWindow2 iface)
static

Definition at line 161 of file htmlwindow.c.

162{
165
166 TRACE("(%p) ref=%d\n", This, ref);
167
168 return ref;
169}
#define InterlockedIncrement
Definition: armddk.h:53
static HTMLWindow * impl_from_IHTMLWindow2(IHTMLWindow2 *iface)
Definition: htmlwindow.c:111
long LONG
Definition: pedump.c:60
Definition: send.c:48

Referenced by HTMLWindow2_get_frames().

◆ HTMLWindow2_alert()

static HRESULT WINAPI HTMLWindow2_alert ( IHTMLWindow2 iface,
BSTR  message 
)
static

Definition at line 568 of file htmlwindow.c.

569{
571 WCHAR title[100], *msg = message;
572 DWORD len;
573
574 TRACE("(%p)->(%s)\n", This, debugstr_w(message));
575
577 sizeof(title)/sizeof(WCHAR))) {
578 WARN("Could not load message box title: %d\n", GetLastError());
579 return S_OK;
580 }
581
583 if(len > MAX_MESSAGE_LEN) {
584 msg = heap_alloc((MAX_MESSAGE_LEN+1)*sizeof(WCHAR));
585 if(!msg)
586 return E_OUTOFMEMORY;
588 msg[MAX_MESSAGE_LEN] = 0;
589 }
590
591 MessageBoxW(This->outer_window->doc_obj->hwnd, msg, title, MB_ICONWARNING);
592 if(msg != message)
593 heap_free(msg);
594 return S_OK;
595}
#define msg(x)
Definition: auth_time.c:54
HINSTANCE get_shdoclc(void)
Definition: main.c:162
#define IDS_MESSAGE_BOX_TITLE
Definition: resource.h:32
GLenum GLsizei len
Definition: glext.h:6722
#define MAX_MESSAGE_LEN
Definition: htmlwindow.c:566
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
UINT WINAPI SysStringLen(BSTR str)
Definition: oleaut.c:196
static char title[]
Definition: ps.c:92
Definition: tftpd.h:60
DWORD WINAPI GetLastError(void)
Definition: except.c:1042
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
int WINAPI MessageBoxW(_In_opt_ HWND hWnd, _In_opt_ LPCWSTR lpText, _In_opt_ LPCWSTR lpCaption, _In_ UINT uType)
#define MB_ICONWARNING
Definition: winuser.h:786

◆ HTMLWindow2_blur()

static HRESULT WINAPI HTMLWindow2_blur ( IHTMLWindow2 iface)
static

Definition at line 1302 of file htmlwindow.c.

1303{
1305 FIXME("(%p)->()\n", This);
1306 return E_NOTIMPL;
1307}

◆ HTMLWindow2_clearInterval()

static HRESULT WINAPI HTMLWindow2_clearInterval ( IHTMLWindow2 iface,
LONG  timerID 
)
static

Definition at line 1345 of file htmlwindow.c.

1346{
1348
1349 TRACE("(%p)->(%d)\n", This, timerID);
1350
1351 return clear_task_timer(This->inner_window, TRUE, timerID);
1352}
HRESULT clear_task_timer(HTMLInnerWindow *, BOOL, DWORD) DECLSPEC_HIDDEN
Definition: task.c:201

◆ HTMLWindow2_clearTimeout()

static HRESULT WINAPI HTMLWindow2_clearTimeout ( IHTMLWindow2 iface,
LONG  timerID 
)
static

Definition at line 557 of file htmlwindow.c.

558{
560
561 TRACE("(%p)->(%d)\n", This, timerID);
562
563 return clear_task_timer(This->inner_window, FALSE, timerID);
564}
#define FALSE
Definition: types.h:117

◆ HTMLWindow2_close()

static HRESULT WINAPI HTMLWindow2_close ( IHTMLWindow2 iface)
static

Definition at line 825 of file htmlwindow.c.

826{
828 HTMLOuterWindow *window = This->outer_window;
829
830 TRACE("(%p)\n", This);
831
832 if(!window->doc_obj) {
833 FIXME("No document object\n");
834 return E_FAIL;
835 }
836
838 return S_OK;
839
840 FIXME("default action not implemented\n");
841 return E_NOTIMPL;
842}
static BOOL notify_webbrowser_close(HTMLOuterWindow *window, HTMLDocumentObj *doc)
Definition: htmlwindow.c:768

◆ HTMLWindow2_confirm()

static HRESULT WINAPI HTMLWindow2_confirm ( IHTMLWindow2 iface,
BSTR  message,
VARIANT_BOOL confirmed 
)
static

Definition at line 597 of file htmlwindow.c.

599{
601 WCHAR wszTitle[100];
602
603 TRACE("(%p)->(%s %p)\n", This, debugstr_w(message), confirmed);
604
605 if(!confirmed) return E_INVALIDARG;
606
608 sizeof(wszTitle)/sizeof(WCHAR))) {
609 WARN("Could not load message box title: %d\n", GetLastError());
610 *confirmed = VARIANT_TRUE;
611 return S_OK;
612 }
613
614 if(MessageBoxW(This->outer_window->doc_obj->hwnd, message, wszTitle,
616 *confirmed = VARIANT_TRUE;
617 else *confirmed = VARIANT_FALSE;
618
619 return S_OK;
620}
#define IDOK
Definition: winuser.h:830
#define MB_OKCANCEL
Definition: winuser.h:804
#define MB_ICONQUESTION
Definition: winuser.h:789

◆ HTMLWindow2_execScript()

static HRESULT WINAPI HTMLWindow2_execScript ( IHTMLWindow2 iface,
BSTR  scode,
BSTR  language,
VARIANT pvarRet 
)
static

Definition at line 1368 of file htmlwindow.c.

1370{
1372
1373 TRACE("(%p)->(%s %s %p)\n", This, debugstr_w(scode), debugstr_w(language), pvarRet);
1374
1375 return exec_script(This->inner_window, scode, language, pvarRet);
1376}
HRESULT exec_script(HTMLInnerWindow *, const WCHAR *, const WCHAR *, VARIANT *) DECLSPEC_HIDDEN
Definition: script.c:1245

◆ HTMLWindow2_focus()

static HRESULT WINAPI HTMLWindow2_focus ( IHTMLWindow2 iface)
static

Definition at line 1284 of file htmlwindow.c.

1285{
1287
1288 TRACE("(%p)->()\n", This);
1289
1290 if(This->outer_window->doc_obj)
1291 SetFocus(This->outer_window->doc_obj->hwnd);
1292 return S_OK;
1293}
HWND WINAPI SetFocus(_In_opt_ HWND)

◆ HTMLWindow2_get__newEnum()

static HRESULT WINAPI HTMLWindow2_get__newEnum ( IHTMLWindow2 iface,
IUnknown **  p 
)
static

Definition at line 1220 of file htmlwindow.c.

1221{
1223 FIXME("(%p)->(%p)\n", This, p);
1224 return E_NOTIMPL;
1225}
GLfloat GLfloat p
Definition: glext.h:8902

◆ HTMLWindow2_get_clientInformation()

static HRESULT WINAPI HTMLWindow2_get_clientInformation ( IHTMLWindow2 iface,
IOmNavigator **  p 
)
static

Definition at line 1325 of file htmlwindow.c.

1326{
1328 FIXME("(%p)->(%p)\n", This, p);
1329 return E_NOTIMPL;
1330}

◆ HTMLWindow2_get_closed()

static HRESULT WINAPI HTMLWindow2_get_closed ( IHTMLWindow2 iface,
VARIANT_BOOL p 
)
static

Definition at line 1295 of file htmlwindow.c.

1296{
1298 FIXME("(%p)->(%p)\n", This, p);
1299 return E_NOTIMPL;
1300}

◆ HTMLWindow2_get_defaultStatus()

static HRESULT WINAPI HTMLWindow2_get_defaultStatus ( IHTMLWindow2 iface,
BSTR p 
)
static

Definition at line 512 of file htmlwindow.c.

513{
515 FIXME("(%p)->(%p)\n", This, p);
516 return E_NOTIMPL;
517}

◆ HTMLWindow2_get_document()

static HRESULT WINAPI HTMLWindow2_get_document ( IHTMLWindow2 iface,
IHTMLDocument2 **  p 
)
static

Definition at line 1190 of file htmlwindow.c.

1191{
1193
1194 TRACE("(%p)->(%p)\n", This, p);
1195
1196 if(This->inner_window->doc) {
1197 /* FIXME: We should return a wrapper object here */
1198 *p = &This->inner_window->doc->basedoc.IHTMLDocument2_iface;
1199 IHTMLDocument2_AddRef(*p);
1200 }else {
1201 *p = NULL;
1202 }
1203
1204 return S_OK;
1205}

◆ HTMLWindow2_get_event()

static HRESULT WINAPI HTMLWindow2_get_event ( IHTMLWindow2 iface,
IHTMLEventObj **  p 
)
static

Definition at line 1207 of file htmlwindow.c.

1208{
1210 HTMLInnerWindow *window = This->inner_window;
1211
1212 TRACE("(%p)->(%p)\n", This, p);
1213
1214 if(window->event)
1215 IHTMLEventObj_AddRef(window->event);
1216 *p = window->event;
1217 return S_OK;
1218}

◆ HTMLWindow2_get_external()

static HRESULT WINAPI HTMLWindow2_get_external ( IHTMLWindow2 iface,
IDispatch **  p 
)
static

Definition at line 1449 of file htmlwindow.c.

1450{
1452
1453 TRACE("(%p)->(%p)\n", This, p);
1454
1455 *p = NULL;
1456
1457 if(!This->outer_window->doc_obj->hostui)
1458 return S_OK;
1459
1460 return IDocHostUIHandler_GetExternal(This->outer_window->doc_obj->hostui, p);
1461}

◆ HTMLWindow2_get_frames()

static HRESULT WINAPI HTMLWindow2_get_frames ( IHTMLWindow2 iface,
IHTMLFramesCollection2 **  p 
)
static

Definition at line 494 of file htmlwindow.c.

495{
497 FIXME("(%p)->(%p): semi-stub\n", This, p);
498
499 /* FIXME: Should return a separate Window object */
500 *p = (IHTMLFramesCollection2*)&This->IHTMLWindow2_iface;
501 HTMLWindow2_AddRef(iface);
502 return S_OK;
503}
static ULONG WINAPI HTMLWindow2_AddRef(IHTMLWindow2 *iface)
Definition: htmlwindow.c:161

◆ HTMLWindow2_get_history()

static HRESULT WINAPI HTMLWindow2_get_history ( IHTMLWindow2 iface,
IOmHistory **  p 
)
static

Definition at line 748 of file htmlwindow.c.

749{
751 HTMLInnerWindow *window = This->inner_window;
752
753 TRACE("(%p)->(%p)\n", This, p);
754
755 if(!window->history) {
757
758 hres = create_history(window, &window->history);
759 if(FAILED(hres))
760 return hres;
761 }
762
763 IOmHistory_AddRef(&window->history->IOmHistory_iface);
764 *p = &window->history->IOmHistory_iface;
765 return S_OK;
766}
HRESULT create_history(HTMLInnerWindow *, OmHistory **) DECLSPEC_HIDDEN
Definition: omnavigator.c:334

◆ HTMLWindow2_get_Image()

static HRESULT WINAPI HTMLWindow2_get_Image ( IHTMLWindow2 iface,
IHTMLImageElementFactory **  p 
)
static

Definition at line 711 of file htmlwindow.c.

712{
714 HTMLInnerWindow *window = This->inner_window;
715
716 TRACE("(%p)->(%p)\n", This, p);
717
718 if(!window->image_factory) {
720
722 if(FAILED(hres))
723 return hres;
724 }
725
726 *p = &window->image_factory->IHTMLImageElementFactory_iface;
727 IHTMLImageElementFactory_AddRef(*p);
728
729 return S_OK;
730}
HRESULT HTMLImageElementFactory_Create(HTMLInnerWindow *window, HTMLImageElementFactory **ret_val)
Definition: htmlimg.c:972

◆ HTMLWindow2_get_length()

static HRESULT WINAPI HTMLWindow2_get_length ( IHTMLWindow2 iface,
LONG p 
)
static

Definition at line 468 of file htmlwindow.c.

469{
471 nsIDOMWindowCollection *nscollection;
473 nsresult nsres;
474
475 TRACE("(%p)->(%p)\n", This, p);
476
477 nsres = nsIDOMWindow_GetFrames(This->outer_window->nswindow, &nscollection);
478 if(NS_FAILED(nsres)) {
479 ERR("GetFrames failed: %08x\n", nsres);
480 return E_FAIL;
481 }
482
483 nsres = nsIDOMWindowCollection_GetLength(nscollection, &length);
484 nsIDOMWindowCollection_Release(nscollection);
485 if(NS_FAILED(nsres)) {
486 ERR("GetLength failed: %08x\n", nsres);
487 return E_FAIL;
488 }
489
490 *p = length;
491 return S_OK;
492}
#define ERR(fmt,...)
Definition: debug.h:110

◆ HTMLWindow2_get_location()

static HRESULT WINAPI HTMLWindow2_get_location ( IHTMLWindow2 iface,
IHTMLLocation **  p 
)
static

Definition at line 732 of file htmlwindow.c.

733{
737
738 TRACE("(%p)->(%p)\n", This, p);
739
740 hres = get_location(This->inner_window, &location);
741 if(FAILED(hres))
742 return hres;
743
744 *p = &location->IHTMLLocation_iface;
745 return S_OK;
746}
static HRESULT get_location(HTMLInnerWindow *This, HTMLLocation **ret)
Definition: htmlwindow.c:43
#define location(file, line)
Definition: kmtest.h:18

◆ HTMLWindow2_get_name()

static HRESULT WINAPI HTMLWindow2_get_name ( IHTMLWindow2 iface,
BSTR p 
)
static

Definition at line 888 of file htmlwindow.c.

889{
891 nsAString name_str;
892 nsresult nsres;
893
894 TRACE("(%p)->(%p)\n", This, p);
895
896 nsAString_Init(&name_str, NULL);
897 nsres = nsIDOMWindow_GetName(This->outer_window->nswindow, &name_str);
898 return return_nsstr(nsres, &name_str, p);
899}
BOOL nsAString_Init(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:817
HRESULT return_nsstr(nsresult, nsAString *, BSTR *) DECLSPEC_HIDDEN
Definition: nsembed.c:841

◆ HTMLWindow2_get_navigator()

static HRESULT WINAPI HTMLWindow2_get_navigator ( IHTMLWindow2 iface,
IOmNavigator **  p 
)
static

Definition at line 861 of file htmlwindow.c.

862{
864
865 TRACE("(%p)->(%p)\n", This, p);
866
868 return *p ? S_OK : E_OUTOFMEMORY;
869}
IOmNavigator * OmNavigator_Create(void) DECLSPEC_HIDDEN
Definition: omnavigator.c:1079

◆ HTMLWindow2_get_offscreenBuffering()

static HRESULT WINAPI HTMLWindow2_get_offscreenBuffering ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1361 of file htmlwindow.c.

1362{
1364 FIXME("(%p)->(%p)\n", This, p);
1365 return E_NOTIMPL;
1366}

◆ HTMLWindow2_get_onbeforeunload()

static HRESULT WINAPI HTMLWindow2_get_onbeforeunload ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1095 of file htmlwindow.c.

1096{
1098
1099 TRACE("(%p)->(%p)\n", This, p);
1100
1102}
@ EVENTID_BEFOREUNLOAD
Definition: htmlevent.h:23
static HRESULT get_window_event(HTMLWindow *window, eventid_t eid, VARIANT *var)
Definition: htmlwindow.c:77

◆ HTMLWindow2_get_onblur()

static HRESULT WINAPI HTMLWindow2_get_onblur ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1059 of file htmlwindow.c.

1060{
1062
1063 TRACE("(%p)->(%p)\n", This, p);
1064
1066}
@ EVENTID_BLUR
Definition: htmlevent.h:24

◆ HTMLWindow2_get_onerror()

static HRESULT WINAPI HTMLWindow2_get_onerror ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1145 of file htmlwindow.c.

1146{
1148
1149 TRACE("(%p)->(%p)\n", This, p);
1150
1152}
@ EVENTID_ERROR
Definition: htmlevent.h:32

◆ HTMLWindow2_get_onfocus()

static HRESULT WINAPI HTMLWindow2_get_onfocus ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1041 of file htmlwindow.c.

1042{
1044
1045 TRACE("(%p)->(%p)\n", This, p);
1046
1048}
@ EVENTID_FOCUS
Definition: htmlevent.h:33

◆ HTMLWindow2_get_onhelp()

static HRESULT WINAPI HTMLWindow2_get_onhelp ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1127 of file htmlwindow.c.

1128{
1130
1131 TRACE("(%p)->(%p)\n", This, p);
1132
1134}
@ EVENTID_HELP
Definition: htmlevent.h:35

◆ HTMLWindow2_get_onload()

static HRESULT WINAPI HTMLWindow2_get_onload ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1077 of file htmlwindow.c.

1078{
1080
1081 TRACE("(%p)->(%p)\n", This, p);
1082
1084}
@ EVENTID_LOAD
Definition: htmlevent.h:39

◆ HTMLWindow2_get_onresize()

static HRESULT WINAPI HTMLWindow2_get_onresize ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1163 of file htmlwindow.c.

1164{
1166
1167 TRACE("(%p)->(%p)\n", This, p);
1168
1170}
@ EVENTID_RESIZE
Definition: htmlevent.h:48

◆ HTMLWindow2_get_onscroll()

static HRESULT WINAPI HTMLWindow2_get_onscroll ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1181 of file htmlwindow.c.

1182{
1184
1185 TRACE("(%p)->(%p)\n", This, p);
1186
1188}
@ EVENTID_SCROLL
Definition: htmlevent.h:49

◆ HTMLWindow2_get_onunload()

static HRESULT WINAPI HTMLWindow2_get_onunload ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 1111 of file htmlwindow.c.

1112{
1114 FIXME("(%p)->(%p)\n", This, p);
1115 return E_NOTIMPL;
1116}

◆ HTMLWindow2_get_opener()

static HRESULT WINAPI HTMLWindow2_get_opener ( IHTMLWindow2 iface,
VARIANT p 
)
static

Definition at line 851 of file htmlwindow.c.

852{
854
855 FIXME("(%p)->(%p) returning empty\n", This, p);
856
857 V_VT(p) = VT_EMPTY;
858 return S_OK;
859}

◆ HTMLWindow2_get_Option()

static HRESULT WINAPI HTMLWindow2_get_Option ( IHTMLWindow2 iface,
IHTMLOptionElementFactory **  p 
)
static

Definition at line 1263 of file htmlwindow.c.

1264{
1266 HTMLInnerWindow *window = This->inner_window;
1267
1268 TRACE("(%p)->(%p)\n", This, p);
1269
1270 if(!window->option_factory) {
1271 HRESULT hres;
1272
1274 if(FAILED(hres))
1275 return hres;
1276 }
1277
1278 *p = &window->option_factory->IHTMLOptionElementFactory_iface;
1279 IHTMLOptionElementFactory_AddRef(*p);
1280
1281 return S_OK;
1282}
HRESULT HTMLOptionElementFactory_Create(HTMLInnerWindow *window, HTMLOptionElementFactory **ret_ptr)
Definition: htmloption.c:618

◆ HTMLWindow2_get_parent()

static HRESULT WINAPI HTMLWindow2_get_parent ( IHTMLWindow2 iface,
IHTMLWindow2 **  p 
)
static

Definition at line 901 of file htmlwindow.c.

902{
904 HTMLOuterWindow *window = This->outer_window;
905
906 TRACE("(%p)->(%p)\n", This, p);
907
908 if(!window->parent)
909 return IHTMLWindow2_get_self(&This->IHTMLWindow2_iface, p);
910
911 *p = &window->parent->base.IHTMLWindow2_iface;
912 IHTMLWindow2_AddRef(*p);
913 return S_OK;
914}

◆ HTMLWindow2_get_screen()

static HRESULT WINAPI HTMLWindow2_get_screen ( IHTMLWindow2 iface,
IHTMLScreen **  p 
)
static

Definition at line 1243 of file htmlwindow.c.

1244{
1246 HTMLInnerWindow *window = This->inner_window;
1247
1248 TRACE("(%p)->(%p)\n", This, p);
1249
1250 if(!window->screen) {
1251 HRESULT hres;
1252
1253 hres = HTMLScreen_Create(&window->screen);
1254 if(FAILED(hres))
1255 return hres;
1256 }
1257
1258 *p = window->screen;
1259 IHTMLScreen_AddRef(window->screen);
1260 return S_OK;
1261}
HRESULT HTMLScreen_Create(IHTMLScreen **ret)
Definition: htmlscreen.c:234

◆ HTMLWindow2_get_self()

static HRESULT WINAPI HTMLWindow2_get_self ( IHTMLWindow2 iface,
IHTMLWindow2 **  p 
)
static

Definition at line 985 of file htmlwindow.c.

986{
988
989 TRACE("(%p)->(%p)\n", This, p);
990
991 /* FIXME: We should return kind of proxy window here. */
992 IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
993 *p = &This->IHTMLWindow2_iface;
994 return S_OK;
995}

◆ HTMLWindow2_get_status()

static HRESULT WINAPI HTMLWindow2_get_status ( IHTMLWindow2 iface,
BSTR p 
)
static

Definition at line 532 of file htmlwindow.c.

533{
535
536 TRACE("(%p)->(%p)\n", This, p);
537
538 /* See put_status */
539 *p = NULL;
540 return S_OK;
541}

◆ HTMLWindow2_get_top()

static HRESULT WINAPI HTMLWindow2_get_top ( IHTMLWindow2 iface,
IHTMLWindow2 **  p 
)
static

Definition at line 997 of file htmlwindow.c.

998{
1001
1002 TRACE("(%p)->(%p)\n", This, p);
1003
1004 get_top_window(This->outer_window, &top);
1005 *p = &top->base.IHTMLWindow2_iface;
1006 IHTMLWindow2_AddRef(*p);
1007
1008 return S_OK;
1009}
GLdouble GLdouble GLdouble GLdouble top
Definition: glext.h:10859
void get_top_window(HTMLOuterWindow *window, HTMLOuterWindow **ret)
Definition: htmlwindow.c:59

◆ HTMLWindow2_get_window()

static HRESULT WINAPI HTMLWindow2_get_window ( IHTMLWindow2 iface,
IHTMLWindow2 **  p 
)
static

Definition at line 1011 of file htmlwindow.c.

1012{
1014
1015 TRACE("(%p)->(%p)\n", This, p);
1016
1017 /* FIXME: We should return kind of proxy window here. */
1018 IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
1019 *p = &This->IHTMLWindow2_iface;
1020 return S_OK;
1021}

◆ HTMLWindow2_GetIDsOfNames()

static HRESULT WINAPI HTMLWindow2_GetIDsOfNames ( IHTMLWindow2 iface,
REFIID  riid,
LPOLESTR rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgDispId 
)
static

Definition at line 289 of file htmlwindow.c.

292{
294
295 return IDispatchEx_GetIDsOfNames(&This->IDispatchEx_iface, riid, rgszNames, cNames, lcid,
296 rgDispId);
297}

◆ HTMLWindow2_GetTypeInfo()

static HRESULT WINAPI HTMLWindow2_GetTypeInfo ( IHTMLWindow2 iface,
UINT  iTInfo,
LCID  lcid,
ITypeInfo **  ppTInfo 
)
static

Definition at line 281 of file htmlwindow.c.

283{
285
286 return IDispatchEx_GetTypeInfo(&This->IDispatchEx_iface, iTInfo, lcid, ppTInfo);
287}

◆ HTMLWindow2_GetTypeInfoCount()

static HRESULT WINAPI HTMLWindow2_GetTypeInfoCount ( IHTMLWindow2 iface,
UINT pctinfo 
)
static

Definition at line 274 of file htmlwindow.c.

275{
277
278 return IDispatchEx_GetTypeInfoCount(&This->IDispatchEx_iface, pctinfo);
279}

◆ HTMLWindow2_Invoke()

static HRESULT WINAPI HTMLWindow2_Invoke ( IHTMLWindow2 iface,
DISPID  dispIdMember,
REFIID  riid,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pDispParams,
VARIANT pVarResult,
EXCEPINFO *  pExcepInfo,
UINT puArgErr 
)
static

Definition at line 299 of file htmlwindow.c.

302{
304
305 return IDispatchEx_Invoke(&This->IDispatchEx_iface, dispIdMember, riid, lcid, wFlags,
306 pDispParams, pVarResult, pExcepInfo, puArgErr);
307}
_In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon.h:531

◆ HTMLWindow2_item()

static HRESULT WINAPI HTMLWindow2_item ( IHTMLWindow2 iface,
VARIANT pvarIndex,
VARIANT pvarResult 
)
static

Definition at line 423 of file htmlwindow.c.

424{
428
429 TRACE("(%p)->(%p %p)\n", This, pvarIndex, pvarResult);
430
431 switch(V_VT(pvarIndex)) {
432 case VT_I4: {
433 int index = V_I4(pvarIndex);
434 TRACE("Getting index %d\n", index);
435 if(index < 0)
437 hres = get_frame_by_index(This->outer_window, index, &window);
438 break;
439 }
440 case VT_UINT: {
441 unsigned int index = V_UINT(pvarIndex);
442 TRACE("Getting index %u\n", index);
443 hres = get_frame_by_index(This->outer_window, index, &window);
444 break;
445 }
446 case VT_BSTR: {
447 BSTR str = V_BSTR(pvarIndex);
448 TRACE("Getting name %s\n", wine_dbgstr_w(str));
449 hres = get_frame_by_name(This->outer_window, str, FALSE, &window);
450 break;
451 }
452 default:
453 WARN("Invalid index %s\n", debugstr_variant(pvarIndex));
454 return E_INVALIDARG;
455 }
456
457 if(FAILED(hres))
458 return hres;
459 if(!window)
461
462 IHTMLWindow2_AddRef(&window->base.IHTMLWindow2_iface);
463 V_VT(pvarResult) = VT_DISPATCH;
464 V_DISPATCH(pvarResult) = (IDispatch*)window;
465 return S_OK;
466}
@ VT_I4
Definition: compat.h:2298
@ VT_UINT
Definition: compat.h:2317
@ VT_DISPATCH
Definition: compat.h:2304
static HRESULT get_frame_by_index(HTMLOuterWindow *This, UINT32 index, HTMLOuterWindow **ret)
Definition: htmlwindow.c:309
#define wine_dbgstr_w
Definition: kernel32.h:34
#define V_I4(A)
Definition: oleauto.h:247
#define V_UINT(A)
Definition: oleauto.h:264
#define V_DISPATCH(A)
Definition: oleauto.h:239
const WCHAR * str

◆ HTMLWindow2_moveBy()

static HRESULT WINAPI HTMLWindow2_moveBy ( IHTMLWindow2 iface,
LONG  x,
LONG  y 
)
static

Definition at line 1428 of file htmlwindow.c.

1429{
1431 FIXME("(%p)->(%d %d)\n", This, x, y);
1432 return E_NOTIMPL;
1433}
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548

◆ HTMLWindow2_moveTo()

static HRESULT WINAPI HTMLWindow2_moveTo ( IHTMLWindow2 iface,
LONG  x,
LONG  y 
)
static

Definition at line 1421 of file htmlwindow.c.

1422{
1424 FIXME("(%p)->(%d %d)\n", This, x, y);
1425 return E_NOTIMPL;
1426}

◆ HTMLWindow2_navigate()

static HRESULT WINAPI HTMLWindow2_navigate ( IHTMLWindow2 iface,
BSTR  url 
)
static

Definition at line 1023 of file htmlwindow.c.

1024{
1026
1027 TRACE("(%p)->(%s)\n", This, debugstr_w(url));
1028
1029 return navigate_url(This->outer_window, url, This->outer_window->uri, BINDING_NAVIGATED);
1030}
static HRESULT navigate_url(HHInfo *info, LPCWSTR surl)
Definition: help.c:193

◆ HTMLWindow2_open()

static HRESULT WINAPI HTMLWindow2_open ( IHTMLWindow2 iface,
BSTR  url,
BSTR  name,
BSTR  features,
VARIANT_BOOL  replace,
IHTMLWindow2 **  pomWindowResult 
)
static

Definition at line 916 of file htmlwindow.c.

918{
920 HTMLOuterWindow *window = This->outer_window;
921 INewWindowManager *new_window_mgr;
922 BSTR uri_str;
923 IUri *uri;
925
926 static const WCHAR _selfW[] = {'_','s','e','l','f',0};
927
928 TRACE("(%p)->(%s %s %s %x %p)\n", This, debugstr_w(url), debugstr_w(name),
929 debugstr_w(features), replace, pomWindowResult);
930
931 if(!window->doc_obj || !window->uri_nofrag)
932 return E_UNEXPECTED;
933
934 if(name && *name == '_') {
935 if(!strcmpW(name, _selfW)) {
936 if((features && *features) || replace)
937 FIXME("Unsupported arguments for _self target\n");
938
939 hres = IHTMLWindow2_navigate(&This->IHTMLWindow2_iface, url);
940 if(FAILED(hres))
941 return hres;
942
943 if(pomWindowResult) {
944 FIXME("Returning this window for _self target\n");
945 *pomWindowResult = &This->IHTMLWindow2_iface;
946 IHTMLWindow2_AddRef(*pomWindowResult);
947 }
948
949 return S_OK;
950 }
951
952 FIXME("Unsupported name %s\n", debugstr_w(name));
953 return E_NOTIMPL;
954 }
955
956 hres = do_query_service((IUnknown*)window->doc_obj->client, &SID_SNewWindowManager, &IID_INewWindowManager,
957 (void**)&new_window_mgr);
958 if(FAILED(hres)) {
959 FIXME("No INewWindowManager\n");
960 return E_NOTIMPL;
961 }
962
963 hres = IUri_GetDisplayUri(window->uri_nofrag, &uri_str);
964 if(SUCCEEDED(hres)) {
965 hres = INewWindowManager_EvaluateNewWindow(new_window_mgr, url, name, uri_str,
966 features, !!replace, window->doc_obj->has_popup ? 0 : NWMF_FIRST, 0);
967 window->doc_obj->has_popup = TRUE;
968 SysFreeString(uri_str);
969 }
970 INewWindowManager_Release(new_window_mgr);
971 if(FAILED(hres)) {
972 *pomWindowResult = NULL;
973 return S_OK;
974 }
975
977 if(FAILED(hres))
978 return hres;
979
980 hres = navigate_new_window(window, uri, name, NULL, pomWindowResult);
981 IUri_Release(uri);
982 return hres;
983}
HRESULT create_relative_uri(HTMLOuterWindow *, const WCHAR *, IUri **) DECLSPEC_HIDDEN
Definition: persist.c:163
HRESULT navigate_new_window(HTMLOuterWindow *, IUri *, const WCHAR *, request_data_t *, IHTMLWindow2 **) DECLSPEC_HIDDEN
Definition: navigate.c:2132
HRESULT do_query_service(IUnknown *unk, REFGUID guid_service, REFIID riid, void **ppv)
Definition: main.c:148
#define strcmpW(s1, s2)
Definition: unicode.h:38
INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *doMore)
Definition: replace.c:47
#define E_UNEXPECTED
Definition: winerror.h:2456

◆ HTMLWindow2_prompt()

static HRESULT WINAPI HTMLWindow2_prompt ( IHTMLWindow2 iface,
BSTR  message,
BSTR  dststr,
VARIANT textdata 
)
static

Definition at line 692 of file htmlwindow.c.

694{
697
698 TRACE("(%p)->(%s %s %p)\n", This, debugstr_w(message), debugstr_w(dststr), textdata);
699
700 if(textdata) V_VT(textdata) = VT_NULL;
701
702 arg.message = message;
703 arg.dststr = dststr;
704 arg.textdata = textdata;
705
707 This->outer_window->doc_obj->hwnd, prompt_dlgproc, (LPARAM)&arg);
708 return S_OK;
709}
@ VT_NULL
Definition: compat.h:2296
#define ID_PROMPT_DIALOG
Definition: resource.h:28
HINSTANCE hInst
Definition: dxdiag.c:13
static INT_PTR CALLBACK prompt_dlgproc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
Definition: htmlwindow.c:629
LONG_PTR LPARAM
Definition: windef.h:208
void * arg
Definition: msvc.h:10
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
INT_PTR WINAPI DialogBoxParamW(_In_opt_ HINSTANCE, _In_ LPCWSTR, _In_opt_ HWND, _In_opt_ DLGPROC, _In_ LPARAM)

◆ HTMLWindow2_put_defaultStatus()

static HRESULT WINAPI HTMLWindow2_put_defaultStatus ( IHTMLWindow2 iface,
BSTR  v 
)
static

Definition at line 505 of file htmlwindow.c.

506{
508 FIXME("(%p)->(%s)\n", This, debugstr_w(v));
509 return E_NOTIMPL;
510}
const GLdouble * v
Definition: gl.h:2040

◆ HTMLWindow2_put_name()

static HRESULT WINAPI HTMLWindow2_put_name ( IHTMLWindow2 iface,
BSTR  v 
)
static

Definition at line 871 of file htmlwindow.c.

872{
874 nsAString name_str;
875 nsresult nsres;
876
877 TRACE("(%p)->(%s)\n", This, debugstr_w(v));
878
879 nsAString_InitDepend(&name_str, v);
880 nsres = nsIDOMWindow_SetName(This->outer_window->nswindow, &name_str);
881 nsAString_Finish(&name_str);
882 if(NS_FAILED(nsres))
883 ERR("SetName failed: %08x\n", nsres);
884
885 return S_OK;
886}

◆ HTMLWindow2_put_offscreenBuffering()

static HRESULT WINAPI HTMLWindow2_put_offscreenBuffering ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1354 of file htmlwindow.c.

1355{
1357 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
1358 return E_NOTIMPL;
1359}

◆ HTMLWindow2_put_onbeforeunload()

static HRESULT WINAPI HTMLWindow2_put_onbeforeunload ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1086 of file htmlwindow.c.

1087{
1089
1090 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
1091
1093}
static HRESULT set_window_event(HTMLWindow *window, eventid_t eid, VARIANT *var)
Definition: htmlwindow.c:67

◆ HTMLWindow2_put_onblur()

static HRESULT WINAPI HTMLWindow2_put_onblur ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1050 of file htmlwindow.c.

1051{
1053
1054 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
1055
1057}

◆ HTMLWindow2_put_onerror()

static HRESULT WINAPI HTMLWindow2_put_onerror ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1136 of file htmlwindow.c.

1137{
1139
1140 FIXME("(%p)->(%s) semi-stub\n", This, debugstr_variant(&v));
1141
1143}

◆ HTMLWindow2_put_onfocus()

static HRESULT WINAPI HTMLWindow2_put_onfocus ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1032 of file htmlwindow.c.

1033{
1035
1036 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
1037
1039}

◆ HTMLWindow2_put_onhelp()

static HRESULT WINAPI HTMLWindow2_put_onhelp ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1118 of file htmlwindow.c.

1119{
1121
1122 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
1123
1125}

◆ HTMLWindow2_put_onload()

static HRESULT WINAPI HTMLWindow2_put_onload ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1068 of file htmlwindow.c.

1069{
1071
1072 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
1073
1075}

◆ HTMLWindow2_put_onresize()

static HRESULT WINAPI HTMLWindow2_put_onresize ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1154 of file htmlwindow.c.

1155{
1157
1158 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
1159
1161}

◆ HTMLWindow2_put_onscroll()

static HRESULT WINAPI HTMLWindow2_put_onscroll ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1172 of file htmlwindow.c.

1173{
1175
1176 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
1177
1179}

◆ HTMLWindow2_put_onunload()

static HRESULT WINAPI HTMLWindow2_put_onunload ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 1104 of file htmlwindow.c.

1105{
1107 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
1108 return E_NOTIMPL;
1109}

◆ HTMLWindow2_put_opener()

static HRESULT WINAPI HTMLWindow2_put_opener ( IHTMLWindow2 iface,
VARIANT  v 
)
static

Definition at line 844 of file htmlwindow.c.

845{
847 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
848 return E_NOTIMPL;
849}

◆ HTMLWindow2_put_status()

static HRESULT WINAPI HTMLWindow2_put_status ( IHTMLWindow2 iface,
BSTR  v 
)
static

Definition at line 519 of file htmlwindow.c.

520{
522
523 WARN("(%p)->(%s)\n", This, debugstr_w(v));
524
525 /*
526 * FIXME: Since IE7, setting status is blocked, but still possible in certain circumstances.
527 * Ignoring the call should be enough for us.
528 */
529 return S_OK;
530}

◆ HTMLWindow2_QueryInterface()

static HRESULT WINAPI HTMLWindow2_QueryInterface ( IHTMLWindow2 iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 116 of file htmlwindow.c.

117{
119
120 TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv);
121
123 *ppv = &This->IHTMLWindow2_iface;
124 }else if(IsEqualGUID(&IID_IDispatch, riid)) {
125 *ppv = &This->IHTMLWindow2_iface;
126 }else if(IsEqualGUID(&IID_IDispatchEx, riid)) {
127 *ppv = &This->IDispatchEx_iface;
128 }else if(IsEqualGUID(&IID_IHTMLFramesCollection2, riid)) {
129 *ppv = &This->IHTMLWindow2_iface;
130 }else if(IsEqualGUID(&IID_IHTMLWindow2, riid)) {
131 *ppv = &This->IHTMLWindow2_iface;
132 }else if(IsEqualGUID(&IID_IHTMLWindow3, riid)) {
133 *ppv = &This->IHTMLWindow3_iface;
134 }else if(IsEqualGUID(&IID_IHTMLWindow4, riid)) {
135 *ppv = &This->IHTMLWindow4_iface;
136 }else if(IsEqualGUID(&IID_IHTMLWindow5, riid)) {
137 *ppv = &This->IHTMLWindow5_iface;
138 }else if(IsEqualGUID(&IID_IHTMLWindow6, riid)) {
139 *ppv = &This->IHTMLWindow6_iface;
140 }else if(IsEqualGUID(&IID_IHTMLPrivateWindow, riid)) {
141 *ppv = &This->IHTMLPrivateWindow_iface;
142 }else if(IsEqualGUID(&IID_IServiceProvider, riid)) {
143 *ppv = &This->IServiceProvider_iface;
144 }else if(IsEqualGUID(&IID_ITravelLogClient, riid)) {
145 *ppv = &This->ITravelLogClient_iface;
146 }else if(IsEqualGUID(&IID_IObjectIdentity, riid)) {
147 *ppv = &This->IObjectIdentity_iface;
148 }else if(dispex_query_interface(&This->inner_window->event_target.dispex, riid, ppv)) {
149 assert(!*ppv);
150 return E_NOINTERFACE;
151 }else {
152 *ppv = NULL;
153 WARN("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv);
154 return E_NOINTERFACE;
155 }
156
157 IUnknown_AddRef((IUnknown*)*ppv);
158 return S_OK;
159}
const GUID IID_IUnknown
const char * debugstr_mshtml_guid(const GUID *iid)
Definition: main.c:542
BOOL dispex_query_interface(DispatchEx *This, REFIID riid, void **ppv)
Definition: dispex.c:1656
const GUID IID_IDispatch
#define IsEqualGUID(rguid1, rguid2)
Definition: guiddef.h:147
#define E_NOINTERFACE
Definition: winerror.h:2364

◆ HTMLWindow2_Release()

static ULONG WINAPI HTMLWindow2_Release ( IHTMLWindow2 iface)
static

Definition at line 257 of file htmlwindow.c.

258{
261
262 TRACE("(%p) ref=%d\n", This, ref);
263
264 if(!ref) {
266 release_outer_window(This->outer_window);
267 else
268 release_inner_window(This->inner_window);
269 }
270
271 return ref;
272}
#define InterlockedDecrement
Definition: armddk.h:52
static BOOL is_outer_window(HTMLWindow *window)
Definition: htmlwindow.c:25
static void release_outer_window(HTMLOuterWindow *This)
Definition: htmlwindow.c:171
static void release_inner_window(HTMLInnerWindow *This)
Definition: htmlwindow.c:201

◆ HTMLWindow2_resizeBy()

static HRESULT WINAPI HTMLWindow2_resizeBy ( IHTMLWindow2 iface,
LONG  x,
LONG  y 
)
static

Definition at line 1442 of file htmlwindow.c.

1443{
1445 FIXME("(%p)->(%d %d)\n", This, x, y);
1446 return E_NOTIMPL;
1447}

◆ HTMLWindow2_resizeTo()

static HRESULT WINAPI HTMLWindow2_resizeTo ( IHTMLWindow2 iface,
LONG  x,
LONG  y 
)
static

Definition at line 1435 of file htmlwindow.c.

1436{
1438 FIXME("(%p)->(%d %d)\n", This, x, y);
1439 return E_NOTIMPL;
1440}

◆ HTMLWindow2_scroll()

static HRESULT WINAPI HTMLWindow2_scroll ( IHTMLWindow2 iface,
LONG  x,
LONG  y 
)
static

Definition at line 1309 of file htmlwindow.c.

1310{
1312 nsresult nsres;
1313
1314 TRACE("(%p)->(%d %d)\n", This, x, y);
1315
1316 nsres = nsIDOMWindow_Scroll(This->outer_window->nswindow, x, y);
1317 if(NS_FAILED(nsres)) {
1318 ERR("ScrollBy failed: %08x\n", nsres);
1319 return E_FAIL;
1320 }
1321
1322 return S_OK;
1323}

◆ HTMLWindow2_scrollBy()

static HRESULT WINAPI HTMLWindow2_scrollBy ( IHTMLWindow2 iface,
LONG  x,
LONG  y 
)
static

Definition at line 1393 of file htmlwindow.c.

1394{
1396 nsresult nsres;
1397
1398 TRACE("(%p)->(%d %d)\n", This, x, y);
1399
1400 nsres = nsIDOMWindow_ScrollBy(This->outer_window->nswindow, x, y);
1401 if(NS_FAILED(nsres))
1402 ERR("ScrollBy failed: %08x\n", nsres);
1403
1404 return S_OK;
1405}

◆ HTMLWindow2_scrollTo()

static HRESULT WINAPI HTMLWindow2_scrollTo ( IHTMLWindow2 iface,
LONG  x,
LONG  y 
)
static

Definition at line 1407 of file htmlwindow.c.

1408{
1410 nsresult nsres;
1411
1412 TRACE("(%p)->(%d %d)\n", This, x, y);
1413
1414 nsres = nsIDOMWindow_ScrollTo(This->outer_window->nswindow, x, y);
1415 if(NS_FAILED(nsres))
1416 ERR("ScrollTo failed: %08x\n", nsres);
1417
1418 return S_OK;
1419}

◆ HTMLWindow2_setInterval()

static HRESULT WINAPI HTMLWindow2_setInterval ( IHTMLWindow2 iface,
BSTR  expression,
LONG  msec,
VARIANT language,
LONG timerID 
)
static

Definition at line 1332 of file htmlwindow.c.

1334{
1336 VARIANT expr;
1337
1338 TRACE("(%p)->(%s %d %p %p)\n", This, debugstr_w(expression), msec, language, timerID);
1339
1340 V_VT(&expr) = VT_BSTR;
1341 V_BSTR(&expr) = expression;
1342 return IHTMLWindow3_setInterval(&This->IHTMLWindow3_iface, &expr, msec, language, timerID);
1343}
Definition: query.h:87

◆ HTMLWindow2_setTimeout()

static HRESULT WINAPI HTMLWindow2_setTimeout ( IHTMLWindow2 iface,
BSTR  expression,
LONG  msec,
VARIANT language,
LONG timerID 
)
static

Definition at line 543 of file htmlwindow.c.

545{
547 VARIANT expr_var;
548
549 TRACE("(%p)->(%s %d %p %p)\n", This, debugstr_w(expression), msec, language, timerID);
550
551 V_VT(&expr_var) = VT_BSTR;
552 V_BSTR(&expr_var) = expression;
553
554 return IHTMLWindow3_setTimeout(&This->IHTMLWindow3_iface, &expr_var, msec, language, timerID);
555}

◆ HTMLWindow2_showHelp()

static HRESULT WINAPI HTMLWindow2_showHelp ( IHTMLWindow2 iface,
BSTR  helpURL,
VARIANT  helpArg,
BSTR  features 
)
static

Definition at line 1235 of file htmlwindow.c.

1237{
1239 FIXME("(%p)->(%s %s %s)\n", This, debugstr_w(helpURL), debugstr_variant(&helpArg), debugstr_w(features));
1240 return E_NOTIMPL;
1241}

◆ HTMLWindow2_showModalDialog()

static HRESULT WINAPI HTMLWindow2_showModalDialog ( IHTMLWindow2 iface,
BSTR  dialog,
VARIANT varArgIn,
VARIANT varOptions,
VARIANT varArgOut 
)
static

Definition at line 1227 of file htmlwindow.c.

1229{
1231 FIXME("(%p)->(%s %p %p %p)\n", This, debugstr_w(dialog), varArgIn, varOptions, varArgOut);
1232 return E_NOTIMPL;
1233}
static HWND dialog
Definition: gui.c:33

◆ HTMLWindow2_toString()

static HRESULT WINAPI HTMLWindow2_toString ( IHTMLWindow2 iface,
BSTR String 
)
static

Definition at line 1378 of file htmlwindow.c.

1379{
1381
1382 static const WCHAR objectW[] = {'[','o','b','j','e','c','t',']',0};
1383
1384 TRACE("(%p)->(%p)\n", This, String);
1385
1386 if(!String)
1387 return E_INVALIDARG;
1388
1390 return *String ? S_OK : E_OUTOFMEMORY;
1391}
static const WCHAR objectW[]
Definition: engine.c:37
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2433

◆ HTMLWindow3_AddRef()

static ULONG WINAPI HTMLWindow3_AddRef ( IHTMLWindow3 *  iface)
static

Definition at line 1555 of file htmlwindow.c.

1556{
1558
1559 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
1560}
static HTMLWindow * impl_from_IHTMLWindow3(IHTMLWindow3 *iface)
Definition: htmlwindow.c:1543

◆ HTMLWindow3_attachEvent()

static HRESULT WINAPI HTMLWindow3_attachEvent ( IHTMLWindow3 *  iface,
BSTR  event,
IDispatch pDisp,
VARIANT_BOOL pfResult 
)
static

Definition at line 1636 of file htmlwindow.c.

1637{
1639 HTMLInnerWindow *window = This->inner_window;
1640
1641 TRACE("(%p)->(%s %p %p)\n", This, debugstr_w(event), pDisp, pfResult);
1642
1643 if(!window->doc) {
1644 FIXME("No document\n");
1645 return E_FAIL;
1646 }
1647
1648 return attach_event(&window->event_target, event, pDisp, pfResult);
1649}
struct _cl_event * event
Definition: glext.h:7739
HRESULT attach_event(EventTarget *event_target, BSTR name, IDispatch *disp, VARIANT_BOOL *res)
Definition: htmlevent.c:1469

◆ HTMLWindow3_detachEvent()

static HRESULT WINAPI HTMLWindow3_detachEvent ( IHTMLWindow3 *  iface,
BSTR  event,
IDispatch pDisp 
)
static

Definition at line 1651 of file htmlwindow.c.

1652{
1654 HTMLInnerWindow *window = This->inner_window;
1655
1656 TRACE("(%p)->()\n", This);
1657
1658 if(!window->doc) {
1659 FIXME("No document\n");
1660 return E_FAIL;
1661 }
1662
1663 return detach_event(&window->event_target, event, pDisp);
1664}
HRESULT detach_event(EventTarget *event_target, BSTR name, IDispatch *disp)
Definition: htmlevent.c:1504

◆ HTMLWindow3_get_clipboardData()

static HRESULT WINAPI HTMLWindow3_get_clipboardData ( IHTMLWindow3 *  iface,
IHTMLDataTransfer **  p 
)
static

Definition at line 1751 of file htmlwindow.c.

1752{
1754 FIXME("(%p)->(%p)\n", This, p);
1755 return E_NOTIMPL;
1756}

◆ HTMLWindow3_get_onafterprint()

static HRESULT WINAPI HTMLWindow3_get_onafterprint ( IHTMLWindow3 *  iface,
VARIANT p 
)
static

Definition at line 1744 of file htmlwindow.c.

1745{
1747 FIXME("(%p)->(%p)\n", This, p);
1748 return E_NOTIMPL;
1749}

◆ HTMLWindow3_get_onbeforeprint()

static HRESULT WINAPI HTMLWindow3_get_onbeforeprint ( IHTMLWindow3 *  iface,
VARIANT p 
)
static

Definition at line 1730 of file htmlwindow.c.

1731{
1733 FIXME("(%p)->(%p)\n", This, p);
1734 return E_NOTIMPL;
1735}

◆ HTMLWindow3_get_screenLeft()

static HRESULT WINAPI HTMLWindow3_get_screenLeft ( IHTMLWindow3 *  iface,
LONG p 
)
static

Definition at line 1604 of file htmlwindow.c.

1605{
1607 nsresult nsres;
1608
1609 TRACE("(%p)->(%p)\n", This, p);
1610
1611 nsres = nsIDOMWindow_GetScreenX(This->outer_window->nswindow, p);
1612 if(NS_FAILED(nsres)) {
1613 ERR("GetScreenX failed: %08x\n", nsres);
1614 return E_FAIL;
1615 }
1616
1617 return S_OK;
1618}

◆ HTMLWindow3_get_screenTop()

static HRESULT WINAPI HTMLWindow3_get_screenTop ( IHTMLWindow3 *  iface,
LONG p 
)
static

Definition at line 1620 of file htmlwindow.c.

1621{
1623 nsresult nsres;
1624
1625 TRACE("(%p)->(%p)\n", This, p);
1626
1627 nsres = nsIDOMWindow_GetScreenY(This->outer_window->nswindow, p);
1628 if(NS_FAILED(nsres)) {
1629 ERR("GetScreenY failed: %08x\n", nsres);
1630 return E_FAIL;
1631 }
1632
1633 return S_OK;
1634}

◆ HTMLWindow3_GetIDsOfNames()

static HRESULT WINAPI HTMLWindow3_GetIDsOfNames ( IHTMLWindow3 *  iface,
REFIID  riid,
LPOLESTR rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgDispId 
)
static

Definition at line 1584 of file htmlwindow.c.

1587{
1589
1590 return IDispatchEx_GetIDsOfNames(&This->IDispatchEx_iface, riid, rgszNames, cNames, lcid,
1591 rgDispId);
1592}

◆ HTMLWindow3_GetTypeInfo()

static HRESULT WINAPI HTMLWindow3_GetTypeInfo ( IHTMLWindow3 *  iface,
UINT  iTInfo,
LCID  lcid,
ITypeInfo **  ppTInfo 
)
static

Definition at line 1576 of file htmlwindow.c.

1578{
1580
1581 return IDispatchEx_GetTypeInfo(&This->IDispatchEx_iface, iTInfo, lcid, ppTInfo);
1582}

◆ HTMLWindow3_GetTypeInfoCount()

static HRESULT WINAPI HTMLWindow3_GetTypeInfoCount ( IHTMLWindow3 *  iface,
UINT pctinfo 
)
static

Definition at line 1569 of file htmlwindow.c.

1570{
1572
1573 return IDispatchEx_GetTypeInfoCount(&This->IDispatchEx_iface, pctinfo);
1574}

◆ HTMLWindow3_Invoke()

static HRESULT WINAPI HTMLWindow3_Invoke ( IHTMLWindow3 *  iface,
DISPID  dispIdMember,
REFIID  riid,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pDispParams,
VARIANT pVarResult,
EXCEPINFO *  pExcepInfo,
UINT puArgErr 
)
static

Definition at line 1594 of file htmlwindow.c.

1597{
1599
1600 return IDispatchEx_Invoke(&This->IDispatchEx_iface, dispIdMember, riid, lcid, wFlags,
1601 pDispParams, pVarResult, pExcepInfo, puArgErr);
1602}

◆ HTMLWindow3_print()

static HRESULT WINAPI HTMLWindow3_print ( IHTMLWindow3 *  iface)
static

Definition at line 1716 of file htmlwindow.c.

1717{
1719 FIXME("(%p)\n", This);
1720 return E_NOTIMPL;
1721}

◆ HTMLWindow3_put_onafterprint()

static HRESULT WINAPI HTMLWindow3_put_onafterprint ( IHTMLWindow3 *  iface,
VARIANT  v 
)
static

Definition at line 1737 of file htmlwindow.c.

1738{
1740 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
1741 return E_NOTIMPL;
1742}

◆ HTMLWindow3_put_onbeforeprint()

static HRESULT WINAPI HTMLWindow3_put_onbeforeprint ( IHTMLWindow3 *  iface,
VARIANT  v 
)
static

Definition at line 1723 of file htmlwindow.c.

1724{
1726 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
1727 return E_NOTIMPL;
1728}

◆ HTMLWindow3_QueryInterface()

static HRESULT WINAPI HTMLWindow3_QueryInterface ( IHTMLWindow3 *  iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 1548 of file htmlwindow.c.

1549{
1551
1552 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
1553}

◆ HTMLWindow3_Release()

static ULONG WINAPI HTMLWindow3_Release ( IHTMLWindow3 *  iface)
static

Definition at line 1562 of file htmlwindow.c.

1563{
1565
1566 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
1567}

◆ HTMLWindow3_setInterval()

static HRESULT WINAPI HTMLWindow3_setInterval ( IHTMLWindow3 *  iface,
VARIANT expression,
LONG  msec,
VARIANT language,
LONG timerID 
)
static

Definition at line 1706 of file htmlwindow.c.

1708{
1710
1711 TRACE("(%p)->(%p %d %p %p)\n", This, expression, msec, language, timerID);
1712
1713 return window_set_timer(This->inner_window, expression, msec, language, TRUE, timerID);
1714}
static HRESULT window_set_timer(HTMLInnerWindow *This, VARIANT *expr, LONG msec, VARIANT *language, BOOL interval, LONG *timer_id)
Definition: htmlwindow.c:1666

◆ HTMLWindow3_setTimeout()

static HRESULT WINAPI HTMLWindow3_setTimeout ( IHTMLWindow3 *  iface,
VARIANT expression,
LONG  msec,
VARIANT language,
LONG timerID 
)
static

Definition at line 1696 of file htmlwindow.c.

1698{
1700
1701 TRACE("(%p)->(%s %d %s %p)\n", This, debugstr_variant(expression), msec, debugstr_variant(language), timerID);
1702
1703 return window_set_timer(This->inner_window, expression, msec, language, FALSE, timerID);
1704}

◆ HTMLWindow3_showModelessDialog()

static HRESULT WINAPI HTMLWindow3_showModelessDialog ( IHTMLWindow3 *  iface,
BSTR  url,
VARIANT varArgIn,
VARIANT options,
IHTMLWindow2 **  pDialog 
)
static

Definition at line 1758 of file htmlwindow.c.

1760{
1762 FIXME("(%p)->(%s %p %p %p)\n", This, debugstr_w(url), varArgIn, options, pDialog);
1763 return E_NOTIMPL;
1764}

◆ HTMLWindow4_AddRef()

static ULONG WINAPI HTMLWindow4_AddRef ( IHTMLWindow4 *  iface)
static

Definition at line 1801 of file htmlwindow.c.

1802{
1804
1805 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
1806}
static HTMLWindow * impl_from_IHTMLWindow4(IHTMLWindow4 *iface)
Definition: htmlwindow.c:1789

◆ HTMLWindow4_createPopup()

static HRESULT WINAPI HTMLWindow4_createPopup ( IHTMLWindow4 *  iface,
VARIANT varArgIn,
IDispatch **  ppPopup 
)
static

Definition at line 1850 of file htmlwindow.c.

1852{
1854 FIXME("(%p)->(%p %p)\n", This, varArgIn, ppPopup);
1855 return E_NOTIMPL;
1856}

◆ HTMLWindow4_get_frameElement()

static HRESULT WINAPI HTMLWindow4_get_frameElement ( IHTMLWindow4 *  iface,
IHTMLFrameBase **  p 
)
static

Definition at line 1858 of file htmlwindow.c.

1859{
1861 TRACE("(%p)->(%p)\n", This, p);
1862
1863 if(This->outer_window->frame_element) {
1864 *p = &This->outer_window->frame_element->IHTMLFrameBase_iface;
1865 IHTMLFrameBase_AddRef(*p);
1866 }else
1867 *p = NULL;
1868
1869 return S_OK;
1870}

◆ HTMLWindow4_GetIDsOfNames()

static HRESULT WINAPI HTMLWindow4_GetIDsOfNames ( IHTMLWindow4 *  iface,
REFIID  riid,
LPOLESTR rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgDispId 
)
static

Definition at line 1830 of file htmlwindow.c.

1833{
1835
1836 return IDispatchEx_GetIDsOfNames(&This->IDispatchEx_iface, riid, rgszNames, cNames, lcid,
1837 rgDispId);
1838}

◆ HTMLWindow4_GetTypeInfo()

static HRESULT WINAPI HTMLWindow4_GetTypeInfo ( IHTMLWindow4 *  iface,
UINT  iTInfo,
LCID  lcid,
ITypeInfo **  ppTInfo 
)
static

Definition at line 1822 of file htmlwindow.c.

1824{
1826
1827 return IDispatchEx_GetTypeInfo(&This->IDispatchEx_iface, iTInfo, lcid, ppTInfo);
1828}

◆ HTMLWindow4_GetTypeInfoCount()

static HRESULT WINAPI HTMLWindow4_GetTypeInfoCount ( IHTMLWindow4 *  iface,
UINT pctinfo 
)
static

Definition at line 1815 of file htmlwindow.c.

1816{
1818
1819 return IDispatchEx_GetTypeInfoCount(&This->IDispatchEx_iface, pctinfo);
1820}

◆ HTMLWindow4_Invoke()

static HRESULT WINAPI HTMLWindow4_Invoke ( IHTMLWindow4 *  iface,
DISPID  dispIdMember,
REFIID  riid,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pDispParams,
VARIANT pVarResult,
EXCEPINFO *  pExcepInfo,
UINT puArgErr 
)
static

Definition at line 1840 of file htmlwindow.c.

1843{
1845
1846 return IDispatchEx_Invoke(&This->IDispatchEx_iface, dispIdMember, riid, lcid, wFlags,
1847 pDispParams, pVarResult, pExcepInfo, puArgErr);
1848}

◆ HTMLWindow4_QueryInterface()

static HRESULT WINAPI HTMLWindow4_QueryInterface ( IHTMLWindow4 *  iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 1794 of file htmlwindow.c.

1795{
1797
1798 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
1799}

◆ HTMLWindow4_Release()

static ULONG WINAPI HTMLWindow4_Release ( IHTMLWindow4 *  iface)
static

Definition at line 1808 of file htmlwindow.c.

1809{
1811
1812 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
1813}

◆ HTMLWindow5_AddRef()

static ULONG WINAPI HTMLWindow5_AddRef ( IHTMLWindow5 *  iface)
static

Definition at line 1896 of file htmlwindow.c.

1897{
1899
1900 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
1901}
static HTMLWindow * impl_from_IHTMLWindow5(IHTMLWindow5 *iface)
Definition: htmlwindow.c:1884

◆ HTMLWindow5_get_XMLHttpRequest()

static HRESULT WINAPI HTMLWindow5_get_XMLHttpRequest ( IHTMLWindow5 *  iface,
VARIANT p 
)
static

Definition at line 1951 of file htmlwindow.c.

1952{
1954 HTMLInnerWindow *window = This->inner_window;
1955
1956 TRACE("(%p)->(%p)\n", This, p);
1957
1958 if(!window->xhr_factory) {
1959 HRESULT hres;
1960
1962 if(FAILED(hres)) {
1963 return hres;
1964 }
1965 }
1966
1967 V_VT(p) = VT_DISPATCH;
1968 V_DISPATCH(p) = (IDispatch*)&window->xhr_factory->IHTMLXMLHttpRequestFactory_iface;
1969 IDispatch_AddRef(V_DISPATCH(p));
1970
1971 return S_OK;
1972}
HRESULT HTMLXMLHttpRequestFactory_Create(HTMLInnerWindow *, HTMLXMLHttpRequestFactory **) DECLSPEC_HIDDEN

◆ HTMLWindow5_GetIDsOfNames()

static HRESULT WINAPI HTMLWindow5_GetIDsOfNames ( IHTMLWindow5 *  iface,
REFIID  riid,
LPOLESTR rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgDispId 
)
static

Definition at line 1925 of file htmlwindow.c.

1927{
1929
1930 return IDispatchEx_GetIDsOfNames(&This->IDispatchEx_iface, riid, rgszNames, cNames, lcid,
1931 rgDispId);
1932}

◆ HTMLWindow5_GetTypeInfo()

static HRESULT WINAPI HTMLWindow5_GetTypeInfo ( IHTMLWindow5 *  iface,
UINT  iTInfo,
LCID  lcid,
ITypeInfo **  ppTInfo 
)
static

Definition at line 1917 of file htmlwindow.c.

1919{
1921
1922 return IDispatchEx_GetTypeInfo(&This->IDispatchEx_iface, iTInfo, lcid, ppTInfo);
1923}

◆ HTMLWindow5_GetTypeInfoCount()

static HRESULT WINAPI HTMLWindow5_GetTypeInfoCount ( IHTMLWindow5 *  iface,
UINT pctinfo 
)
static

Definition at line 1910 of file htmlwindow.c.

1911{
1913
1914 return IDispatchEx_GetTypeInfoCount(&This->IDispatchEx_iface, pctinfo);
1915}

◆ HTMLWindow5_Invoke()

static HRESULT WINAPI HTMLWindow5_Invoke ( IHTMLWindow5 *  iface,
DISPID  dispIdMember,
REFIID  riid,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pDispParams,
VARIANT pVarResult,
EXCEPINFO *  pExcepInfo,
UINT puArgErr 
)
static

Definition at line 1934 of file htmlwindow.c.

1937{
1939
1940 return IDispatchEx_Invoke(&This->IDispatchEx_iface, dispIdMember, riid, lcid, wFlags,
1941 pDispParams, pVarResult, pExcepInfo, puArgErr);
1942}

◆ HTMLWindow5_put_XMLHttpRequest()

static HRESULT WINAPI HTMLWindow5_put_XMLHttpRequest ( IHTMLWindow5 *  iface,
VARIANT  v 
)
static

Definition at line 1944 of file htmlwindow.c.

1945{
1947 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
1948 return E_NOTIMPL;
1949}

◆ HTMLWindow5_QueryInterface()

static HRESULT WINAPI HTMLWindow5_QueryInterface ( IHTMLWindow5 *  iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 1889 of file htmlwindow.c.

1890{
1892
1893 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
1894}

◆ HTMLWindow5_Release()

static ULONG WINAPI HTMLWindow5_Release ( IHTMLWindow5 *  iface)
static

Definition at line 1903 of file htmlwindow.c.

1904{
1906
1907 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
1908}

◆ HTMLWindow6_AddRef()

static ULONG WINAPI HTMLWindow6_AddRef ( IHTMLWindow6 *  iface)
static

Definition at line 1998 of file htmlwindow.c.

1999{
2001
2002 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
2003}
static HTMLWindow * impl_from_IHTMLWindow6(IHTMLWindow6 *iface)
Definition: htmlwindow.c:1986

◆ HTMLWindow6_get_localStorage()

static HRESULT WINAPI HTMLWindow6_get_localStorage ( IHTMLWindow6 *  iface,
IHTMLStorage **  p 
)
static

Definition at line 2080 of file htmlwindow.c.

2081{
2083 FIXME("(%p)->(%p)\n", This, p);
2084 return E_NOTIMPL;
2085}

◆ HTMLWindow6_get_maxConnectionsPerServer()

static HRESULT WINAPI HTMLWindow6_get_maxConnectionsPerServer ( IHTMLWindow6 *  iface,
LONG p 
)
static

Definition at line 2101 of file htmlwindow.c.

2102{
2104 FIXME("(%p)->(%p)\n", This, p);
2105 return E_NOTIMPL;
2106}

◆ HTMLWindow6_get_onhashchange()

static HRESULT WINAPI HTMLWindow6_get_onhashchange ( IHTMLWindow6 *  iface,
VARIANT p 
)
static

Definition at line 2094 of file htmlwindow.c.

2095{
2097 FIXME("(%p)->(%p)\n", This, p);
2098 return E_NOTIMPL;
2099}

◆ HTMLWindow6_get_onmessage()

static HRESULT WINAPI HTMLWindow6_get_onmessage ( IHTMLWindow6 *  iface,
VARIANT p 
)
static

Definition at line 2129 of file htmlwindow.c.

2130{
2132 FIXME("(%p)->(%p)\n", This, p);
2133 return E_NOTIMPL;
2134}

◆ HTMLWindow6_get_sessionStorage()

static HRESULT WINAPI HTMLWindow6_get_sessionStorage ( IHTMLWindow6 *  iface,
IHTMLStorage **  p 
)
static

Definition at line 2061 of file htmlwindow.c.

2062{
2064
2065 FIXME("(%p)->(%p)\n", This, p);
2066
2067 if(!This->inner_window->session_storage) {
2068 HRESULT hres;
2069
2070 hres = create_storage(&This->inner_window->session_storage);
2071 if(FAILED(hres))
2072 return hres;
2073 }
2074
2075 IHTMLStorage_AddRef(This->inner_window->session_storage);
2076 *p = This->inner_window->session_storage;
2077 return S_OK;
2078}
static HGLOBAL create_storage(void)
Definition: clipboard.c:1289

◆ HTMLWindow6_get_XDomainRequest()

static HRESULT WINAPI HTMLWindow6_get_XDomainRequest ( IHTMLWindow6 *  iface,
VARIANT p 
)
static

Definition at line 2054 of file htmlwindow.c.

2055{
2057 FIXME("(%p)->(%p)\n", This, p);
2058 return E_NOTIMPL;
2059}

◆ HTMLWindow6_GetIDsOfNames()

static HRESULT WINAPI HTMLWindow6_GetIDsOfNames ( IHTMLWindow6 *  iface,
REFIID  riid,
LPOLESTR rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgDispId 
)
static

Definition at line 2027 of file htmlwindow.c.

2030{
2032
2033 return IDispatchEx_GetIDsOfNames(&This->IDispatchEx_iface, riid, rgszNames, cNames, lcid,
2034 rgDispId);
2035}

◆ HTMLWindow6_GetTypeInfo()

static HRESULT WINAPI HTMLWindow6_GetTypeInfo ( IHTMLWindow6 *  iface,
UINT  iTInfo,
LCID  lcid,
ITypeInfo **  ppTInfo 
)
static

Definition at line 2019 of file htmlwindow.c.

2021{
2023
2024 return IDispatchEx_GetTypeInfo(&This->IDispatchEx_iface, iTInfo, lcid, ppTInfo);
2025}

◆ HTMLWindow6_GetTypeInfoCount()

static HRESULT WINAPI HTMLWindow6_GetTypeInfoCount ( IHTMLWindow6 *  iface,
UINT pctinfo 
)
static

Definition at line 2012 of file htmlwindow.c.

2013{
2015
2016 return IDispatchEx_GetTypeInfoCount(&This->IDispatchEx_iface, pctinfo);
2017}

◆ HTMLWindow6_Invoke()

static HRESULT WINAPI HTMLWindow6_Invoke ( IHTMLWindow6 *  iface,
DISPID  dispIdMember,
REFIID  riid,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pDispParams,
VARIANT pVarResult,
EXCEPINFO *  pExcepInfo,
UINT puArgErr 
)
static

Definition at line 2037 of file htmlwindow.c.

2040{
2042
2043 return IDispatchEx_Invoke(&This->IDispatchEx_iface, dispIdMember, riid, lcid, wFlags,
2044 pDispParams, pVarResult, pExcepInfo, puArgErr);
2045}

◆ HTMLWindow6_msWriteProfilerMark()

static HRESULT WINAPI HTMLWindow6_msWriteProfilerMark ( IHTMLWindow6 *  iface,
BSTR  bstrProfilerMark 
)
static

Definition at line 2136 of file htmlwindow.c.

2137{
2139 FIXME("(%p)->(%s)\n", This, debugstr_w(bstrProfilerMark));
2140 return E_NOTIMPL;
2141}

◆ HTMLWindow6_postMessage()

static HRESULT WINAPI HTMLWindow6_postMessage ( IHTMLWindow6 *  iface,
BSTR  msg,
VARIANT  targetOrigin 
)
static

Definition at line 2108 of file htmlwindow.c.

2109{
2111 FIXME("(%p)->(%s %s)\n", This, debugstr_w(msg), debugstr_variant(&targetOrigin));
2112 return E_NOTIMPL;
2113}

◆ HTMLWindow6_put_onhashchange()

static HRESULT WINAPI HTMLWindow6_put_onhashchange ( IHTMLWindow6 *  iface,
VARIANT  v 
)
static

Definition at line 2087 of file htmlwindow.c.

2088{
2090 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
2091 return E_NOTIMPL;
2092}

◆ HTMLWindow6_put_onmessage()

static HRESULT WINAPI HTMLWindow6_put_onmessage ( IHTMLWindow6 *  iface,
VARIANT  v 
)
static

Definition at line 2122 of file htmlwindow.c.

2123{
2125 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
2126 return E_NOTIMPL;
2127}

◆ HTMLWindow6_put_XDomainRequest()

static HRESULT WINAPI HTMLWindow6_put_XDomainRequest ( IHTMLWindow6 *  iface,
VARIANT  v 
)
static

Definition at line 2047 of file htmlwindow.c.

2048{
2050 FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
2051 return E_NOTIMPL;
2052}

◆ HTMLWindow6_QueryInterface()

static HRESULT WINAPI HTMLWindow6_QueryInterface ( IHTMLWindow6 *  iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 1991 of file htmlwindow.c.

1992{
1994
1995 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
1996}

◆ HTMLWindow6_Release()

static ULONG WINAPI HTMLWindow6_Release ( IHTMLWindow6 *  iface)
static

Definition at line 2005 of file htmlwindow.c.

2006{
2008
2009 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
2010}

◆ HTMLWindow6_toStaticHTML()

static HRESULT WINAPI HTMLWindow6_toStaticHTML ( IHTMLWindow6 *  iface,
BSTR  bstrHTML,
BSTR pbstrStaticHTML 
)
static

Definition at line 2115 of file htmlwindow.c.

2116{
2118 FIXME("(%p)->(%s %p)\n", This, debugstr_w(bstrHTML), pbstrStaticHTML);
2119 return E_NOTIMPL;
2120}

◆ HTMLWindow_bind_event()

static void HTMLWindow_bind_event ( DispatchEx dispex,
int  eid 
)
static

Definition at line 2864 of file htmlwindow.c.

2865{
2867 This->doc->node.event_target.dispex.data->vtbl->bind_event(&This->doc->node.event_target.dispex, eid);
2868}
static HTMLInnerWindow * impl_from_DispatchEx(DispatchEx *iface)
Definition: htmlwindow.c:2748

◆ HTMLWindow_get_event_target_ptr()

static event_target_t ** HTMLWindow_get_event_target_ptr ( DispatchEx dispex)
static

Definition at line 2858 of file htmlwindow.c.

2859{
2861 return &This->doc->body_event_target;
2862}

◆ HTMLWindow_invoke()

static HRESULT HTMLWindow_invoke ( DispatchEx dispex,
DISPID  id,
LCID  lcid,
WORD  flags,
DISPPARAMS *  params,
VARIANT res,
EXCEPINFO *  ei,
IServiceProvider caller 
)
static

Definition at line 2753 of file htmlwindow.c.

2755{
2757 global_prop_t *prop;
2758 DWORD idx;
2759 HRESULT hres;
2760
2762 if(idx >= This->global_prop_cnt)
2763 return DISP_E_MEMBERNOTFOUND;
2764
2765 prop = This->global_props+idx;
2766
2767 switch(prop->type) {
2768 case GLOBAL_SCRIPTVAR: {
2769 IDispatchEx *iface;
2770 IDispatch *disp;
2771
2772 disp = get_script_disp(prop->script_host);
2773 if(!disp)
2774 return E_UNEXPECTED;
2775
2776 hres = IDispatch_QueryInterface(disp, &IID_IDispatchEx, (void**)&iface);
2777 if(SUCCEEDED(hres)) {
2778 TRACE("%s >>>\n", debugstr_w(prop->name));
2779 hres = IDispatchEx_InvokeEx(iface, prop->id, lcid, flags, params, res, ei, caller);
2780 if(hres == S_OK)
2781 TRACE("%s <<<\n", debugstr_w(prop->name));
2782 else
2783 WARN("%s <<< %08x\n", debugstr_w(prop->name), hres);
2784 IDispatchEx_Release(iface);
2785 }else {
2786 FIXME("No IDispatchEx\n");
2787 }
2788 IDispatch_Release(disp);
2789 break;
2790 }
2791 case GLOBAL_ELEMENTVAR:
2792 switch(flags) {
2794 case DISPATCH_PROPERTYGET: {
2795 IHTMLElement *elem;
2796
2797 hres = IHTMLDocument3_getElementById(&This->base.inner_window->doc->basedoc.IHTMLDocument3_iface,
2798 prop->name, &elem);
2799 if(FAILED(hres))
2800 return hres;
2801
2802 if(!elem)
2803 return DISP_E_MEMBERNOTFOUND;
2804
2805 V_VT(res) = VT_DISPATCH;
2807 return S_OK;
2808 }
2809 case DISPATCH_PROPERTYPUT: {
2810 DISPID dispex_id;
2811
2812 hres = dispex_get_dynid(&This->event_target.dispex, prop->name, &dispex_id);
2813 if(FAILED(hres))
2814 return hres;
2815
2816 prop->type = GLOBAL_DISPEXVAR;
2817 prop->id = dispex_id;
2818 return IDispatchEx_InvokeEx(&This->event_target.dispex.IDispatchEx_iface, dispex_id, 0, flags, params, res, ei, caller);
2819 }
2820 default:
2821 FIXME("Not supported flags: %x\n", flags);
2822 return E_NOTIMPL;
2823 }
2824 case GLOBAL_FRAMEVAR:
2825 if(!This->base.outer_window)
2826 return E_UNEXPECTED;
2827
2828 switch(flags) {
2829 case DISPATCH_PROPERTYGET: {
2830 HTMLOuterWindow *frame;
2831
2832 hres = get_frame_by_name(This->base.outer_window, prop->name, FALSE, &frame);
2833 if(FAILED(hres))
2834 return hres;
2835
2836 if(!frame)
2837 return DISP_E_MEMBERNOTFOUND;
2838
2839 V_VT(res) = VT_DISPATCH;
2841 IDispatch_AddRef(V_DISPATCH(res));
2842 return S_OK;
2843 }
2844 default:
2845 FIXME("Not supported flags: %x\n", flags);
2846 return E_NOTIMPL;
2847 }
2848 case GLOBAL_DISPEXVAR:
2849 return IDispatchEx_InvokeEx(&This->event_target.dispex.IDispatchEx_iface, prop->id, 0, flags, params, res, ei, caller);
2850 default:
2851 ERR("invalid type %d\n", prop->type);
2853 }
2854
2855 return hres;
2856}
unsigned int idx
Definition: utils.c:41
GLuint res
Definition: glext.h:9613
GLenum const GLfloat * params
Definition: glext.h:5645
IDispatch * get_script_disp(ScriptHost *) DECLSPEC_HIDDEN
Definition: script.c:1281
static size_t elem
Definition: string.c:68
static VARIANTARG static DISPID
Definition: ordinal.c:52
HRESULT dispex_get_dynid(DispatchEx *This, const WCHAR *name, DISPID *id)
Definition: dispex.c:568
#define MSHTML_DISPID_CUSTOM_MIN
@ GLOBAL_FRAMEVAR
@ GLOBAL_SCRIPTVAR
@ GLOBAL_DISPEXVAR
@ GLOBAL_ELEMENTVAR
#define DISPATCH_PROPERTYPUT
Definition: oleauto.h:1008
#define DISPATCH_METHOD
Definition: oleauto.h:1006
#define DISPATCH_PROPERTYGET
Definition: oleauto.h:1007
global_prop_type_t type
ScriptHost * script_host

◆ HTMLWindowSP_AddRef()

static ULONG WINAPI HTMLWindowSP_AddRef ( IServiceProvider iface)
static

Definition at line 2711 of file htmlwindow.c.

2712{
2714 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
2715}
static HTMLWindow * impl_from_IServiceProvider(IServiceProvider *iface)
Definition: htmlwindow.c:2700

◆ HTMLWindowSP_QueryInterface()

static HRESULT WINAPI HTMLWindowSP_QueryInterface ( IServiceProvider iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 2705 of file htmlwindow.c.

2706{
2708 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
2709}

◆ HTMLWindowSP_QueryService()

static HRESULT WINAPI HTMLWindowSP_QueryService ( IServiceProvider iface,
REFGUID  guidService,
REFIID  riid,
void **  ppv 
)
static

Definition at line 2723 of file htmlwindow.c.

2724{
2726
2727 if(IsEqualGUID(guidService, &IID_IHTMLWindow2)) {
2728 TRACE("IID_IHTMLWindow2\n");
2729 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
2730 }
2731
2732 TRACE("(%p)->(%s %s %p)\n", This, debugstr_mshtml_guid(guidService), debugstr_mshtml_guid(riid), ppv);
2733
2734 if(!This->outer_window->doc_obj)
2735 return E_NOINTERFACE;
2736
2737 return IServiceProvider_QueryService(&This->outer_window->doc_obj->basedoc.IServiceProvider_iface,
2738 guidService, riid, ppv);
2739}

◆ HTMLWindowSP_Release()

static ULONG WINAPI HTMLWindowSP_Release ( IServiceProvider iface)
static

Definition at line 2717 of file htmlwindow.c.

2718{
2720 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
2721}

◆ impl_from_DispatchEx()

static HTMLInnerWindow * impl_from_DispatchEx ( DispatchEx iface)
inlinestatic

Definition at line 2748 of file htmlwindow.c.

2749{
2750 return CONTAINING_RECORD(iface, HTMLInnerWindow, event_target.dispex);
2751}
#define CONTAINING_RECORD(address, type, field)
Definition: typedefs.h:260

Referenced by HTMLWindow_bind_event(), HTMLWindow_get_event_target_ptr(), and HTMLWindow_invoke().

◆ impl_from_IDispatchEx()

◆ impl_from_IHTMLPrivateWindow()

◆ impl_from_IHTMLWindow2()

static HTMLWindow * impl_from_IHTMLWindow2 ( IHTMLWindow2 iface)
inlinestatic

Definition at line 111 of file htmlwindow.c.

112{
113 return CONTAINING_RECORD(iface, HTMLWindow, IHTMLWindow2_iface);
114}

Referenced by HTMLWindow2_AddRef(), HTMLWindow2_alert(), HTMLWindow2_blur(), HTMLWindow2_clearInterval(), HTMLWindow2_clearTimeout(), HTMLWindow2_close(), HTMLWindow2_confirm(), HTMLWindow2_execScript(), HTMLWindow2_focus(), HTMLWindow2_get__newEnum(), HTMLWindow2_get_clientInformation(), HTMLWindow2_get_closed(), HTMLWindow2_get_defaultStatus(), HTMLWindow2_get_document(), HTMLWindow2_get_event(), HTMLWindow2_get_external(), HTMLWindow2_get_frames(), HTMLWindow2_get_history(), HTMLWindow2_get_Image(), HTMLWindow2_get_length(), HTMLWindow2_get_location(), HTMLWindow2_get_name(), HTMLWindow2_get_navigator(), HTMLWindow2_get_offscreenBuffering(), HTMLWindow2_get_onbeforeunload(), HTMLWindow2_get_onblur(), HTMLWindow2_get_onerror(), HTMLWindow2_get_onfocus(), HTMLWindow2_get_onhelp(), HTMLWindow2_get_onload(), HTMLWindow2_get_onresize(), HTMLWindow2_get_onscroll(), HTMLWindow2_get_onunload(), HTMLWindow2_get_opener(), HTMLWindow2_get_Option(), HTMLWindow2_get_parent(), HTMLWindow2_get_screen(), HTMLWindow2_get_self(), HTMLWindow2_get_status(), HTMLWindow2_get_top(), HTMLWindow2_get_window(), HTMLWindow2_GetIDsOfNames(), HTMLWindow2_GetTypeInfo(), HTMLWindow2_GetTypeInfoCount(), HTMLWindow2_Invoke(), HTMLWindow2_item(), HTMLWindow2_moveBy(), HTMLWindow2_moveTo(), HTMLWindow2_navigate(), HTMLWindow2_open(), HTMLWindow2_prompt(), HTMLWindow2_put_defaultStatus(), HTMLWindow2_put_name(), HTMLWindow2_put_offscreenBuffering(), HTMLWindow2_put_onbeforeunload(), HTMLWindow2_put_onblur(), HTMLWindow2_put_onerror(), HTMLWindow2_put_onfocus(), HTMLWindow2_put_onhelp(), HTMLWindow2_put_onload(), HTMLWindow2_put_onresize(), HTMLWindow2_put_onscroll(), HTMLWindow2_put_onunload(), HTMLWindow2_put_opener(), HTMLWindow2_put_status(), HTMLWindow2_QueryInterface(), HTMLWindow2_Release(), HTMLWindow2_resizeBy(), HTMLWindow2_resizeTo(), HTMLWindow2_scroll(), HTMLWindow2_scrollBy(), HTMLWindow2_scrollTo(), HTMLWindow2_setInterval(), HTMLWindow2_setTimeout(), HTMLWindow2_showHelp(), HTMLWindow2_showModalDialog(), and HTMLWindow2_toString().

◆ impl_from_IHTMLWindow3()

◆ impl_from_IHTMLWindow4()

static HTMLWindow * impl_from_IHTMLWindow4 ( IHTMLWindow4 *  iface)
inlinestatic

◆ impl_from_IHTMLWindow5()

static HTMLWindow * impl_from_IHTMLWindow5 ( IHTMLWindow5 *  iface)
inlinestatic

◆ impl_from_IHTMLWindow6()

◆ impl_from_IObjectIdentity()

static HTMLWindow * impl_from_IObjectIdentity ( IObjectIdentity iface)
inlinestatic

Definition at line 2350 of file htmlwindow.c.

2351{
2352 return CONTAINING_RECORD(iface, HTMLWindow, IObjectIdentity_iface);
2353}

Referenced by ObjectIdentity_AddRef(), ObjectIdentity_IsEqualObject(), ObjectIdentity_QueryInterface(), and ObjectIdentity_Release().

◆ impl_from_IServiceProvider()

static HTMLWindow * impl_from_IServiceProvider ( IServiceProvider iface)
inlinestatic

Definition at line 2700 of file htmlwindow.c.

2701{
2702 return CONTAINING_RECORD(iface, HTMLWindow, IServiceProvider_iface);
2703}

Referenced by HTMLWindowSP_AddRef(), HTMLWindowSP_QueryInterface(), HTMLWindowSP_QueryService(), and HTMLWindowSP_Release().

◆ impl_from_ITravelLogClient()

static HTMLWindow * impl_from_ITravelLogClient ( ITravelLogClient iface)
inlinestatic

◆ is_outer_window()

static BOOL is_outer_window ( HTMLWindow window)
inlinestatic

Definition at line 25 of file htmlwindow.c.

26{
27 return &window->outer_window->base == window;
28}

Referenced by HTMLWindow2_Release().

◆ notify_webbrowser_close()

static BOOL notify_webbrowser_close ( HTMLOuterWindow window,
HTMLDocumentObj doc 
)
static

Definition at line 768 of file htmlwindow.c.

769{
770 IConnectionPointContainer *cp_container;
771 VARIANT_BOOL cancel = VARIANT_FALSE;
772 IEnumConnections *enum_conn;
773 VARIANT args[2];
774 DISPPARAMS dp = {args, NULL, 2, 0};
775 CONNECTDATA conn_data;
777 IDispatch *disp;
778 ULONG fetched;
780
781 if(!doc->webbrowser)
782 return TRUE;
783
784 hres = IUnknown_QueryInterface(doc->webbrowser, &IID_IConnectionPointContainer, (void**)&cp_container);
785 if(FAILED(hres))
786 return TRUE;
787
788 hres = IConnectionPointContainer_FindConnectionPoint(cp_container, &DIID_DWebBrowserEvents2, &cp);
789 IConnectionPointContainer_Release(cp_container);
790 if(FAILED(hres))
791 return TRUE;
792
793 hres = IConnectionPoint_EnumConnections(cp, &enum_conn);
794 IConnectionPoint_Release(cp);
795 if(FAILED(hres))
796 return TRUE;
797
798 while(!cancel) {
799 conn_data.pUnk = NULL;
800 conn_data.dwCookie = 0;
801 fetched = 0;
802 hres = IEnumConnections_Next(enum_conn, 1, &conn_data, &fetched);
803 if(hres != S_OK)
804 break;
805
806 hres = IUnknown_QueryInterface(conn_data.pUnk, &IID_IDispatch, (void**)&disp);
807 IUnknown_Release(conn_data.pUnk);
808 if(FAILED(hres))
809 continue;
810
812 V_BOOLREF(args) = &cancel;
813 V_VT(args+1) = VT_BOOL;
814 V_BOOL(args+1) = window->parent ? VARIANT_TRUE : VARIANT_FALSE;
815 hres = IDispatch_Invoke(disp, DISPID_WINDOWCLOSING, &IID_NULL, 0, DISPATCH_METHOD, &dp, NULL, NULL, NULL);
816 IDispatch_Release(disp);
817 if(FAILED(hres))
818 cancel = VARIANT_FALSE;
819 }
820
821 IEnumConnections_Release(enum_conn);
822 return !cancel;
823}
short VARIANT_BOOL
Definition: compat.h:2290
@ VT_BYREF
Definition: compat.h:2342
@ VT_BOOL
Definition: compat.h:2306
POINT cp
Definition: magnifier.c:59
struct stdole::DISPPARAMS DISPPARAMS
#define V_BOOL(A)
Definition: oleauto.h:224
#define V_BOOLREF(A)
Definition: oleauto.h:225
const GUID IID_IConnectionPointContainer
#define IID_NULL
Definition: guiddef.h:98
#define args
Definition: format.c:66
IUnknown * webbrowser
Definition: match.c:390
uint32_t ULONG
Definition: typedefs.h:59
#define DISPID_WINDOWCLOSING
Definition: webchild.h:65

Referenced by HTMLWindow2_close().

◆ nswindow_to_window()

HTMLOuterWindow * nswindow_to_window ( const nsIDOMWindow nswindow)

Definition at line 3099 of file htmlwindow.c.

3100{
3101 HTMLOuterWindow *iter;
3102
3104 if(iter->nswindow == nswindow)
3105 return iter;
3106 }
3107
3108 return NULL;
3109}
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
Definition: list.h:198
nsIDOMWindow * nswindow

Referenced by get_channel_window(), get_elem_window(), get_frame_by_index(), get_frame_by_name(), nsPromptService_Alert(), and set_frame_doc().

◆ ObjectIdentity_AddRef()

static ULONG WINAPI ObjectIdentity_AddRef ( IObjectIdentity iface)
static

Definition at line 2362 of file htmlwindow.c.

2363{
2365
2366 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
2367}
static HTMLWindow * impl_from_IObjectIdentity(IObjectIdentity *iface)
Definition: htmlwindow.c:2350

◆ ObjectIdentity_IsEqualObject()

static HRESULT WINAPI ObjectIdentity_IsEqualObject ( IObjectIdentity iface,
IUnknown unk 
)
static

Definition at line 2376 of file htmlwindow.c.

2377{
2380 HRESULT hres;
2381
2382 TRACE("(%p)->(%p)\n", This, unk);
2383
2384 hres = IUnknown_QueryInterface(unk, &IID_IServiceProvider, (void**)&sp);
2385 if(hres != S_OK)
2386 return hres;
2387
2388 hres = &This->inner_window->base.IServiceProvider_iface==sp ||
2389 &This->outer_window->base.IServiceProvider_iface==sp ? S_OK : S_FALSE;
2390 IServiceProvider_Release(sp);
2391 return hres;
2392}
static const WCHAR sp[]
Definition: suminfo.c:287
#define S_FALSE
Definition: winerror.h:2357

◆ ObjectIdentity_QueryInterface()

static HRESULT WINAPI ObjectIdentity_QueryInterface ( IObjectIdentity iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 2355 of file htmlwindow.c.

2356{
2358
2359 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
2360}

◆ ObjectIdentity_Release()

static ULONG WINAPI ObjectIdentity_Release ( IObjectIdentity iface)
static

Definition at line 2369 of file htmlwindow.c.

2370{
2372
2373 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
2374}

◆ prompt_dlgproc()

static INT_PTR CALLBACK prompt_dlgproc ( HWND  hwnd,
UINT  msg,
WPARAM  wparam,
LPARAM  lparam 
)
static

Definition at line 629 of file htmlwindow.c.

631{
632 switch(msg)
633 {
634 case WM_INITDIALOG:
635 {
637 WCHAR wszTitle[100];
638
640 sizeof(wszTitle)/sizeof(WCHAR))) {
641 WARN("Could not load message box title: %d\n", GetLastError());
643 return FALSE;
644 }
645
647 SetWindowTextW(hwnd, wszTitle);
650 return FALSE;
651 }
652 case WM_COMMAND:
653 switch(wparam)
654 {
657 return TRUE;
659 {
660 prompt_arg *arg =
662 HWND hwndPrompt = GetDlgItem(hwnd, ID_PROMPT_EDIT);
663 INT len = GetWindowTextLengthW(hwndPrompt);
664
665 if(!arg->textdata)
666 {
668 return TRUE;
669 }
670
671 V_VT(arg->textdata) = VT_BSTR;
672 if(!len && !arg->dststr)
673 V_BSTR(arg->textdata) = NULL;
674 else
675 {
676 V_BSTR(arg->textdata) = SysAllocStringLen(NULL, len);
677 GetWindowTextW(hwndPrompt, V_BSTR(arg->textdata), len+1);
678 }
680 return TRUE;
681 }
682 }
683 return FALSE;
684 case WM_CLOSE:
686 return TRUE;
687 default:
688 return FALSE;
689 }
690}
@ lparam
Definition: SystemMenu.c:31
@ wparam
Definition: SystemMenu.c:30
#define ID_PROMPT_EDIT
Definition: resource.h:30
#define ID_PROMPT_PROMPT
Definition: resource.h:29
BSTR WINAPI SysAllocStringLen(const OLECHAR *str, unsigned int len)
Definition: oleaut.c:339
int32_t INT
Definition: typedefs.h:58
int WINAPI GetWindowTextW(HWND hWnd, LPWSTR lpString, int nMaxCount)
Definition: window.c:1412
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
#define MAKEWPARAM(l, h)
Definition: winuser.h:4009
#define WM_CLOSE
Definition: winuser.h:1621
#define DWLP_USER
Definition: winuser.h:872
#define GetWindowLongPtrW
Definition: winuser.h:4829
#define IDCANCEL
Definition: winuser.h:831
#define WM_COMMAND
Definition: winuser.h:1740
#define WM_INITDIALOG
Definition: winuser.h:1739
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
BOOL WINAPI SetWindowTextW(_In_ HWND, _In_opt_ LPCWSTR)
int WINAPI GetWindowTextLengthW(_In_ HWND)
#define BN_CLICKED
Definition: winuser.h:1925
#define SetWindowLongPtrW
Definition: winuser.h:5346
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)

Referenced by HTMLWindow2_prompt().

◆ prop_to_dispid()

static DWORD prop_to_dispid ( HTMLInnerWindow This,
global_prop_t prop 
)
inlinestatic

Definition at line 2508 of file htmlwindow.c.

2509{
2510 return MSHTML_DISPID_CUSTOM_MIN + (prop-This->global_props);
2511}

Referenced by search_window_props(), and WindowDispEx_GetDispID().

◆ release_children()

static void release_children ( HTMLOuterWindow This)
static

Definition at line 30 of file htmlwindow.c.

31{
33
34 while(!list_empty(&This->children)) {
35 child = LIST_ENTRY(list_tail(&This->children), HTMLOuterWindow, sibling_entry);
36
37 list_remove(&child->sibling_entry);
38 child->parent = NULL;
39 IHTMLWindow2_Release(&child->base.IHTMLWindow2_iface);
40 }
41}
static void list_remove(struct list_entry *entry)
Definition: list.h:90
static HWND child
Definition: cursoricon.c:298
__WINE_SERVER_LIST_INLINE struct list * list_tail(const struct list *list)
Definition: list.h:137

Referenced by release_outer_window().

◆ release_inner_window()

static void release_inner_window ( HTMLInnerWindow This)
static

Definition at line 201 of file htmlwindow.c.

202{
203 unsigned i;
204
205 TRACE("%p\n", This);
206
208
209 if(This->doc) {
210 This->doc->window = NULL;
211 htmldoc_release(&This->doc->basedoc);
212 }
213
214 release_dispex(&This->event_target.dispex);
215
216 for(i=0; i < This->global_prop_cnt; i++)
217 heap_free(This->global_props[i].name);
218 heap_free(This->global_props);
219
220 if(This->location) {
221 This->location->window = NULL;
222 IHTMLLocation_Release(&This->location->IHTMLLocation_iface);
223 }
224
225 if(This->image_factory) {
226 This->image_factory->window = NULL;
227 IHTMLImageElementFactory_Release(&This->image_factory->IHTMLImageElementFactory_iface);
228 }
229
230 if(This->option_factory) {
231 This->option_factory->window = NULL;
232 IHTMLOptionElementFactory_Release(&This->option_factory->IHTMLOptionElementFactory_iface);
233 }
234
235 if(This->xhr_factory) {
236 This->xhr_factory->window = NULL;
237 IHTMLXMLHttpRequestFactory_Release(&This->xhr_factory->IHTMLXMLHttpRequestFactory_iface);
238 }
239
240 if(This->screen)
241 IHTMLScreen_Release(This->screen);
242
243 if(This->history) {
244 This->history->window = NULL;
245 IOmHistory_Release(&This->history->IOmHistory_iface);
246 }
247
248 if(This->session_storage)
249 IHTMLStorage_Release(This->session_storage);
250
251 if(This->mon)
252 IMoniker_Release(This->mon);
253
255}
static void detach_inner_window(HTMLInnerWindow *window)
Definition: htmlwindow.c:87
void release_dispex(DispatchEx *This)
Definition: dispex.c:1706
static ULONG htmldoc_release(HTMLDocument *This)

Referenced by HTMLWindow2_Release().

◆ release_outer_window()

static void release_outer_window ( HTMLOuterWindow This)
static

Definition at line 171 of file htmlwindow.c.

172{
173 if(This->pending_window) {
174 abort_window_bindings(This->pending_window);
175 This->pending_window->base.outer_window = NULL;
176 IHTMLWindow2_Release(&This->pending_window->base.IHTMLWindow2_iface);
177 }
178
179 remove_target_tasks(This->task_magic);
181 if(This->base.inner_window)
182 detach_inner_window(This->base.inner_window);
184
185 if(This->secmgr)
186 IInternetSecurityManager_Release(This->secmgr);
187
188 if(This->frame_element)
189 This->frame_element->content_window = NULL;
190
191 This->window_ref->window = NULL;
192 windowref_release(This->window_ref);
193
194 if(This->nswindow)
195 nsIDOMWindow_Release(This->nswindow);
196
197 list_remove(&This->entry);
199}
void set_current_mon(HTMLOuterWindow *, IMoniker *, DWORD) DECLSPEC_HIDDEN
Definition: persist.c:99
static void release_children(HTMLOuterWindow *This)
Definition: htmlwindow.c:30
static void windowref_release(windowref_t *ref)

Referenced by HTMLWindow2_Release().

◆ search_window_props()

HRESULT search_window_props ( HTMLInnerWindow This,
BSTR  bstrName,
DWORD  grfdex,
DISPID pid 
)

Definition at line 2513 of file htmlwindow.c.

2514{
2515 DWORD i;
2516 ScriptHost *script_host;
2517 DISPID id;
2518
2519 for(i=0; i < This->global_prop_cnt; i++) {
2520 /* FIXME: case sensitivity */
2521 if(!strcmpW(This->global_props[i].name, bstrName)) {
2523 return S_OK;
2524 }
2525 }
2526
2527 if(find_global_prop(This->base.inner_window, bstrName, grfdex, &script_host, &id)) {
2528 global_prop_t *prop;
2529
2530 prop = alloc_global_prop(This, GLOBAL_SCRIPTVAR, bstrName);
2531 if(!prop)
2532 return E_OUTOFMEMORY;
2533
2534 prop->script_host = script_host;
2535 prop->id = id;
2536
2537 *pid = prop_to_dispid(This, prop);
2538 return S_OK;
2539 }
2540
2541 return DISP_E_UNKNOWNNAME;
2542}
BOOL find_global_prop(HTMLInnerWindow *, BSTR, DWORD, ScriptHost **, DISPID *) DECLSPEC_HIDDEN
Definition: script.c:1500
static global_prop_t * alloc_global_prop(HTMLInnerWindow *This, global_prop_type_t type, BSTR name)
Definition: htmlwindow.c:2481
static DWORD prop_to_dispid(HTMLInnerWindow *This, global_prop_t *prop)
Definition: htmlwindow.c:2508
_In_ ULONG_PTR _In_ ULONG _Out_ ULONG_PTR * pid
Definition: winddi.h:3837
#define DISP_E_UNKNOWNNAME
Definition: winerror.h:2515

Referenced by HTMLFrameElement_get_dispid(), HTMLIFrame_get_dispid(), and WindowDispEx_GetDispID().

◆ set_window_event()

static HRESULT set_window_event ( HTMLWindow window,
eventid_t  eid,
VARIANT var 
)
inlinestatic

Definition at line 67 of file htmlwindow.c.

68{
69 if(!window->inner_window->doc) {
70 FIXME("No document\n");
71 return E_FAIL;
72 }
73
74 return set_event_handler(&window->inner_window->event_target, eid, var);
75}
HRESULT set_event_handler(EventTarget *event_target, eventid_t eid, VARIANT *var)
Definition: htmlevent.c:1404

Referenced by HTMLWindow2_put_onbeforeunload(), HTMLWindow2_put_onblur(), HTMLWindow2_put_onerror(), HTMLWindow2_put_onfocus(), HTMLWindow2_put_onhelp(), HTMLWindow2_put_onload(), HTMLWindow2_put_onresize(), and HTMLWindow2_put_onscroll().

◆ TravelLogClient_AddRef()

static ULONG WINAPI TravelLogClient_AddRef ( ITravelLogClient iface)
static

Definition at line 2303 of file htmlwindow.c.

2304{
2306
2307 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
2308}
static HTMLWindow * impl_from_ITravelLogClient(ITravelLogClient *iface)
Definition: htmlwindow.c:2291

◆ TravelLogClient_FindWindowByIndex()

static HRESULT WINAPI TravelLogClient_FindWindowByIndex ( ITravelLogClient iface,
DWORD  dwID,
IUnknown **  ppunk 
)
static

Definition at line 2317 of file htmlwindow.c.

2318{
2320
2321 FIXME("(%p)->(%d %p) semi-stub\n", This, dwID, ppunk);
2322
2323 *ppunk = NULL;
2324 return E_FAIL;
2325}

◆ TravelLogClient_GetWindowData()

static HRESULT WINAPI TravelLogClient_GetWindowData ( ITravelLogClient iface,
IStream pStream,
LPWINDOWDATA  pWinData 
)
static

Definition at line 2327 of file htmlwindow.c.

2328{
2330 FIXME("(%p)->(%p %p)\n", This, pStream, pWinData);
2331 return E_NOTIMPL;
2332}

◆ TravelLogClient_LoadHistoryPosition()

static HRESULT WINAPI TravelLogClient_LoadHistoryPosition ( ITravelLogClient iface,
LPWSTR  pszUrlLocation,
DWORD  dwPosition 
)
static

Definition at line 2334 of file htmlwindow.c.

2335{
2337 FIXME("(%p)->(%s %d)\n", This, debugstr_w(pszUrlLocation), dwPosition);
2338 return E_NOTIMPL;
2339}

◆ TravelLogClient_QueryInterface()

static HRESULT WINAPI TravelLogClient_QueryInterface ( ITravelLogClient iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 2296 of file htmlwindow.c.

2297{
2299
2300 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
2301}

◆ TravelLogClient_Release()

static ULONG WINAPI TravelLogClient_Release ( ITravelLogClient iface)
static

Definition at line 2310 of file htmlwindow.c.

2311{
2313
2314 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
2315}

◆ update_window_doc()

HRESULT update_window_doc ( HTMLInnerWindow window)

Definition at line 3033 of file htmlwindow.c.

3034{
3035 HTMLOuterWindow *outer_window = window->base.outer_window;
3036 nsIDOMHTMLDocument *nshtmldoc;
3037 nsIDOMDocument *nsdoc;
3038 nsresult nsres;
3039 HRESULT hres;
3040
3041 assert(!window->doc);
3042
3043 if(!outer_window) {
3044 ERR("NULL outer window\n");
3045 return E_UNEXPECTED;
3046 }
3047
3048 nsres = nsIDOMWindow_GetDocument(outer_window->nswindow, &nsdoc);
3049 if(NS_FAILED(nsres) || !nsdoc) {
3050 ERR("GetDocument failed: %08x\n", nsres);
3051 return E_FAIL;
3052 }
3053
3054 nsres = nsIDOMDocument_QueryInterface(nsdoc, &IID_nsIDOMHTMLDocument, (void**)&nshtmldoc);
3055 nsIDOMDocument_Release(nsdoc);
3056 if(NS_FAILED(nsres)) {
3057 ERR("Could not get nsIDOMHTMLDocument iface: %08x\n", nsres);
3058 return E_FAIL;
3059 }
3060
3061 hres = create_doc_from_nsdoc(nshtmldoc, outer_window->doc_obj, window, &window->doc);
3062 nsIDOMHTMLDocument_Release(nshtmldoc);
3063 if(FAILED(hres))
3064 return hres;
3065
3066 if(outer_window->doc_obj->usermode == EDITMODE) {
3067 nsAString mode_str;
3068 nsresult nsres;
3069
3070 static const PRUnichar onW[] = {'o','n',0};
3071
3072 nsAString_InitDepend(&mode_str, onW);
3073 nsres = nsIDOMHTMLDocument_SetDesignMode(window->doc->nsdoc, &mode_str);
3074 nsAString_Finish(&mode_str);
3075 if(NS_FAILED(nsres))
3076 ERR("SetDesignMode failed: %08x\n", nsres);
3077 }
3078
3079 if(window != outer_window->pending_window) {
3080 ERR("not current pending window\n");
3081 return S_OK;
3082 }
3083
3084 if(outer_window->base.inner_window)
3085 detach_inner_window(outer_window->base.inner_window);
3086 outer_window->base.inner_window = window;
3087 outer_window->pending_window = NULL;
3088
3089 if(outer_window->doc_obj->basedoc.window == outer_window || !outer_window->doc_obj->basedoc.window) {
3090 if(outer_window->doc_obj->basedoc.doc_node)
3092 outer_window->doc_obj->basedoc.doc_node = window->doc;
3093 htmldoc_addref(&window->doc->basedoc);
3094 }
3095
3096 return hres;
3097}
HRESULT create_doc_from_nsdoc(nsIDOMHTMLDocument *nsdoc, HTMLDocumentObj *doc_obj, HTMLInnerWindow *window, HTMLDocumentNode **ret)
Definition: htmldoc.c:4620
static ULONG htmldoc_addref(HTMLDocument *This)
@ EDITMODE
WCHAR PRUnichar
Definition: nsiface.idl:48
HTMLDocument basedoc
HTMLDocumentNode * doc_node
static const WCHAR onW[]
Definition: lex.c:72

Referenced by HTMLOuterWindow_Create(), and on_start_nsrequest().

◆ window_set_timer()

static HRESULT window_set_timer ( HTMLInnerWindow This,
VARIANT expr,
LONG  msec,
VARIANT language,
BOOL  interval,
LONG timer_id 
)
static

Definition at line 1666 of file htmlwindow.c.

1668{
1669 IDispatch *disp = NULL;
1670 HRESULT hres;
1671
1672 switch(V_VT(expr)) {
1673 case VT_DISPATCH:
1674 disp = V_DISPATCH(expr);
1675 IDispatch_AddRef(disp);
1676 break;
1677
1678 case VT_BSTR:
1679 disp = script_parse_event(This->base.inner_window, V_BSTR(expr));
1680 break;
1681
1682 default:
1683 FIXME("unimplemented expr %s\n", debugstr_variant(expr));
1684 return E_NOTIMPL;
1685 }
1686
1687 if(!disp)
1688 return E_FAIL;
1689
1690 hres = set_task_timer(This, msec, interval, disp, timer_id);
1691 IDispatch_Release(disp);
1692
1693 return hres;
1694}
IDispatch * script_parse_event(HTMLInnerWindow *, LPCWSTR) DECLSPEC_HIDDEN
Definition: script.c:1184
HRESULT set_task_timer(HTMLInnerWindow *, DWORD, BOOL, IDispatch *, LONG *) DECLSPEC_HIDDEN
Definition: task.c:169
static UINT timer_id
Definition: wclickat.c:79

Referenced by HTMLWindow3_setInterval(), and HTMLWindow3_setTimeout().

◆ WindowDispEx_AddRef()

static ULONG WINAPI WindowDispEx_AddRef ( IDispatchEx iface)
static

Definition at line 2413 of file htmlwindow.c.

2414{
2416
2417 return IHTMLWindow2_AddRef(&This->IHTMLWindow2_iface);
2418}
static HTMLWindow * impl_from_IDispatchEx(IDispatchEx *iface)
Definition: htmlwindow.c:2401

◆ WindowDispEx_DeleteMemberByDispID()

static HRESULT WINAPI WindowDispEx_DeleteMemberByDispID ( IDispatchEx iface,
DISPID  id 
)
static

Definition at line 2635 of file htmlwindow.c.

2636{
2638
2639 TRACE("(%p)->(%x)\n", This, id);
2640
2641 return IDispatchEx_DeleteMemberByDispID(&This->inner_window->event_target.dispex.IDispatchEx_iface, id);
2642}

◆ WindowDispEx_DeleteMemberByName()

static HRESULT WINAPI WindowDispEx_DeleteMemberByName ( IDispatchEx iface,
BSTR  bstrName,
DWORD  grfdex 
)
static

Definition at line 2626 of file htmlwindow.c.

2627{
2629
2630 TRACE("(%p)->(%s %x)\n", This, debugstr_w(bstrName), grfdex);
2631
2632 return IDispatchEx_DeleteMemberByName(&This->inner_window->event_target.dispex.IDispatchEx_iface, bstrName, grfdex);
2633}

◆ WindowDispEx_GetDispID()

static HRESULT WINAPI WindowDispEx_GetDispID ( IDispatchEx iface,
BSTR  bstrName,
DWORD  grfdex,
DISPID pid 
)
static

Definition at line 2544 of file htmlwindow.c.

2545{
2547 HTMLInnerWindow *window = This->inner_window;
2548 HRESULT hres;
2549
2550 TRACE("(%p)->(%s %x %p)\n", This, debugstr_w(bstrName), grfdex, pid);
2551
2552 hres = search_window_props(window, bstrName, grfdex, pid);
2554 return hres;
2555
2556 hres = IDispatchEx_GetDispID(&window->base.inner_window->event_target.dispex.IDispatchEx_iface, bstrName, grfdex, pid);
2558 return hres;
2559
2560 if(This->outer_window) {
2561 HTMLOuterWindow *frame;
2562
2563 hres = get_frame_by_name(This->outer_window, bstrName, FALSE, &frame);
2564 if(SUCCEEDED(hres) && frame) {
2565 global_prop_t *prop;
2566
2567 IHTMLWindow2_Release(&frame->base.IHTMLWindow2_iface);
2568
2569 prop = alloc_global_prop(window, GLOBAL_FRAMEVAR, bstrName);
2570 if(!prop)
2571 return E_OUTOFMEMORY;
2572
2573 *pid = prop_to_dispid(window, prop);
2574 return S_OK;
2575 }
2576 }
2577
2578 if(window->doc) {
2579 global_prop_t *prop;
2580 IHTMLElement *elem;
2581
2582 hres = IHTMLDocument3_getElementById(&window->base.inner_window->doc->basedoc.IHTMLDocument3_iface,
2583 bstrName, &elem);
2584 if(SUCCEEDED(hres) && elem) {
2585 IHTMLElement_Release(elem);
2586
2587 prop = alloc_global_prop(window, GLOBAL_ELEMENTVAR, bstrName);
2588 if(!prop)
2589 return E_OUTOFMEMORY;
2590
2591 *pid = prop_to_dispid(window, prop);
2592 return S_OK;
2593 }
2594 }
2595
2596 return DISP_E_UNKNOWNNAME;
2597}
HRESULT search_window_props(HTMLInnerWindow *This, BSTR bstrName, DWORD grfdex, DISPID *pid)
Definition: htmlwindow.c:2513

◆ WindowDispEx_GetIDsOfNames()

static HRESULT WINAPI WindowDispEx_GetIDsOfNames ( IDispatchEx iface,
REFIID  riid,
LPOLESTR rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgDispId 
)
static

Definition at line 2446 of file htmlwindow.c.

2449{
2451 UINT i;
2452 HRESULT hres;
2453
2454 WARN("(%p)->(%s %p %u %u %p)\n", This, debugstr_guid(riid), rgszNames, cNames, lcid, rgDispId);
2455
2456 for(i=0; i < cNames; i++) {
2457 /* We shouldn't use script's IDispatchEx here, so we shouldn't use GetDispID */
2458 hres = IDispatchEx_GetDispID(&This->IDispatchEx_iface, rgszNames[i], 0, rgDispId+i);
2459 if(FAILED(hres))
2460 return hres;
2461 }
2462
2463 return S_OK;
2464}
#define debugstr_guid
Definition: kernel32.h:35
unsigned int UINT
Definition: ndis.h:50

◆ WindowDispEx_GetMemberName()

static HRESULT WINAPI WindowDispEx_GetMemberName ( IDispatchEx iface,
DISPID  id,
BSTR pbstrName 
)
static

Definition at line 2654 of file htmlwindow.c.

2655{
2657
2658 TRACE("(%p)->(%x %p)\n", This, id, pbstrName);
2659
2660 return IDispatchEx_GetMemberName(&This->inner_window->event_target.dispex.IDispatchEx_iface, id, pbstrName);
2661}

◆ WindowDispEx_GetMemberProperties()

static HRESULT WINAPI WindowDispEx_GetMemberProperties ( IDispatchEx iface,
DISPID  id,
DWORD  grfdexFetch,
DWORD pgrfdex 
)
static

Definition at line 2644 of file htmlwindow.c.

2645{
2647
2648 TRACE("(%p)->(%x %x %p)\n", This, id, grfdexFetch, pgrfdex);
2649
2650 return IDispatchEx_GetMemberProperties(&This->inner_window->event_target.dispex.IDispatchEx_iface, id, grfdexFetch,
2651 pgrfdex);
2652}

◆ WindowDispEx_GetNameSpaceParent()

static HRESULT WINAPI WindowDispEx_GetNameSpaceParent ( IDispatchEx iface,
IUnknown **  ppunk 
)
static

Definition at line 2672 of file htmlwindow.c.

2673{
2675
2676 TRACE("(%p)->(%p)\n", This, ppunk);
2677
2678 *ppunk = NULL;
2679 return S_OK;
2680}

◆ WindowDispEx_GetNextDispID()

static HRESULT WINAPI WindowDispEx_GetNextDispID ( IDispatchEx iface,
DWORD  grfdex,
DISPID  id,
DISPID pid 
)
static

Definition at line 2663 of file htmlwindow.c.

2664{
2666
2667 TRACE("(%p)->(%x %x %p)\n", This, grfdex, id, pid);
2668
2669 return IDispatchEx_GetNextDispID(&This->inner_window->event_target.dispex.IDispatchEx_iface, grfdex, id, pid);
2670}

◆ WindowDispEx_GetTypeInfo()

static HRESULT WINAPI WindowDispEx_GetTypeInfo ( IDispatchEx iface,
UINT  iTInfo,
LCID  lcid,
ITypeInfo **  ppTInfo 
)
static

Definition at line 2436 of file htmlwindow.c.

2438{
2440
2441 TRACE("(%p)->(%u %u %p)\n", This, iTInfo, lcid, ppTInfo);
2442
2443 return IDispatchEx_GetTypeInfo(&This->inner_window->event_target.dispex.IDispatchEx_iface, iTInfo, lcid, ppTInfo);
2444}

◆ WindowDispEx_GetTypeInfoCount()

static HRESULT WINAPI WindowDispEx_GetTypeInfoCount ( IDispatchEx iface,
UINT pctinfo 
)
static

Definition at line 2427 of file htmlwindow.c.

2428{
2430
2431 TRACE("(%p)->(%p)\n", This, pctinfo);
2432
2433 return IDispatchEx_GetTypeInfoCount(&This->inner_window->event_target.dispex.IDispatchEx_iface, pctinfo);
2434}

◆ WindowDispEx_Invoke()

static HRESULT WINAPI WindowDispEx_Invoke ( IDispatchEx iface,
DISPID  dispIdMember,
REFIID  riid,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pDispParams,
VARIANT pVarResult,
EXCEPINFO *  pExcepInfo,
UINT puArgErr 
)
static

Definition at line 2466 of file htmlwindow.c.

2469{
2471
2472 TRACE("(%p)->(%d %s %d %d %p %p %p %p)\n", This, dispIdMember, debugstr_guid(riid),
2473 lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
2474
2475 /* FIXME: Use script dispatch */
2476
2477 return IDispatchEx_Invoke(&This->inner_window->event_target.dispex.IDispatchEx_iface, dispIdMember, riid, lcid, wFlags,
2478 pDispParams, pVarResult, pExcepInfo, puArgErr);
2479}

◆ WindowDispEx_InvokeEx()

static HRESULT WINAPI WindowDispEx_InvokeEx ( IDispatchEx iface,
DISPID  id,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pdp,
VARIANT pvarRes,
EXCEPINFO *  pei,
IServiceProvider pspCaller 
)
static

Definition at line 2599 of file htmlwindow.c.

2601{
2603 HTMLInnerWindow *window = This->inner_window;
2604
2605 TRACE("(%p)->(%x %x %x %p %p %p %p)\n", This, id, lcid, wFlags, pdp, pvarRes, pei, pspCaller);
2606
2609 HRESULT hres;
2610
2611 TRACE("forwarding to location.href\n");
2612
2614 if(FAILED(hres))
2615 return hres;
2616
2617 hres = IDispatchEx_InvokeEx(&location->dispex.IDispatchEx_iface, DISPID_VALUE, lcid,
2618 wFlags, pdp, pvarRes, pei, pspCaller);
2619 IHTMLLocation_Release(&location->IHTMLLocation_iface);
2620 return hres;
2621 }
2622
2623 return IDispatchEx_InvokeEx(&window->event_target.dispex.IDispatchEx_iface, id, lcid, wFlags, pdp, pvarRes, pei, pspCaller);
2624}
#define DISPID_IHTMLWINDOW2_LOCATION
Definition: mshtmdid.h:1845

◆ WindowDispEx_QueryInterface()

static HRESULT WINAPI WindowDispEx_QueryInterface ( IDispatchEx iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 2406 of file htmlwindow.c.

2407{
2409
2410 return IHTMLWindow2_QueryInterface(&This->IHTMLWindow2_iface, riid, ppv);
2411}

◆ WindowDispEx_Release()

static ULONG WINAPI WindowDispEx_Release ( IDispatchEx iface)
static

Definition at line 2420 of file htmlwindow.c.

2421{
2423
2424 return IHTMLWindow2_Release(&This->IHTMLWindow2_iface);
2425}

Variable Documentation

◆ HTMLPrivateWindowVtbl

const IHTMLPrivateWindowVtbl HTMLPrivateWindowVtbl
static
Initial value:
= {
}
static ULONG WINAPI HTMLPrivateWindow_Release(IHTMLPrivateWindow *iface)
Definition: htmlwindow.c:2184
static ULONG WINAPI HTMLPrivateWindow_AddRef(IHTMLPrivateWindow *iface)
Definition: htmlwindow.c:2177
static HRESULT WINAPI HTMLPrivateWindow_FindWindowByName(IHTMLPrivateWindow *iface, LPCWSTR name, IHTMLWindow2 **ret)
Definition: htmlwindow.c:2260
static HRESULT WINAPI HTMLPrivateWindow_QueryInterface(IHTMLPrivateWindow *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:2170
static HRESULT WINAPI HTMLPrivateWindow_GetAddressBarUrl(IHTMLPrivateWindow *iface, BSTR *url)
Definition: htmlwindow.c:2267
static HRESULT WINAPI HTMLPrivateWindow_PICSComplete(IHTMLPrivateWindow *iface, int arg)
Definition: htmlwindow.c:2253
static HRESULT WINAPI HTMLPrivateWindow_SetPICSTarget(IHTMLPrivateWindow *iface, IOleCommandTarget *cmdtrg)
Definition: htmlwindow.c:2246
static HRESULT WINAPI HTMLPrivateWindow_GetPendingUrl(IHTMLPrivateWindow *iface, BSTR *url)
Definition: htmlwindow.c:2239
static HRESULT WINAPI HTMLPrivateWindow_SuperNavigate(IHTMLPrivateWindow *iface, BSTR url, BSTR arg2, BSTR arg3, BSTR arg4, VARIANT *post_data_var, VARIANT *headers_var, ULONG flags)
Definition: htmlwindow.c:2191

Definition at line 2279 of file htmlwindow.c.

Referenced by alloc_window().

◆ HTMLWindow2Vtbl

const IHTMLWindow2Vtbl HTMLWindow2Vtbl
static

Definition at line 1463 of file htmlwindow.c.

Referenced by alloc_window().

◆ HTMLWindow3Vtbl

const IHTMLWindow3Vtbl HTMLWindow3Vtbl
static
Initial value:
= {
}
static ULONG WINAPI HTMLWindow3_AddRef(IHTMLWindow3 *iface)
Definition: htmlwindow.c:1555
static HRESULT WINAPI HTMLWindow3_get_onafterprint(IHTMLWindow3 *iface, VARIANT *p)
Definition: htmlwindow.c:1744
static HRESULT WINAPI HTMLWindow3_get_screenLeft(IHTMLWindow3 *iface, LONG *p)
Definition: htmlwindow.c:1604
static ULONG WINAPI HTMLWindow3_Release(IHTMLWindow3 *iface)
Definition: htmlwindow.c:1562
static HRESULT WINAPI HTMLWindow3_get_screenTop(IHTMLWindow3 *iface, LONG *p)
Definition: htmlwindow.c:1620
static HRESULT WINAPI HTMLWindow3_put_onafterprint(IHTMLWindow3 *iface, VARIANT v)
Definition: htmlwindow.c:1737
static HRESULT WINAPI HTMLWindow3_attachEvent(IHTMLWindow3 *iface, BSTR event, IDispatch *pDisp, VARIANT_BOOL *pfResult)
Definition: htmlwindow.c:1636
static HRESULT WINAPI HTMLWindow3_setInterval(IHTMLWindow3 *iface, VARIANT *expression, LONG msec, VARIANT *language, LONG *timerID)
Definition: htmlwindow.c:1706
static HRESULT WINAPI HTMLWindow3_GetIDsOfNames(IHTMLWindow3 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: htmlwindow.c:1584
static HRESULT WINAPI HTMLWindow3_Invoke(IHTMLWindow3 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: htmlwindow.c:1594
static HRESULT WINAPI HTMLWindow3_setTimeout(IHTMLWindow3 *iface, VARIANT *expression, LONG msec, VARIANT *language, LONG *timerID)
Definition: htmlwindow.c:1696
static HRESULT WINAPI HTMLWindow3_print(IHTMLWindow3 *iface)
Definition: htmlwindow.c:1716
static HRESULT WINAPI HTMLWindow3_showModelessDialog(IHTMLWindow3 *iface, BSTR url, VARIANT *varArgIn, VARIANT *options, IHTMLWindow2 **pDialog)
Definition: htmlwindow.c:1758
static HRESULT WINAPI HTMLWindow3_QueryInterface(IHTMLWindow3 *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:1548
static HRESULT WINAPI HTMLWindow3_detachEvent(IHTMLWindow3 *iface, BSTR event, IDispatch *pDisp)
Definition: htmlwindow.c:1651
static HRESULT WINAPI HTMLWindow3_GetTypeInfo(IHTMLWindow3 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: htmlwindow.c:1576
static HRESULT WINAPI HTMLWindow3_get_clipboardData(IHTMLWindow3 *iface, IHTMLDataTransfer **p)
Definition: htmlwindow.c:1751
static HRESULT WINAPI HTMLWindow3_put_onbeforeprint(IHTMLWindow3 *iface, VARIANT v)
Definition: htmlwindow.c:1723
static HRESULT WINAPI HTMLWindow3_get_onbeforeprint(IHTMLWindow3 *iface, VARIANT *p)
Definition: htmlwindow.c:1730
static HRESULT WINAPI HTMLWindow3_GetTypeInfoCount(IHTMLWindow3 *iface, UINT *pctinfo)
Definition: htmlwindow.c:1569

Definition at line 1766 of file htmlwindow.c.

Referenced by alloc_window().

◆ HTMLWindow4Vtbl

const IHTMLWindow4Vtbl HTMLWindow4Vtbl
static
Initial value:
= {
}
static HRESULT WINAPI HTMLWindow4_GetIDsOfNames(IHTMLWindow4 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: htmlwindow.c:1830
static HRESULT WINAPI HTMLWindow4_Invoke(IHTMLWindow4 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: htmlwindow.c:1840
static ULONG WINAPI HTMLWindow4_AddRef(IHTMLWindow4 *iface)
Definition: htmlwindow.c:1801
static HRESULT WINAPI HTMLWindow4_get_frameElement(IHTMLWindow4 *iface, IHTMLFrameBase **p)
Definition: htmlwindow.c:1858
static HRESULT WINAPI HTMLWindow4_QueryInterface(IHTMLWindow4 *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:1794
static HRESULT WINAPI HTMLWindow4_GetTypeInfo(IHTMLWindow4 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: htmlwindow.c:1822
static HRESULT WINAPI HTMLWindow4_GetTypeInfoCount(IHTMLWindow4 *iface, UINT *pctinfo)
Definition: htmlwindow.c:1815
static ULONG WINAPI HTMLWindow4_Release(IHTMLWindow4 *iface)
Definition: htmlwindow.c:1808
static HRESULT WINAPI HTMLWindow4_createPopup(IHTMLWindow4 *iface, VARIANT *varArgIn, IDispatch **ppPopup)
Definition: htmlwindow.c:1850

Definition at line 1872 of file htmlwindow.c.

Referenced by alloc_window().

◆ HTMLWindow5Vtbl

const IHTMLWindow5Vtbl HTMLWindow5Vtbl
static
Initial value:
= {
}
static HRESULT WINAPI HTMLWindow5_GetTypeInfoCount(IHTMLWindow5 *iface, UINT *pctinfo)
Definition: htmlwindow.c:1910
static HRESULT WINAPI HTMLWindow5_GetIDsOfNames(IHTMLWindow5 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: htmlwindow.c:1925
static HRESULT WINAPI HTMLWindow5_QueryInterface(IHTMLWindow5 *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:1889
static HRESULT WINAPI HTMLWindow5_get_XMLHttpRequest(IHTMLWindow5 *iface, VARIANT *p)
Definition: htmlwindow.c:1951
static ULONG WINAPI HTMLWindow5_AddRef(IHTMLWindow5 *iface)
Definition: htmlwindow.c:1896
static ULONG WINAPI HTMLWindow5_Release(IHTMLWindow5 *iface)
Definition: htmlwindow.c:1903
static HRESULT WINAPI HTMLWindow5_put_XMLHttpRequest(IHTMLWindow5 *iface, VARIANT v)
Definition: htmlwindow.c:1944
static HRESULT WINAPI HTMLWindow5_GetTypeInfo(IHTMLWindow5 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: htmlwindow.c:1917
static HRESULT WINAPI HTMLWindow5_Invoke(IHTMLWindow5 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: htmlwindow.c:1934

Definition at line 1974 of file htmlwindow.c.

Referenced by alloc_window().

◆ HTMLWindow6Vtbl

const IHTMLWindow6Vtbl HTMLWindow6Vtbl
static
Initial value:
= {
}
static HRESULT WINAPI HTMLWindow6_get_sessionStorage(IHTMLWindow6 *iface, IHTMLStorage **p)
Definition: htmlwindow.c:2061
static HRESULT WINAPI HTMLWindow6_msWriteProfilerMark(IHTMLWindow6 *iface, BSTR bstrProfilerMark)
Definition: htmlwindow.c:2136
static HRESULT WINAPI HTMLWindow6_GetIDsOfNames(IHTMLWindow6 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: htmlwindow.c:2027
static HRESULT WINAPI HTMLWindow6_put_XDomainRequest(IHTMLWindow6 *iface, VARIANT v)
Definition: htmlwindow.c:2047
static HRESULT WINAPI HTMLWindow6_get_localStorage(IHTMLWindow6 *iface, IHTMLStorage **p)
Definition: htmlwindow.c:2080
static ULONG WINAPI HTMLWindow6_AddRef(IHTMLWindow6 *iface)
Definition: htmlwindow.c:1998
static HRESULT WINAPI HTMLWindow6_GetTypeInfo(IHTMLWindow6 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: htmlwindow.c:2019
static ULONG WINAPI HTMLWindow6_Release(IHTMLWindow6 *iface)
Definition: htmlwindow.c:2005
static HRESULT WINAPI HTMLWindow6_get_XDomainRequest(IHTMLWindow6 *iface, VARIANT *p)
Definition: htmlwindow.c:2054
static HRESULT WINAPI HTMLWindow6_get_maxConnectionsPerServer(IHTMLWindow6 *iface, LONG *p)
Definition: htmlwindow.c:2101
static HRESULT WINAPI HTMLWindow6_get_onmessage(IHTMLWindow6 *iface, VARIANT *p)
Definition: htmlwindow.c:2129
static HRESULT WINAPI HTMLWindow6_Invoke(IHTMLWindow6 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: htmlwindow.c:2037
static HRESULT WINAPI HTMLWindow6_toStaticHTML(IHTMLWindow6 *iface, BSTR bstrHTML, BSTR *pbstrStaticHTML)
Definition: htmlwindow.c:2115
static HRESULT WINAPI HTMLWindow6_QueryInterface(IHTMLWindow6 *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:1991
static HRESULT WINAPI HTMLWindow6_GetTypeInfoCount(IHTMLWindow6 *iface, UINT *pctinfo)
Definition: htmlwindow.c:2012
static HRESULT WINAPI HTMLWindow6_put_onmessage(IHTMLWindow6 *iface, VARIANT v)
Definition: htmlwindow.c:2122
static HRESULT WINAPI HTMLWindow6_put_onhashchange(IHTMLWindow6 *iface, VARIANT v)
Definition: htmlwindow.c:2087
static HRESULT WINAPI HTMLWindow6_get_onhashchange(IHTMLWindow6 *iface, VARIANT *p)
Definition: htmlwindow.c:2094
static HRESULT WINAPI HTMLWindow6_postMessage(IHTMLWindow6 *iface, BSTR msg, VARIANT targetOrigin)
Definition: htmlwindow.c:2108

Definition at line 2143 of file htmlwindow.c.

Referenced by alloc_window().

◆ HTMLWindow_dispex

dispex_static_data_t HTMLWindow_dispex
static
Initial value:
= {
DispHTMLWindow2_tid,
}
static const dispex_static_data_vtbl_t HTMLWindow_dispex_vtbl
Definition: htmlwindow.c:2870
static const tid_t HTMLWindow_iface_tids[]
Definition: htmlwindow.c:2879

Definition at line 2887 of file htmlwindow.c.

Referenced by create_inner_window().

◆ HTMLWindow_dispex_vtbl

const dispex_static_data_vtbl_t HTMLWindow_dispex_vtbl
static
Initial value:
= {
}
static void HTMLWindow_bind_event(DispatchEx *dispex, int eid)
Definition: htmlwindow.c:2864
static event_target_t ** HTMLWindow_get_event_target_ptr(DispatchEx *dispex)
Definition: htmlwindow.c:2858
static HRESULT HTMLWindow_invoke(DispatchEx *dispex, DISPID id, LCID lcid, WORD flags, DISPPARAMS *params, VARIANT *res, EXCEPINFO *ei, IServiceProvider *caller)
Definition: htmlwindow.c:2753

Definition at line 2870 of file htmlwindow.c.

◆ HTMLWindow_iface_tids

const tid_t HTMLWindow_iface_tids[]
static
Initial value:
= {
IHTMLWindow2_tid,
IHTMLWindow3_tid,
IHTMLWindow4_tid,
IHTMLWindow6_tid,
0
}

Definition at line 2879 of file htmlwindow.c.

◆ ObjectIdentityVtbl

const IObjectIdentityVtbl ObjectIdentityVtbl
static
Initial value:
= {
}
static ULONG WINAPI ObjectIdentity_AddRef(IObjectIdentity *iface)
Definition: htmlwindow.c:2362
static HRESULT WINAPI ObjectIdentity_QueryInterface(IObjectIdentity *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:2355
static ULONG WINAPI ObjectIdentity_Release(IObjectIdentity *iface)
Definition: htmlwindow.c:2369
static HRESULT WINAPI ObjectIdentity_IsEqualObject(IObjectIdentity *iface, IUnknown *unk)
Definition: htmlwindow.c:2376

Definition at line 2394 of file htmlwindow.c.

Referenced by alloc_window().

◆ ServiceProviderVtbl

const IServiceProviderVtbl ServiceProviderVtbl
static
Initial value:
= {
}
static HRESULT WINAPI HTMLWindowSP_QueryService(IServiceProvider *iface, REFGUID guidService, REFIID riid, void **ppv)
Definition: htmlwindow.c:2723
static ULONG WINAPI HTMLWindowSP_AddRef(IServiceProvider *iface)
Definition: htmlwindow.c:2711
static HRESULT WINAPI HTMLWindowSP_QueryInterface(IServiceProvider *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:2705
static ULONG WINAPI HTMLWindowSP_Release(IServiceProvider *iface)
Definition: htmlwindow.c:2717

Definition at line 2741 of file htmlwindow.c.

Referenced by alloc_window().

◆ TravelLogClientVtbl

const ITravelLogClientVtbl TravelLogClientVtbl
static
Initial value:
= {
}
static ULONG WINAPI TravelLogClient_AddRef(ITravelLogClient *iface)
Definition: htmlwindow.c:2303
static ULONG WINAPI TravelLogClient_Release(ITravelLogClient *iface)
Definition: htmlwindow.c:2310
static HRESULT WINAPI TravelLogClient_GetWindowData(ITravelLogClient *iface, IStream *pStream, LPWINDOWDATA pWinData)
Definition: htmlwindow.c:2327
static HRESULT WINAPI TravelLogClient_QueryInterface(ITravelLogClient *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:2296
static HRESULT WINAPI TravelLogClient_FindWindowByIndex(ITravelLogClient *iface, DWORD dwID, IUnknown **ppunk)
Definition: htmlwindow.c:2317
static HRESULT WINAPI TravelLogClient_LoadHistoryPosition(ITravelLogClient *iface, LPWSTR pszUrlLocation, DWORD dwPosition)
Definition: htmlwindow.c:2334

Definition at line 2341 of file htmlwindow.c.

Referenced by alloc_window().

◆ window_list

struct list window_list = LIST_INIT(window_list)
static

Definition at line 23 of file htmlwindow.c.

Referenced by HTMLOuterWindow_Create(), and nswindow_to_window().

◆ WindowDispExVtbl

const IDispatchExVtbl WindowDispExVtbl
static
Initial value:
= {
}
static HRESULT WINAPI WindowDispEx_InvokeEx(IDispatchEx *iface, DISPID id, LCID lcid, WORD wFlags, DISPPARAMS *pdp, VARIANT *pvarRes, EXCEPINFO *pei, IServiceProvider *pspCaller)
Definition: htmlwindow.c:2599
static HRESULT WINAPI WindowDispEx_GetIDsOfNames(IDispatchEx *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: htmlwindow.c:2446
static HRESULT WINAPI WindowDispEx_GetNameSpaceParent(IDispatchEx *iface, IUnknown **ppunk)
Definition: htmlwindow.c:2672
static ULONG WINAPI WindowDispEx_Release(IDispatchEx *iface)
Definition: htmlwindow.c:2420
static HRESULT WINAPI WindowDispEx_Invoke(IDispatchEx *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: htmlwindow.c:2466
static HRESULT WINAPI WindowDispEx_GetTypeInfo(IDispatchEx *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: htmlwindow.c:2436
static HRESULT WINAPI WindowDispEx_DeleteMemberByName(IDispatchEx *iface, BSTR bstrName, DWORD grfdex)
Definition: htmlwindow.c:2626
static HRESULT WINAPI WindowDispEx_GetMemberProperties(IDispatchEx *iface, DISPID id, DWORD grfdexFetch, DWORD *pgrfdex)
Definition: htmlwindow.c:2644
static HRESULT WINAPI WindowDispEx_GetMemberName(IDispatchEx *iface, DISPID id, BSTR *pbstrName)
Definition: htmlwindow.c:2654
static HRESULT WINAPI WindowDispEx_QueryInterface(IDispatchEx *iface, REFIID riid, void **ppv)
Definition: htmlwindow.c:2406
static HRESULT WINAPI WindowDispEx_GetDispID(IDispatchEx *iface, BSTR bstrName, DWORD grfdex, DISPID *pid)
Definition: htmlwindow.c:2544
static HRESULT WINAPI WindowDispEx_GetTypeInfoCount(IDispatchEx *iface, UINT *pctinfo)
Definition: htmlwindow.c:2427
static HRESULT WINAPI WindowDispEx_GetNextDispID(IDispatchEx *iface, DWORD grfdex, DISPID id, DISPID *pid)
Definition: htmlwindow.c:2663
static HRESULT WINAPI WindowDispEx_DeleteMemberByDispID(IDispatchEx *iface, DISPID id)
Definition: htmlwindow.c:2635
static ULONG WINAPI WindowDispEx_AddRef(IDispatchEx *iface)
Definition: htmlwindow.c:2413

Definition at line 2682 of file htmlwindow.c.

Referenced by alloc_window().