[webkit-dev] Touch operation corrupts screen when specifying other than overflow:visible in css

HIDEKI YOSHIDA yoshida-hxa at necst.nec.co.jp
Mon Nov 5 00:56:50 PST 2012


Hi, my team made the workaround to fix this problem and has submitted it
as a patch to get a review.

https://bugs.webkit.org/show_bug.cgi?id=99842

Index: Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp
===================================================================
--- Source/WebKit/win/WebView.cpp	(revision 132968)
+++ Source/WebKit/win/WebView.cpp	(working copy)
@@ -1663,7 +1663,7 @@
             return false;
 
         // We negate here since panning up moves the content up, but moves the scrollbar down.
-        m_gestureTargetNode->renderer()->enclosingLayer()->scrollByRecursively(IntSize(-deltaX, -deltaY));
+        m_gestureTargetNode->renderer()->enclosingLayer()->scrollByRecursively(IntSize(-deltaX, -deltaY), WebCore::RenderLayer::ScrollOffsetClamping::ScrollOffsetClamped);
            
         if (!(UpdatePanningFeedbackPtr() && BeginPanningFeedbackPtr() && EndPanningFeedbackPtr())) {
             CloseGestureInfoHandlePtr()(gestureHandle);

Hideki

***************************************************************************
  Hideki Yoshida
  Embedded Software Division
  NEC System Technologies, Ltd.
    E-MAIL:yoshida-hxa at necst.nec.co.jp
    TEL:+81-78-991-5566    FAX:+81-78-991-5568
***************************************************************************


> Hi, I filed this problem to https://bugs.webkit.org with 
> test case as an HTML file after I was suggested to do so.
> 
> Bug id 99842.
> 
> I am trying to find a workaround to resolve this problem.
> If someone has it, post it, please.
> 
> > Hi,
> > 
> > On a windows 7 tablet, PAN operation(=scroll) causes
> > corruption of screen.
> > 
> > Does anybody know how to resolve this or have the fix?
> > 
> > How to reproduce.
> > 1. Prepare a HTML contents which have an element specifying
> >    other than "visible" to the property overflow in css.
> > 2. Load the contents with webkit
> > 3. Operate the touch operaion, PAN on the element.
> > 
> > Problem
> > The content in the element protrudes outside the placeholder 
> > for it and can disappear.
> > 
> > The build version
> > Webkit.exe on r131112 for Nightly builds
> > 
> > We guess Source\WebKit\win\WebView.cpp has some bugs on this 
> > issue.
> > 
> > Here is the sample contents to reproduce problem. You will see the
> > problem if you PAN on the field for "overflow:auto".
> > 
> > ----------
> > <HTML>
> > <HEAD><TITLE>pan with css:overflow</TITLE></HEAD>
> > <BODY>
> > <font size="+2">
> > <div style="border: 2px solid blue; padding: 5px 5px 5px 5px; overflow:visible;">
> > overflow:visible
> > </div>
> > <br>
> > <div style="border: 2px solid red; padding: 5px 5px 5px 5px; overflow:auto;">
> > overflow:auto
> > </div>
> > </font>
> > </BODY>
> > </HTML>
> > ----------
> > 
> >                                                         Hideki
> > 
> > ***************************************************************************
> >   Hideki Yoshida
> >   Embedded Software Division
> >   NEC System Technologies, Ltd.
> >     E-MAIL:yoshida-hxa at necst.nec.co.jp
> > ***************************************************************************
> 




More information about the webkit-dev mailing list