mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 12:38:12 +00:00
LibWeb: Add missing properties from latest spec in SessionHistoryEntry
Adds step and document_state properties. Both will be required for further navigables spec implementation. Co-authored-by: Andreas Kling <kling@serenityos.org>
This commit is contained in:
parent
1df52ea94c
commit
aa33a3381b
2 changed files with 15 additions and 6 deletions
|
@ -4,7 +4,8 @@
|
|||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#include <LibWeb/DOM/Document.h>
|
||||
#include <LibWeb/HTML/BrowsingContext.h>
|
||||
#include <LibWeb/HTML/DocumentState.h>
|
||||
#include <LibWeb/HTML/SessionHistoryEntry.h>
|
||||
|
||||
namespace Web::HTML {
|
||||
|
@ -12,7 +13,7 @@ namespace Web::HTML {
|
|||
void SessionHistoryEntry::visit_edges(Cell::Visitor& visitor)
|
||||
{
|
||||
Base::visit_edges(visitor);
|
||||
visitor.visit(document);
|
||||
visitor.visit(document_state);
|
||||
visitor.visit(original_source_browsing_context);
|
||||
}
|
||||
|
||||
|
|
|
@ -36,22 +36,30 @@ struct SessionHistoryEntry final : public JS::Cell {
|
|||
AK::URL url;
|
||||
|
||||
// document, a Document or null
|
||||
// FIXME: this property is not present in the spec anymore and should be gone after introducing navigables
|
||||
JS::GCPtr<DOM::Document> document;
|
||||
|
||||
// serialized state, which is serialized state or null, initially null
|
||||
// https://html.spec.whatwg.org/multipage/browsing-the-web.html#she-document-state
|
||||
JS::GCPtr<HTML::DocumentState> document_state;
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/browsing-the-web.html#she-serialized-state
|
||||
// serialized state, which is serialized state, initially StructuredSerializeForStorage(null).
|
||||
Optional<DeprecatedString> serialized_state;
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/browsing-the-web.html#she-scroll-restoration-mode
|
||||
// scroll restoration mode, a scroll restoration mode, initially "auto"
|
||||
ScrollRestorationMode scroll_restoration_mode { ScrollRestorationMode::Auto };
|
||||
|
||||
// policy container, a policy container or null
|
||||
Optional<PolicyContainer> policy_container;
|
||||
|
||||
// scroll restoration mode, a scroll restoration mode, initially "auto"
|
||||
ScrollRestorationMode scroll_restoration_mode { ScrollRestorationMode::Auto };
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/browsing-the-web.html#she-scroll-position
|
||||
// FIXME: scroll position data, which is scroll position data for the document's restorable scrollable regions
|
||||
|
||||
// browsing context name, a browsing context name or null, initially null
|
||||
Optional<DeprecatedString> browsing_context_name;
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/browsing-the-web.html#she-other
|
||||
// FIXME: persisted user state, which is implementation-defined, initially null
|
||||
// NOTE: This is where we could remember the state of form controls, for example.
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue