Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								2b3bc2654f 
								
							 
						 
						
							
							
								
								LibWeb: Mark Navigable as destroyed in destroy_top_level_traversable AO  
							
							... 
							
							
							
							Without this, a top level traversable might show up in settings we don't
want it to when accessing all_navigables, such as choose a navigable. 
							
						 
						
							2024-02-13 19:46:10 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								53273e2037 
								
							 
						 
						
							
							
								
								LibWeb: Don't navigate() to about:blank when making a fresh Traversable  
							
							... 
							
							
							
							This matches the behavior of the window open steps, and should probably
be a spec issue :yakplus: 
							
						 
						
							2024-02-08 15:53:46 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								813c66403d 
								
							 
						 
						
							
							
								
								LibWeb: Catch null browsing context in destroy_top_level_traversable  
							
							... 
							
							
							
							When WebDriver asks to destroy a window, we can hit this case with no
active browsing context. This seems odd, but perhaps is a spec issue as
well. Just log to dbgln for now. 
							
						 
						
							2024-02-05 08:05:48 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								36cd2fb7c5 
								
							 
						 
						
							
							
								
								Ladybird+WebContent: Update IPC calls to handle multiple traversables  
							
							... 
							
							
							
							The IPC layer between chromes and LibWeb now understands that multiple
top level traversables can live in each WebContent process.
This largely mechanical change adds a billion page_id/page_index
arguments to make sure that pages that end up opening new WebViews
through mechanisms like window.open() still work properly with those
extra windows. 
							
						 
						
							2024-02-03 20:51:37 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								4f088aff3d 
								
							 
						 
						
							
							
								
								LibWeb: Implement synchronous session history steps  
							
							
							
						 
						
							2024-01-19 11:47:59 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								346eb02659 
								
							 
						 
						
							
							
								
								LibWeb: Remove last substantial FIXMEs from Navigation API  
							
							
							
						 
						
							2024-01-19 11:47:59 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								6c1944ee61 
								
							 
						 
						
							
							
								
								LibWeb: Flesh out apply the history step to setup the navigation API  
							
							... 
							
							
							
							We now populate the navigation history entries in the navigation API and
fire more navigation events as appropriate. 
							
						 
						
							2024-01-19 11:47:59 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								a8091c009b 
								
							 
						 
						
							
							
								
								LibWeb: Add assorted AOs related to populating the navigation API's SHEs  
							
							
							
						 
						
							2024-01-19 11:47:59 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Shannon Booth 
								
							 
						 
						
							
							
							
							
								
							
							
								fd7be22653 
								
							 
						 
						
							
							
								
								LibWeb: Make TraversableNavigable store Page member as NonnullGCPtr  
							
							
							
						 
						
							2023-12-05 09:38:32 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								bfd354492e 
								
							 
						 
						
							
							
								
								LibWeb: Put most LibWeb GC objects in type-specific heap blocks  
							
							... 
							
							
							
							With this change, we now have ~1200 CellAllocators across both LibJS and
LibWeb in a normal WebContent instance.
This gives us a minimum heap size of 4.7 MiB in the scenario where we
only have one cell allocated per type. Of course, in practice there will
be many more of each type, so the effective overhead is quite a bit
smaller than that in practice.
I left a few types unconverted to this mechanism because I got tired of
doing this. :^) 
							
						 
						
							2023-11-19 22:00:48 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								38531ce7cf 
								
							 
						 
						
							
							
								
								LibWeb: Do not unload during same-document history step application  
							
							... 
							
							
							
							See https://github.com/whatwg/html/pull/9904  
							
						 
						
							2023-11-02 16:06:16 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								44f7d7406c 
								
							 
						 
						
							
							
								
								LibWeb: Use struct to pass Navigable::navigate() params  
							
							... 
							
							
							
							Using structs makes the navigate() calls looks cleaner. No change
in behavior is intended. 
							
						 
						
							2023-10-12 03:25:06 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Karol Kosek 
								
							 
						 
						
							
							
							
							
								
							
							
								426b7ffa41 
								
							 
						 
						
							
							
								
								LibWeb: Don't include Window.h in Element.h and Document.h  
							
							... 
							
							
							
							Window.h is a rather heavy file, so let's try not to include it in
