New issue
Advanced search Search tips

Issue 873923 link

Starred by 2 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome
Pri: 3
Type: Bug

Blocked on:
issue 840209



Sign in to add a comment

views::ScrollView: Scroll with ui::Layers everywhere!

Project Member Reported by tapted@chromium.org, Aug 14

Issue description

Chrome Version       : 69.0.3497.23

Currently only Mac enables features::kUiCompositorScrollWithLayers by default. This is because
 - macOS generates a *lot* of touchpad scroll events - non-layered scrolling can not keep up
 - it's needed for elastic / scrolling

Other platforms can benefit from this. The alternative to layered-scrolling is to repaint the view subtree, which is UI-thread-blocking and CPU-intensive. Also note that Edge on Windows 10 has adopted elastic scrolling.

However, there are some quirks. E.g.
 - Scrolling things need an opaque background color to retain proper text AA
 - There are subtle layer/canvas synchronization problems with headers in TableView (e.g. in task manager)
 - RTL support needs to be audited


Having two codepaths is annoying. macOS is currently the guinea-pig, but when the implementation is solid we should enable it everywhere.
 
Blockedon: 840209
Components: -Internals>Compositing>Scroll

Sign in to add a comment