Support modify overlay scrollbar to custom scrollbar dynamically

Desktop / Chromium - chaopeng [chromium.org] - 10 August 2017 22:39 EDT

This issue is caused by: 1. In PLSA::ComputeScrollbarExistence, we always set need scrollbar when overflow:scroll. 2. In PLSA, we destroy overlay scrollbar when we dont have scroll content. We don't have this for FrameView Scrollbar. 3. In PLSA::NeedsScrollbarReconstruction, we only check if anyone scrollbar is custom scrollbar.

In this issue, we create horizontal and vertical scrollbar at first, then destroy horizontal scrollbar. When js change css, another layout create the custom horizontal scrollbar. So in NeedsScrollbarReconstruction, we have horizontal scrollbar is custom scrollbar then return no need reconstruction.

In this patch, we change NeedsScrollbarReconstruction to check both scrollbars.

Bug: 454346 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Change-Id: Ia089243572d7c60fa0f2b62359e844e7d5fdb1b7 Reviewed-on: https://chromium-review.googlesource.com/576066 Commit-Queue: Jianpeng Chao

f03f547 Support modify overlay scrollbar to custom scrollbar dynamically
.../WebKit/Source/core/layout/ScrollbarsTest.cpp | 82 ++++++++++++++++++++++
.../Source/core/paint/PaintLayerScrollableArea.cpp | 17 +++--
2 files changed, 94 insertions(+), 5 deletions(-)

Upstream: git.chromium.org


  • Share