Bug 194996
Summary: | Scrolling tree should do an update after layer flushing on macOS | ||
---|---|---|---|
Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> |
Component: | Scrolling | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED DUPLICATE | ||
Severity: | Normal | CC: | fred.wang, koivisto, simon.fraser |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Simon Fraser (smfr)
The scrolling tree contains the latest scrolling-related state for layers managed by the scrolling tree. When the main thread flushes compositing layers, it might flush layer positions that are stale in relation to the scrolling thread state. We currently (mostly) avoid jank here by the tricky "set or sync" logic, and "isInUserScroll" state, but it would be simpler to just have the scrolling tree do a pass after layer flushing.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Simon Fraser (smfr)
On iOS we already do this by pushing the current layoutViewportRect through the scrolling coordinator in the UI process, after receiving a transaction.
Simon Fraser (smfr)
*** This bug has been marked as a duplicate of bug 195507 ***