Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
e5dbfad5
Commit
e5dbfad5
authored
Sep 18, 2023
by
Gabriel Ivăncescu
Committed by
Alexandre Julliard
Sep 18, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mshtml: Move some FrameElement methods down.
Signed-off-by:
Gabriel Ivăncescu
<
gabrielopcode@gmail.com
>
parent
3ae610ad
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
54 additions
and
55 deletions
+54
-55
htmlframe.c
dlls/mshtml/htmlframe.c
+54
-55
No files found.
dlls/mshtml/htmlframe.c
View file @
e5dbfad5
...
...
@@ -887,23 +887,6 @@ static inline HTMLFrameElement *frame_from_HTMLDOMNode(HTMLDOMNode *iface)
return
CONTAINING_RECORD
(
iface
,
HTMLFrameElement
,
framebase
.
element
.
node
);
}
static
void
*
HTMLFrameElement_QI
(
HTMLDOMNode
*
iface
,
REFIID
riid
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
if
(
IsEqualGUID
(
&
IID_IHTMLFrameElement3
,
riid
))
return
&
This
->
IHTMLFrameElement3_iface
;
return
HTMLFrameBase_QI
(
&
This
->
framebase
,
riid
);
}
static
void
HTMLFrameElement_destructor
(
HTMLDOMNode
*
iface
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
HTMLFrameBase_destructor
(
&
This
->
framebase
);
}
static
HRESULT
HTMLFrameElement_get_document
(
HTMLDOMNode
*
iface
,
IDispatch
**
p
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
...
...
@@ -925,44 +908,6 @@ static HRESULT HTMLFrameElement_get_readystate(HTMLDOMNode *iface, BSTR *p)
return
IHTMLFrameBase2_get_readyState
(
&
This
->
framebase
.
IHTMLFrameBase2_iface
,
p
);
}
static
HRESULT
HTMLFrameElement_get_dispid
(
HTMLDOMNode
*
iface
,
BSTR
name
,
DWORD
grfdex
,
DISPID
*
pid
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
if
(
!
This
->
framebase
.
content_window
)
return
DISP_E_UNKNOWNNAME
;
return
search_window_props
(
This
->
framebase
.
content_window
->
base
.
inner_window
,
name
,
grfdex
,
pid
);
}
static
HRESULT
HTMLFrameElement_get_name
(
HTMLDOMNode
*
iface
,
DISPID
id
,
BSTR
*
name
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
DWORD
idx
=
id
-
MSHTML_DISPID_CUSTOM_MIN
;
if
(
!
This
->
framebase
.
content_window
||
idx
>=
This
->
framebase
.
content_window
->
base
.
inner_window
->
global_prop_cnt
)
return
DISP_E_MEMBERNOTFOUND
;
*
name
=
SysAllocString
(
This
->
framebase
.
content_window
->
base
.
inner_window
->
global_props
[
idx
].
name
);
return
*
name
?
S_OK
:
E_OUTOFMEMORY
;
}
static
HRESULT
HTMLFrameElement_invoke
(
HTMLDOMNode
*
iface
,
DISPID
id
,
LCID
lcid
,
WORD
flags
,
DISPPARAMS
*
params
,
VARIANT
*
res
,
EXCEPINFO
*
ei
,
IServiceProvider
*
caller
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
if
(
!
This
->
framebase
.
content_window
)
{
ERR
(
"no content window to invoke on
\n
"
);
return
E_FAIL
;
}
return
IDispatchEx_InvokeEx
(
&
This
->
framebase
.
content_window
->
base
.
IDispatchEx_iface
,
id
,
lcid
,
flags
,
params
,
res
,
ei
,
caller
);
}
static
HRESULT
HTMLFrameElement_bind_to_tree
(
HTMLDOMNode
*
iface
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
...
...
@@ -986,6 +931,16 @@ static inline HTMLFrameElement *frame_from_DispatchEx(DispatchEx *iface)
return
CONTAINING_RECORD
(
iface
,
HTMLFrameElement
,
framebase
.
element
.
node
.
event_target
.
dispex
);
}
static
void
*
HTMLFrameElement_QI
(
HTMLDOMNode
*
iface
,
REFIID
riid
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
if
(
IsEqualGUID
(
&
IID_IHTMLFrameElement3
,
riid
))
return
&
This
->
IHTMLFrameElement3_iface
;
return
HTMLFrameBase_QI
(
&
This
->
framebase
,
riid
);
}
static
void
HTMLFrameElement_traverse
(
DispatchEx
*
dispex
,
nsCycleCollectionTraversalCallback
*
cb
)
{
HTMLFrameElement
*
This
=
frame_from_DispatchEx
(
dispex
);
...
...
@@ -1002,6 +957,50 @@ static void HTMLFrameElement_unlink(DispatchEx *dispex)
unlink_ref
(
&
This
->
framebase
.
nsframe
);
}
static
void
HTMLFrameElement_destructor
(
HTMLDOMNode
*
iface
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
HTMLFrameBase_destructor
(
&
This
->
framebase
);
}
static
HRESULT
HTMLFrameElement_get_dispid
(
HTMLDOMNode
*
iface
,
BSTR
name
,
DWORD
grfdex
,
DISPID
*
dispid
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
if
(
!
This
->
framebase
.
content_window
)
return
DISP_E_UNKNOWNNAME
;
return
search_window_props
(
This
->
framebase
.
content_window
->
base
.
inner_window
,
name
,
grfdex
,
dispid
);
}
static
HRESULT
HTMLFrameElement_get_name
(
HTMLDOMNode
*
iface
,
DISPID
id
,
BSTR
*
name
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
DWORD
idx
=
id
-
MSHTML_DISPID_CUSTOM_MIN
;
if
(
!
This
->
framebase
.
content_window
||
idx
>=
This
->
framebase
.
content_window
->
base
.
inner_window
->
global_prop_cnt
)
return
DISP_E_MEMBERNOTFOUND
;
*
name
=
SysAllocString
(
This
->
framebase
.
content_window
->
base
.
inner_window
->
global_props
[
idx
].
name
);
return
*
name
?
S_OK
:
E_OUTOFMEMORY
;
}
static
HRESULT
HTMLFrameElement_invoke
(
HTMLDOMNode
*
iface
,
DISPID
id
,
LCID
lcid
,
WORD
flags
,
DISPPARAMS
*
params
,
VARIANT
*
res
,
EXCEPINFO
*
ei
,
IServiceProvider
*
caller
)
{
HTMLFrameElement
*
This
=
frame_from_HTMLDOMNode
(
iface
);
if
(
!
This
->
framebase
.
content_window
)
{
ERR
(
"no content window to invoke on
\n
"
);
return
E_FAIL
;
}
return
IDispatchEx_InvokeEx
(
&
This
->
framebase
.
content_window
->
base
.
IDispatchEx_iface
,
id
,
lcid
,
flags
,
params
,
res
,
ei
,
caller
);
}
static
const
NodeImplVtbl
HTMLFrameElementImplVtbl
=
{
.
clsid
=
&
CLSID_HTMLFrameElement
,
.
qi
=
HTMLFrameElement_QI
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment