Chromium Code Reviews| Index: third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp |
| diff --git a/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp b/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp |
| index 8a5fd7f3bc135dc51d8b1fe6a2e3615ff0f209be..1aade931fb874877763a65fd831f9f19b24ef804 100644 |
| --- a/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp |
| +++ b/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp |
| @@ -504,7 +504,10 @@ IntSize PaintLayerScrollableArea::maximumScrollOffsetInt() const { |
| IntSize contentSize = contentsSize(); |
| IntSize visibleSize = |
| - pixelSnappedIntRect(box().overflowClipRect(box().location())).size(); |
| + pixelSnappedIntRect( |
| + box().overflowClipRect(box().location(), |
| + IgnorePlatformAndCSSOverlayScrollbarSize)) |
| + .size(); |
| FrameHost* host = layoutBox()->document().frameHost(); |
| DCHECK(host); |
| @@ -1296,9 +1299,13 @@ int PaintLayerScrollableArea::verticalScrollbarWidth( |
| OverlayScrollbarClipBehavior overlayScrollbarClipBehavior) const { |
| if (!hasVerticalScrollbar()) |
| return 0; |
| - if ((verticalScrollbar()->isOverlayScrollbar() || |
| - box().style()->overflowY() == EOverflow::kOverlay) && |
| - (overlayScrollbarClipBehavior == IgnoreOverlayScrollbarSize || |
| + if (box().style()->overflowY() == EOverflow::kOverlay && |
| + overlayScrollbarClipBehavior == |
| + IgnorePlatformAndCSSOverlayScrollbarSize) { |
| + return 0; |
| + } |
| + if (verticalScrollbar()->isOverlayScrollbar() && |
| + (overlayScrollbarClipBehavior == IgnorePlatformOverlayScrollbarSize || |
|
skobes
2017/03/07 19:28:07
Don't you need to check for IgnorePlatformAndCSSOv
szager1
2017/03/07 19:44:38
Whoops! Fixed.
|
| !verticalScrollbar()->shouldParticipateInHitTesting())) { |
| return 0; |
| } |
| @@ -1309,9 +1316,13 @@ int PaintLayerScrollableArea::horizontalScrollbarHeight( |
| OverlayScrollbarClipBehavior overlayScrollbarClipBehavior) const { |
| if (!hasHorizontalScrollbar()) |
| return 0; |
| - if ((horizontalScrollbar()->isOverlayScrollbar() || |
| - box().style()->overflowX() == EOverflow::kOverlay) && |
| - (overlayScrollbarClipBehavior == IgnoreOverlayScrollbarSize || |
| + if (overlayScrollbarClipBehavior == |
| + IgnorePlatformAndCSSOverlayScrollbarSize && |
| + box().style()->overflowX() == EOverflow::kOverlay) { |
| + return 0; |
| + } |
| + if (horizontalScrollbar()->isOverlayScrollbar() && |
| + (overlayScrollbarClipBehavior == IgnorePlatformOverlayScrollbarSize || |
| !horizontalScrollbar()->shouldParticipateInHitTesting())) { |
| return 0; |
| } |