Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
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-winehq
Commits
64b5d6b3
Commit
64b5d6b3
authored
Mar 22, 2019
by
Jacek Caban
Committed by
Alexandre Julliard
Mar 22, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mshtml: Add IHTMLWindow6::get_localStorage implementation.
Signed-off-by:
Jacek Caban
<
jacek@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
8c799991
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
28 additions
and
4 deletions
+28
-4
htmlwindow.c
dlls/mshtml/htmlwindow.c
+17
-3
mshtml_private.h
dlls/mshtml/mshtml_private.h
+1
-0
elements.js
dlls/mshtml/tests/elements.js
+10
-1
No files found.
dlls/mshtml/htmlwindow.c
View file @
64b5d6b3
...
@@ -295,6 +295,8 @@ static void release_inner_window(HTMLInnerWindow *This)
...
@@ -295,6 +295,8 @@ static void release_inner_window(HTMLInnerWindow *This)
if
(
This
->
session_storage
)
if
(
This
->
session_storage
)
IHTMLStorage_Release
(
This
->
session_storage
);
IHTMLStorage_Release
(
This
->
session_storage
);
if
(
This
->
local_storage
)
IHTMLStorage_Release
(
This
->
local_storage
);
if
(
This
->
mon
)
if
(
This
->
mon
)
IMoniker_Release
(
This
->
mon
);
IMoniker_Release
(
This
->
mon
);
...
@@ -2123,7 +2125,7 @@ static HRESULT WINAPI HTMLWindow6_get_sessionStorage(IHTMLWindow6 *iface, IHTMLS
...
@@ -2123,7 +2125,7 @@ static HRESULT WINAPI HTMLWindow6_get_sessionStorage(IHTMLWindow6 *iface, IHTMLS
{
{
HTMLWindow
*
This
=
impl_from_IHTMLWindow6
(
iface
);
HTMLWindow
*
This
=
impl_from_IHTMLWindow6
(
iface
);
FIXM
E
(
"(%p)->(%p)
\n
"
,
This
,
p
);
TRAC
E
(
"(%p)->(%p)
\n
"
,
This
,
p
);
if
(
!
This
->
inner_window
->
session_storage
)
{
if
(
!
This
->
inner_window
->
session_storage
)
{
HRESULT
hres
;
HRESULT
hres
;
...
@@ -2141,8 +2143,20 @@ static HRESULT WINAPI HTMLWindow6_get_sessionStorage(IHTMLWindow6 *iface, IHTMLS
...
@@ -2141,8 +2143,20 @@ static HRESULT WINAPI HTMLWindow6_get_sessionStorage(IHTMLWindow6 *iface, IHTMLS
static
HRESULT
WINAPI
HTMLWindow6_get_localStorage
(
IHTMLWindow6
*
iface
,
IHTMLStorage
**
p
)
static
HRESULT
WINAPI
HTMLWindow6_get_localStorage
(
IHTMLWindow6
*
iface
,
IHTMLStorage
**
p
)
{
{
HTMLWindow
*
This
=
impl_from_IHTMLWindow6
(
iface
);
HTMLWindow
*
This
=
impl_from_IHTMLWindow6
(
iface
);
FIXME
(
"(%p)->(%p)
\n
"
,
This
,
p
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%p)
\n
"
,
This
,
p
);
if
(
!
This
->
inner_window
->
local_storage
)
{
HRESULT
hres
;
hres
=
create_storage
(
&
This
->
inner_window
->
local_storage
);
if
(
FAILED
(
hres
))
return
hres
;
}
IHTMLStorage_AddRef
(
This
->
inner_window
->
local_storage
);
*
p
=
This
->
inner_window
->
local_storage
;
return
S_OK
;
}
}
static
HRESULT
WINAPI
HTMLWindow6_put_onhashchange
(
IHTMLWindow6
*
iface
,
VARIANT
v
)
static
HRESULT
WINAPI
HTMLWindow6_put_onhashchange
(
IHTMLWindow6
*
iface
,
VARIANT
v
)
...
...
dlls/mshtml/mshtml_private.h
View file @
64b5d6b3
...
@@ -515,6 +515,7 @@ struct HTMLInnerWindow {
...
@@ -515,6 +515,7 @@ struct HTMLInnerWindow {
IHTMLScreen
*
screen
;
IHTMLScreen
*
screen
;
OmHistory
*
history
;
OmHistory
*
history
;
IHTMLStorage
*
session_storage
;
IHTMLStorage
*
session_storage
;
IHTMLStorage
*
local_storage
;
BOOL
performance_initialized
;
BOOL
performance_initialized
;
VARIANT
performance
;
VARIANT
performance
;
...
...
dlls/mshtml/tests/elements.js
View file @
64b5d6b3
...
@@ -290,6 +290,14 @@ function test_style_properties() {
...
@@ -290,6 +290,14 @@ function test_style_properties() {
next_test
();
next_test
();
}
}
function
test_storage
()
{
ok
(
typeof
(
window
.
sessionStorage
)
===
"object"
,
"typeof(window.sessionStorage) = "
+
typeof
(
window
.
sessionStorage
));
ok
(
typeof
(
window
.
localStorage
)
===
"object"
,
"typeof(window.localStorage) = "
+
typeof
(
window
.
localStorage
));
next_test
();
}
var
tests
=
[
var
tests
=
[
test_input_selection
,
test_input_selection
,
test_textContent
,
test_textContent
,
...
@@ -301,5 +309,6 @@ var tests = [
...
@@ -301,5 +309,6 @@ var tests = [
test_query_selector
,
test_query_selector
,
test_compare_position
,
test_compare_position
,
test_document_owner
,
test_document_owner
,
test_style_properties
test_style_properties
,
test_storage
];
];
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