layout: When setting post-layout / renderer scroll offsets limit by scroll area (#37829)

Previously when scroll offsets were restored to a new scroll tree
post-layout or when receiving scroll offsets from the compositor, they
were not clamped to the available scroll area. This change fixes that.

Testing: This change fixes some WPT subtests.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
Martin Robinson 2025-07-08 21:27:42 +02:00 committed by GitHub
parent ec6ac0fced
commit 0db02702e7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 1 additions and 28 deletions

View file

@ -397,7 +397,7 @@ impl ScrollTree {
for node in self.nodes.iter_mut() {
if let SpatialTreeNodeInfo::Scroll(ref mut scroll_info) = node.info {
if let Some(offset) = offsets.get(&scroll_info.external_id) {
scroll_info.offset = *offset;
scroll_info.scroll_to_offset(*offset, ScrollType::Script);
}
}
}