From 7a6539d65a03ff89c193791e9fe0994f580a72a7 Mon Sep 17 00:00:00 2001 From: "Shimeng (Simon) Wang" Date: Mon, 25 Jul 2011 14:45:08 -0700 Subject: Disable customized overflow scroll for positioned renderblock. This fixes maps.google.com dropdown list scrolling issue. Tested on developer.android.com, slate.com, lemonde.fr; the existing overflow scrolling are working as before this change. issue: 4203823 Change-Id: I11cebbfd8bb3dd060bbee1b29ec96627fcbf1a72 --- Source/WebCore/rendering/RenderLayer.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'Source/WebCore/rendering') diff --git a/Source/WebCore/rendering/RenderLayer.cpp b/Source/WebCore/rendering/RenderLayer.cpp index 6aff65c..0eae838 100644 --- a/Source/WebCore/rendering/RenderLayer.cpp +++ b/Source/WebCore/rendering/RenderLayer.cpp @@ -2274,10 +2274,13 @@ void RenderLayer::updateScrollInfoAfterLayout() updateOverflowStatus(horizontalOverflow, verticalOverflow); #if ENABLE(ANDROID_OVERFLOW_SCROLL) - bool hasOverflowScroll = ((horizontalOverflow && m_hBar) || (verticalOverflow && m_vBar)) - // Disable UI side scrolling for textareas, unless they are readonly. - && (!renderer()->isTextArea() || (renderer()->node() - && static_cast(renderer()->node())->readOnly())); + bool hasOverflowScroll = ((horizontalOverflow && m_hBar) || (verticalOverflow && m_vBar)) && + ((!renderer()->isTextArea() && !renderer()->isRenderBlock()) || + // Disable customized overflow scroll for positioned RenderBlock. + (renderer()->isRenderBlock() && !renderer()->isPositioned()) || + // Disable UI side scrolling for textareas, unless they are readonly. + (renderer()->isTextArea() && renderer()->node() && + static_cast(renderer()->node())->readOnly())); if (hasOverflowScroll != m_hasOverflowScroll) { m_hasOverflowScroll = hasOverflowScroll; dirtyZOrderLists(); -- cgit v1.1