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
71d07da2
Commit
71d07da2
authored
Feb 22, 2008
by
Jacek Caban
Committed by
Alexandre Julliard
Feb 25, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
shdocvw: Added WebBrowser::TheaterMode implementation.
parent
89069761
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
57 additions
and
4 deletions
+57
-4
shdocvw.h
dlls/shdocvw/shdocvw.h
+1
-0
webbrowser.c
dlls/shdocvw/tests/webbrowser.c
+35
-0
webbrowser.c
dlls/shdocvw/webbrowser.c
+21
-4
No files found.
dlls/shdocvw/shdocvw.h
View file @
71d07da2
...
...
@@ -144,6 +144,7 @@ struct WebBrowser {
VARIANT_BOOL
status_bar
;
VARIANT_BOOL
tool_bar
;
VARIANT_BOOL
full_screen
;
VARIANT_BOOL
theater_mode
;
DocHost
doc_host
;
};
...
...
dlls/shdocvw/tests/webbrowser.c
View file @
71d07da2
...
...
@@ -89,6 +89,7 @@ DEFINE_EXPECT(Invoke_ONADDRESSBAR);
DEFINE_EXPECT
(
Invoke_ONSTATUSBAR
);
DEFINE_EXPECT
(
Invoke_ONTOOLBAR
);
DEFINE_EXPECT
(
Invoke_ONFULLSCREEN
);
DEFINE_EXPECT
(
Invoke_ONTHEATERMODE
);
DEFINE_EXPECT
(
Invoke_WINDOWSETRESIZABLE
);
DEFINE_EXPECT
(
EnableModeless_TRUE
);
DEFINE_EXPECT
(
EnableModeless_FALSE
);
...
...
@@ -620,6 +621,11 @@ static HRESULT WINAPI WebBrowserEvents2_Invoke(IDispatch *iface, DISPID dispIdMe
test_invoke_bool
(
pDispParams
);
break
;
case
DISPID_ONTHEATERMODE
:
CHECK_EXPECT
(
Invoke_ONTHEATERMODE
);
test_invoke_bool
(
pDispParams
);
break
;
case
DISPID_WINDOWSETRESIZABLE
:
CHECK_EXPECT
(
Invoke_WINDOWSETRESIZABLE
);
test_invoke_bool
(
pDispParams
);
...
...
@@ -1575,6 +1581,35 @@ static void test_ie_funcs(IUnknown *unk)
ok
(
hres
==
S_OK
,
"put_FullScreen failed: %08x
\n
"
,
hres
);
CHECK_CALLED
(
Invoke_ONFULLSCREEN
);
/* TheaterMode */
hres
=
IWebBrowser2_get_TheaterMode
(
wb
,
&
b
);
ok
(
hres
==
S_OK
,
"get_TheaterMode failed: %08x
\n
"
,
hres
);
ok
(
b
==
VARIANT_FALSE
,
"b=%x
\n
"
,
b
);
SET_EXPECT
(
Invoke_ONTHEATERMODE
);
hres
=
IWebBrowser2_put_TheaterMode
(
wb
,
(
exvb
=
VARIANT_TRUE
));
ok
(
hres
==
S_OK
,
"put_TheaterMode failed: %08x
\n
"
,
hres
);
CHECK_CALLED
(
Invoke_ONTHEATERMODE
);
hres
=
IWebBrowser2_get_TheaterMode
(
wb
,
&
b
);
ok
(
hres
==
S_OK
,
"get_TheaterMode failed: %08x
\n
"
,
hres
);
ok
(
b
==
VARIANT_TRUE
,
"b=%x
\n
"
,
b
);
SET_EXPECT
(
Invoke_ONTHEATERMODE
);
hres
=
IWebBrowser2_put_TheaterMode
(
wb
,
(
exvb
=
100
));
ok
(
hres
==
S_OK
,
"put_TheaterMode failed: %08x
\n
"
,
hres
);
CHECK_CALLED
(
Invoke_ONTHEATERMODE
);
hres
=
IWebBrowser2_get_TheaterMode
(
wb
,
&
b
);
ok
(
hres
==
S_OK
,
"get_TheaterMode failed: %08x
\n
"
,
hres
);
ok
(
b
==
VARIANT_TRUE
,
"b=%x
\n
"
,
b
);
SET_EXPECT
(
Invoke_ONTHEATERMODE
);
hres
=
IWebBrowser2_put_TheaterMode
(
wb
,
(
exvb
=
VARIANT_FALSE
));
ok
(
hres
==
S_OK
,
"put_TheaterMode failed: %08x
\n
"
,
hres
);
CHECK_CALLED
(
Invoke_ONTHEATERMODE
);
/* Resizable */
b
=
0x100
;
...
...
dlls/shdocvw/webbrowser.c
View file @
71d07da2
...
...
@@ -817,15 +817,31 @@ static HRESULT WINAPI WebBrowser_put_RegisterAsDropTarget(IWebBrowser2 *iface,
static
HRESULT
WINAPI
WebBrowser_get_TheaterMode
(
IWebBrowser2
*
iface
,
VARIANT_BOOL
*
pbRegister
)
{
WebBrowser
*
This
=
WEBBROWSER_THIS
(
iface
);
FIXME
(
"(%p)->(%p)
\n
"
,
This
,
pbRegister
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%p)
\n
"
,
This
,
pbRegister
);
*
pbRegister
=
This
->
theater_mode
;
return
S_OK
;
}
static
HRESULT
WINAPI
WebBrowser_put_TheaterMode
(
IWebBrowser2
*
iface
,
VARIANT_BOOL
bRegister
)
{
WebBrowser
*
This
=
WEBBROWSER_THIS
(
iface
);
FIXME
(
"(%p)->(%x)
\n
"
,
This
,
bRegister
);
return
E_NOTIMPL
;
VARIANTARG
arg
;
DISPPARAMS
dispparams
=
{
&
arg
,
NULL
,
1
,
0
};
TRACE
(
"(%p)->(%x)
\n
"
,
This
,
bRegister
);
This
->
theater_mode
=
bRegister
?
VARIANT_TRUE
:
VARIANT_FALSE
;
/* In opposition to InternetExplorer, all we should do here is
* inform the embedder about the theater mode change. */
V_VT
(
&
arg
)
=
VT_BOOL
;
V_BOOL
(
&
arg
)
=
bRegister
;
call_sink
(
This
->
doc_host
.
cps
.
wbe2
,
DISPID_ONTHEATERMODE
,
&
dispparams
);
return
S_OK
;
}
static
HRESULT
WINAPI
WebBrowser_get_AddressBar
(
IWebBrowser2
*
iface
,
VARIANT_BOOL
*
Value
)
...
...
@@ -984,6 +1000,7 @@ static HRESULT WebBrowser_Create(INT version, IUnknown *pOuter, REFIID riid, voi
ret
->
status_bar
=
VARIANT_TRUE
;
ret
->
tool_bar
=
VARIANT_TRUE
;
ret
->
full_screen
=
VARIANT_FALSE
;
ret
->
theater_mode
=
VARIANT_FALSE
;
WebBrowser_OleObject_Init
(
ret
);
WebBrowser_ViewObject_Init
(
ret
);
...
...
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