Index: Source/core/rendering/RenderLayer.cpp |
diff --git a/Source/core/rendering/RenderLayer.cpp b/Source/core/rendering/RenderLayer.cpp |
index 17edf636a3a2c9e7116f6987e2195b220b1c5311..56f41cd8414b155651e567c4e0a50106ad2d09d0 100644 |
--- a/Source/core/rendering/RenderLayer.cpp |
+++ b/Source/core/rendering/RenderLayer.cpp |
@@ -3116,7 +3116,8 @@ void RenderLayer::computeScrollDimensions() |
bool RenderLayer::hasScrollableHorizontalOverflow() const |
{ |
- return hasHorizontalOverflow() && renderBox()->scrollsOverflowX(); |
+ return hasHorizontalOverflow() |
+ && (renderBox()->scrollsOverflowX() || renderBox()->isScrollableWithoutScrollbars()); |
} |
bool RenderLayer::hasScrollableVerticalOverflow() const |
@@ -3473,6 +3474,10 @@ bool RenderLayer::hitTestOverflowControls(HitTestResult& result, const IntPoint& |
bool RenderLayer::scroll(ScrollDirection direction, ScrollGranularity granularity, float multiplier) |
{ |
+ // Some elements can be touch scrolled even in the absence of scrollbars (e.g. <input> textfield) |
+ if (renderBox()->isScrollableWithoutScrollbars()) |
+ return touchScroll(direction, granularity, multiplier); |
bokan
2013/05/30 18:23:51
Moved this call into RenderTextControlSingleLine::
|
+ |
return ScrollableArea::scroll(direction, granularity, multiplier); |
} |