Jo Steven Novaryo
900dd8d191
layout: Consider transform for bounding box queries ( #37871 )
...
The recent changes that cached the Scroll Tree present an opportunity to
calculate the queries that consider transform and scroll (dubbed as post
composite queries) accurately.
This PR propose a solution for this calculation by noting the lowest
scroll tree nodes that would affect a fragment. To do this, each
fragment would store a new attribute `spatial_tree_node` -- scroll tree
node id that we could use for the query. This referencing is considered
because the scroll tree node construction is managed by the fragment
itself. Therefore it would ease the managing the possibly stale
reference and future query cache invalidation considering the
development of incremental layout.
The bounding box query then could transform the bounding content rect of
a fragment using the computed current transformation matrix.
Fixes: https://github.com/servo/servo/issues/35768
Testing: Existing and new WPT
---------
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
Signed-off-by: Jo Steven Novaryo <jo.steven.novaryo@huawei.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2025-07-30 08:13:54 +00:00
Steven Novaryo
67a5f285ed
dom: Implement minimal IntersectionObserver workflow ( #35551 )
...
* Add very rough implemnentation of observation steps
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix entry reflection and propagate can_gc
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix BorrowError and add fragment find descendant
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Implement is descendant in containing block path correctly
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix unrooted error and tidy issues
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix comments
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Remove is descendant of other node query
I suppose these changes is better separated to other PRs.
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix intersection and refactor registration
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Use AppUnit more and propagate GlobalScope better
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Update WPT expectations
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Revert delay changes
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Align compute intersection algo to other browser actual behavior
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Align processing documents and note several issues
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Update WPT
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Minor lint
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix top level browsing context
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Make Registration rootable
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Avoid reflow inside observation step algo
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Using borrow for iterating registration
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix document disconnect
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Update WPT
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Address comments and minor quality suggestions
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Root the observer before nofifying any of it
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Tidy docs
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Account not found element and refactor observation step
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix documentations
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Ignore position of document viewport
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Refactor root intersection rectangle
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Add can GC note to the callback
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix top-level browsing context term
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Fix minor comments
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
---------
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
2025-03-18 11:09:44 +00:00
Josh Matthews
5295a45a2c
Enable more test directories and preferences ( #34952 )
...
* Enable WPT tests for several supported/in progress features.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Enable more preferences for all WPT tests.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Update test expectations.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Disable AbortController preference for tests.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Update WPT expectations.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2025-01-17 02:41:09 +00:00