1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 19:08:10 +00:00

LibWeb: Add a "page showing" flag to documents

This will be used to determine whether "pageshow" and "pagehide" events
are appropriate. We won't actually make use of it until we implement
more of history traversal and document unloading.
This commit is contained in:
Andreas Kling 2021-09-26 12:26:39 +02:00
parent a2f77a2e39
commit 508edcd217
2 changed files with 10 additions and 2 deletions

View file

@ -294,6 +294,9 @@ public:
--m_number_of_things_delaying_the_load_event; --m_number_of_things_delaying_the_load_event;
} }
bool page_showing() const { return m_page_showing; }
void set_page_showing(bool value) { m_page_showing = value; }
private: private:
explicit Document(const AK::URL&); explicit Document(const AK::URL&);
@ -378,6 +381,9 @@ private:
NonnullRefPtr<HTML::History> m_history; NonnullRefPtr<HTML::History> m_history;
size_t m_number_of_things_delaying_the_load_event { 0 }; size_t m_number_of_things_delaying_the_load_event { 0 };
// https://html.spec.whatwg.org/#page-showing
bool m_page_showing { false };
}; };
} }

View file

@ -261,9 +261,11 @@ void HTMLParser::the_end()
// FIXME: 8. Set the Document's load timing info's load event end time to the current high resolution time given window. // FIXME: 8. Set the Document's load timing info's load event end time to the current high resolution time given window.
// FIXME: 9. Assert: Document's page showing is false. // 9. Assert: Document's page showing is false.
VERIFY(!document->page_showing());
// FIXME: 10. Set the Document's page showing flag to true. // 10. Set the Document's page showing flag to true.
document->set_page_showing(true);
// FIXME: 11. Fire a page transition event named pageshow at window with false. // FIXME: 11. Fire a page transition event named pageshow at window with false.