RESOLVED FIXED 108625
Scrollbars misplaced with accelerated compositing for overflow scroll
https://bugs.webkit.org/show_bug.cgi?id=108625
Summary Scrollbars misplaced with accelerated compositing for overflow scroll
Allan Sandfeld Jensen
Reported 2013-02-01 05:49:18 PST
If the setting AcceleratedCompositingForOverflowScroll is enabled, the scrolling content is automatically given its own layer, but the scrollbars are rendered on the content layer instead of on their own layer. This means the scrollbars can be scrolled out of the visible view. Chromium has a platform ifdef to fix that, but it should be fixed generally.
Attachments
Patch (2.42 KB, patch)
2013-02-01 05:52 PST, Allan Sandfeld Jensen
no flags
Patch (6.15 KB, patch)
2013-02-01 08:22 PST, Allan Sandfeld Jensen
no flags
Patch (6.29 KB, patch)
2013-02-05 05:32 PST, Allan Sandfeld Jensen
no flags
Allan Sandfeld Jensen
Comment 1 2013-02-01 05:52:35 PST
Build Bot
Comment 2 2013-02-01 06:34:43 PST
Comment on attachment 186026 [details] Patch Attachment 186026 [details] did not pass mac-ews (mac): Output: http://queues.webkit.org/results/16299689 New failing tests: compositing/overflow/composited-scrolling-creates-a-stacking-container.html
Build Bot
Comment 3 2013-02-01 07:40:18 PST
Comment on attachment 186026 [details] Patch Attachment 186026 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://queues.webkit.org/results/16298683 New failing tests: compositing/overflow/composited-scrolling-creates-a-stacking-container.html
Allan Sandfeld Jensen
Comment 4 2013-02-01 08:22:27 PST
Created attachment 186052 [details] Patch Update the result for the one test overriding accelerated compositing for overflow scroll on all ports.
WebKit Review Bot
Comment 5 2013-02-01 18:27:09 PST
Comment on attachment 186052 [details] Patch Attachment 186052 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/16334419 New failing tests: fast/forms/datalist/update-range-with-datalist.html compositing/scrollbar-painting.html fast/layers/no-clipping-overflow-hidden-hardware-acceleration.html fast/layers/no-clipping-overflow-hidden-added-after-transform.html compositing/geometry/limit-layer-bounds-transformed-overflow.html compositing/overflow/content-gains-scrollbars.html fast/loader/javascript-url-in-object.html compositing/overflow/overflow-scrollbar-layers.html fast/loader/text-document-wrapping.html compositing/iframes/resizer.html fast/layers/no-clipping-overflow-hidden-added-after-transition.html compositing/overflow/resize-painting.html compositing/overflow/clip-content-under-overflow-controls.html compositing/overflow/repaint-after-losing-scrollbars.html compositing/layer-creation/overflow-scroll-overlap.html
Allan Sandfeld Jensen
Comment 6 2013-02-05 02:39:54 PST
(In reply to comment #5) > (From update of attachment 186052 [details]) > Attachment 186052 [details] did not pass chromium-ews (chromium-xvfb): > Output: http://queues.webkit.org/results/16334419 > > New failing tests: > fast/forms/datalist/update-range-with-datalist.html > compositing/scrollbar-painting.html > fast/layers/no-clipping-overflow-hidden-hardware-acceleration.html > fast/layers/no-clipping-overflow-hidden-added-after-transform.html > compositing/geometry/limit-layer-bounds-transformed-overflow.html > compositing/overflow/content-gains-scrollbars.html > fast/loader/javascript-url-in-object.html > compositing/overflow/overflow-scrollbar-layers.html > fast/loader/text-document-wrapping.html > compositing/iframes/resizer.html > fast/layers/no-clipping-overflow-hidden-added-after-transition.html > compositing/overflow/resize-painting.html > compositing/overflow/clip-content-under-overflow-controls.html > compositing/overflow/repaint-after-losing-scrollbars.html > compositing/layer-creation/overflow-scroll-overlap.html I am tempted to preserving the chromium quirk for now, so chromium always have layers for the scrollbars, accelerated overflow scroll or not. Though I suspect fixing it would reduce the baseline differences.
Allan Sandfeld Jensen
Comment 7 2013-02-05 05:32:37 PST
Created attachment 186607 [details] Patch Let Chromium stay unchanged so their baselines still match.
James Robinson
Comment 8 2013-02-05 09:02:19 PST
(In reply to comment #6) > (In reply to comment #5) > > (From update of attachment 186052 [details] [details]) > > Attachment 186052 [details] [details] did not pass chromium-ews (chromium-xvfb): > > Output: http://queues.webkit.org/results/16334419 > > > > New failing tests: > > fast/forms/datalist/update-range-with-datalist.html > > compositing/scrollbar-painting.html > > fast/layers/no-clipping-overflow-hidden-hardware-acceleration.html > > fast/layers/no-clipping-overflow-hidden-added-after-transform.html > > compositing/geometry/limit-layer-bounds-transformed-overflow.html > > compositing/overflow/content-gains-scrollbars.html > > fast/loader/javascript-url-in-object.html > > compositing/overflow/overflow-scrollbar-layers.html > > fast/loader/text-document-wrapping.html > > compositing/iframes/resizer.html > > fast/layers/no-clipping-overflow-hidden-added-after-transition.html > > compositing/overflow/resize-painting.html > > compositing/overflow/clip-content-under-overflow-controls.html > > compositing/overflow/repaint-after-losing-scrollbars.html > > compositing/layer-creation/overflow-scroll-overlap.html > > I am tempted to preserving the chromium quirk for now, so chromium always have layers for the scrollbars, accelerated overflow scroll or not. Though I suspect fixing it would reduce the baseline differences. It's not really a "quirk" so much as an intentional performance tradeoff.
Allan Sandfeld Jensen
Comment 9 2013-02-06 02:48:07 PST
(In reply to comment #8) > > It's not really a "quirk" so much as an intentional performance tradeoff. The quirk is that it is always enabled rather than only when accelerated compositing of overflow scroll is enabled. You probably always have it enabled in Chrome, but in the test framework it can be disabled which leads to different results.
James Robinson
Comment 10 2013-02-06 11:22:30 PST
(In reply to comment #9) > (In reply to comment #8) > > > > It's not really a "quirk" so much as an intentional performance tradeoff. > > The quirk is that it is always enabled Which is the behavior we want. > rather than only when accelerated compositing of overflow scroll is enabled. That would not be the behavior we want. > You probably always have it enabled in Chrome, but in the test framework it can be disabled which leads to different results.
Allan Sandfeld Jensen
Comment 11 2013-02-07 02:42:08 PST
Simon, can I assume your review still applies to the updated patch? Chromium definitely prefers to stay unchanged.
WebKit Review Bot
Comment 12 2013-02-07 09:31:07 PST
Comment on attachment 186607 [details] Patch Clearing flags on attachment: 186607 Committed r142140: <http://trac.webkit.org/changeset/142140>
WebKit Review Bot
Comment 13 2013-02-07 09:31:11 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.