header files when we can!
Element.h now also includes LibWeb/Bindings/Intrinsics.h, but that's
just out of my laziness. Most if not all objects call
`Bindings::ensure_web_prototype<>()` anyway, so I don't think we would
gain much by sticking the header to source files instead. 
							
						 
						
							2023-10-09 07:29:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								759ad905de 
								
							 
						 
						
							
							
								
								LibWeb: Remove FIXME about spec bug in page visibility  
							
							... 
							
							
							
							Because the spec bug got fixed \o/ 
							
						 
						
							2023-09-27 09:31:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								699ead0939 
								
							 
						 
						
							
							
								
								LibWeb: Start fleshing out update document for history step application  
							
							
							
						 
						
							2023-09-23 17:59:10 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								7e277797ad 
								
							 
						 
						
							
							
								
								LibWeb: Add about base url to the various AOs that construct documents  
							
							... 
							
							
							
							And some assorted cleanup along the way. The browsing context and
document AOs in particular need re-alignment with the spec. 
							
						 
						
							2023-09-22 19:45:11 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								dc0f7c4c54 
								
							 
						 
						
							
							
								
								LibWeb: Align NavigationParams and the creation AOs to the spec  
							
							... 
							
							
							
							And remove assorted spec FIXMEs along the way. Also align
populate_session_history_entry_document to the spec, with a bonus spec
bug to be filed.
This involves creating a new NonFetchSchemeNavigationParams spec, and
having the associated AOs take a Variant rather than Optional to
accomodate the fact that this extra struct could be returned by the
algorithm. We don't actually *do* anything with these params, but the
scaffolding is there now, with less TODOs. 
							
						 
						
							2023-09-22 19:45:11 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								38cb15ff49 
								
							 
						 
						
							
							
								
								LibWeb: Move system visibility state to TraversableNavigable  
							
							... 
							
							
							
							This no longer belongs in BrowsingContext. 
							
						 
						
							2023-09-20 18:29:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								51caa14381 
								
							 
						 
						
							
							
								
								LibWeb: Remove FrameLoader  
							
							... 
							
							
							
							This class is no longer used, now that we've moved to navigables. 
							
						 
						
							2023-09-20 18:29:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								7daa462ef8 
								
							 
						 
						
							
							
								
								LibWeb: Remove BrowsingContext::create_a_new_top_level_browsing_context  
							
							... 
							
							
							
							This call has been replaced by
`create_a_new_top_level_browsing_context_and_document`
after specification was refactored to use navigables. 
							
						 
						
							2023-09-16 16:53:32 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								c437f16cc1 
								
							 
						 
						
							
							
								
								LibWeb: Early return navigation process if navigable has been destroyed  
							
							... 
							
							
							
							If a navigable has been destroyed during a navigation process, we
should early return from it. The introduced checks are not in
the spec because, as explained in
https://github.com/whatwg/html/issues/9690  the spec is not written
with such a level of detail. 
							
						 
						
							2023-09-15 18:27:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								c20123378d 
								
							 
						 
						
							
							
								
								LibWeb: Add unloading of child navigables in "apply the history step"  
							
							... 
							
							
							
							Implements missing step from the spec. 
							
						 
						
							2023-09-15 18:27:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								2445205e9d 
								
							 
						 
						
							
							
								
								LibWeb: Align session history step application code with latest spec  
							
							... 
							
							
							
							Replaces direct "apply the history step" calls with new functions from
the spec:
- "update for navigable creation/destruction"
- "apply the push/replace history step"
- "apply the reload history step" 
							
						 
						
							2023-09-15 18:27:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								d3d2e56a68 
								
							 
						 
						
							
							
								
								LibWeb: Call set_ongoing_navigation() on navigable instead of this  
							
							... 
							
							
							
							This fixes incorrectly implemented spec when `set_ongoing_navigation()`
is called on `this` (=traversable) instead of `navigable` variable. 
							
						 
						
							2023-09-15 18:27:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								09013583f2 
								
							 
						 
						
							
							
								
								LibWeb: Add Navigable::set_ongoing_navigation()  
							
							
							
						 
						
							2023-09-13 21:35:52 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andrew Kaster 
								
							 
						 
						
							
							
							
							
								
							
							
								03eae09619 
								
							 
						 
						
							
							
								
								LibWeb: Implement snapshotting source snapshot params per the spec  
							
							
							
						 
						
							2023-08-28 09:47:11 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								343c709566 
								
							 
						 
						
							
							
								
								LibWeb: Add m_page in TraversableNavigable  
							
							
							
						 
						
							2023-08-22 20:30:06 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								5a704453af 
								
							 
						 
						
							
							
								
								LibWeb: Implement "close a top-level traversable"  
							
							
							
						 
						
							2023-08-22 20:30:06 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								d5adb7f10c 
								
							 
						 
						
							
							
								
								LibWeb: Implement "finalize a same-document navigation"  
							
							
							
						 
						
							2023-08-20 16:06:56 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								38c7703fe8 
								
							 
						 
						
							
							
								
								LibWeb: Add allowPOST param in populate_session_history_entry_document  
							
							
							
						 
						
							2023-08-14 17:46:46 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								08788072c1 
								
							 
						 
						
							
							
								
								LibWeb: Add SessionHistoryTraversalQueue  
							
							
							
						 
						
							2023-08-14 17:46:46 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ali Mohammad Pur 
								
							 
						 
						
							
							
							
							
								
							
							
								06c6c40df9 
								
							 
						 
						
							
							
								
								LibWeb+LibJS: Move some code around to make CSS/Parser parse faster  
							
							... 
							
							
							
							This makes it possible to include fewer full definitions of things,
which makes the file about 30% faster to compile. 
							
						 
						
							2023-07-11 09:38:37 +03:30 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								40e7f64433 
								
							 
						 
						
							
							
								
								LibWeb: Implement most of "destroy a top-level traversable"  
							
							... 
							
							
							
							Co-authored-by: Aliaksandr Kalenik <kalenik.aliaksandr@gmail.com> 
							
						 
						
							2023-06-21 16:26:44 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								ffd5b3da16 
								
							 
						 
						
							
							
								
								LibWeb: Implement reload for navigables  
							
							
							
						 
						
							2023-06-20 18:30:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								aafa09e7a5 
								
							 
						 
						
							
							
								
								LibWeb: Implement "traverse the history by delta" for traversables  
							
							
							
						 
						
							2023-06-20 17:36:44 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								c90136d48d 
								
							 
						 
						
							
							
								
								LibWeb: Start fleshing out "apply the history step" for traversables  
							
							... 
							
							
							
							Implements https://html.spec.whatwg.org/multipage/browsing-the-web.html#apply-the-history-step  
							
						 
						
							2023-06-19 21:28:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								caf7fd4f19 
								
							 
						 
						
							
							
								
								LibWeb: Add supporting method to get navigables whose SHE will change  
							
							... 
							
							
							
							Implements https://html.spec.whatwg.org/multipage/browsing-the-web.html#get-all-navigables-whose-current-session-history-entry-will-change-or-reload  
							
						 
						
							2023-06-19 21:28:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								9c1087de8c 
								
							 
						 
						
							
							
								
								LibWeb: Implement "get the used step" for traversable navigables  
							
							... 
							
							
							
							Implements https://html.spec.whatwg.org/multipage/browsing-the-web.html#getting-the-used-step  
							
						 
						
							2023-06-19 21:28:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								5b06e43938 
								
							 
						 
						
							
							
								
								LibWeb: Implement get_the_history_object_length_and_index()  
							
							
							
						 
						
							2023-06-19 21:28:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								0444df1a7c 
								
							 
						 
						
							
							
								
								LibWeb: Implement "clear the forward session history" for traversable  
							
							... 
							
							
							
							https://html.spec.whatwg.org/multipage/browsing-the-web.html#clear-the-forward-session-history  
						
							2023-05-08 17:53:59 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								62bc8590ad 
								
							 
						 
						
							
							
								
								LibWeb: Implement "get all used history steps" for traversables  
							
							... 
							
							
							
							https://html.spec.whatwg.org/multipage/browsing-the-web.html#getting-all-used-history-steps  
						
							2023-04-28 18:11:44 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Aliaksandr Kalenik 
								
							 
						 
						
							
							
							
							
								
							
							
								3c89286467 
								
							 
						 
						
							
							
								
								LibWeb: Implement creation of fresh top-level traversables  
							
							... 
							
							
							
							Co-authored-by: Andreas Kling <kling@serenityos.org> 
							
						 
						
							2023-04-26 15:51:50 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								74a6f50c91 
								
							 
						 
						
							
							
								
								LibWeb: Add HTML::TraversableNavigable  
							
							... 
							
							
							
							This is the "traversable navigable" concept from the HTML spec.
Co-authored-by: Aliaksandr Kalenik <kalenik.aliaksandr@gmail.com> 
							
						 
						
							2023-04-19 18:26:45 +02:00