[webkit-changes] [134289] trunk/Source
Title: [134289] trunk/Source Revision 134289 Author ael...@chromium.org Date 2012-11-12 13:02:11 -0800 (Mon, 12 Nov 2012) Log Message [chromium] Delete WebCompositor.h https://bugs.webkit.org/show_bug.cgi?id=101137 Reviewed by James Robinson. The implementation of this class is getting deleted and all WebKit-side users are already going via WebCompositorSupport instead. Source/Platform: * Platform.gypi: * chromium/public/WebCompositor.h: Removed. Source/WebKit/chromium: * tests/WebCompositorInputHandlerImplTest.cpp: Modified Paths trunk/Source/Platform/ChangeLog trunk/Source/Platform/Platform.gypi trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/WebCompositorInputHandlerImplTest.cpp Removed Paths trunk/Source/Platform/chromium/public/WebCompositor.h Diff Modified: trunk/Source/Platform/ChangeLog (134288 => 134289) --- trunk/Source/Platform/ChangeLog 2012-11-12 20:58:20 UTC (rev 134288) +++ trunk/Source/Platform/ChangeLog 2012-11-12 21:02:11 UTC (rev 134289) @@ -1,3 +1,16 @@ +2012-11-12 Alexandre Elias + +[chromium] Delete WebCompositor.h +https://bugs.webkit.org/show_bug.cgi?id=101137 + +Reviewed by James Robinson. + +The implementation of this class is getting deleted and all +WebKit-side users are already going via WebCompositorSupport instead. + +* Platform.gypi: +* chromium/public/WebCompositor.h: Removed. + 2012-11-12 Tommy Widenflycht MediaStream API: Schedule the RTCDataChannel events to be triggered at idle state Modified: trunk/Source/Platform/Platform.gypi (134288 => 134289) --- trunk/Source/Platform/Platform.gypi 2012-11-12 20:58:20 UTC (rev 134288) +++ trunk/Source/Platform/Platform.gypi 2012-11-12 21:02:11 UTC (rev 134289) @@ -44,7 +44,6 @@ 'chromium/public/WebClipboard.h', 'chromium/public/WebColor.h', 'chromium/public/WebCommon.h', -'chromium/public/WebCompositor.h', 'chromium/public/WebCompositorSupport.h', 'chromium/public/WebCompositorSoftwareOutputDevice.h', 'chromium/public/WebCompositorOutputSurface.h', Deleted: trunk/Source/Platform/chromium/public/WebCompositor.h (134288 => 134289) --- trunk/Source/Platform/chromium/public/WebCompositor.h 2012-11-12 20:58:20 UTC (rev 134288) +++ trunk/Source/Platform/chromium/public/WebCompositor.h 2012-11-12 21:02:11 UTC (rev 134289) @@ -1,66 +0,0 @@ -/* - * Copyright (C) 2011 Google Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef WebCompositor_h -#define WebCompositor_h - -#include "WebCommon.h" - -namespace WebKit { - -class WebThread; - -// This class contains global routines for interacting with the -// compositor. -// -// All calls to the WebCompositor must be made from the main thread. -class WebCompositor { -public: -// Initializes the compositor. Threaded compositing is enabled by passing in -// a non-null WebThread. No compositor classes or methods should be used -// prior to calling initialize. -WEBKIT_EXPORT static void initialize(WebThread*); - -// Returns whether the compositor was initialized with threading enabled. -WEBKIT_EXPORT static bool isThreadingEnabled(); - -// Shuts down the compositor. This must be called when all compositor data -// types have been deleted. No compositor classes or methods should be used -// after shutdown. -WEBKIT_EXPORT static void shutdown(); - -// These may only be called before initialize. -WEBKIT_EXPORT static void setPerTilePaintingEnabled(bool); -WEBKIT_EXPORT static void setPartialSwapEnabled(bool); -WEBKIT_EXPORT static void setAcceleratedAnimation
[webkit-changes] [135808] trunk/Source/WebKit/chromium
Title: [135808] trunk/Source/WebKit/chromium Revision 135808 Author ael...@chromium.org Date 2012-11-26 20:08:51 -0800 (Mon, 26 Nov 2012) Log Message [chromium] Touchscreen fling handling https://bugs.webkit.org/show_bug.cgi?id=103278 Reviewed by James Robinson. The fling logic for touchpad can fall through to bad performance in several ways. This patch introduces an alternate path for touchscreen fling that simplifies it as follows: - Stop generating wheel events, to prevent unnecessary scrollBegin hit tests and to avoid falling back to slow path if a wheel handler is registered. - Drop the event on ScrollStatusIgnored. There's no real reason to send the event to the WebKit thread here. - Don't call transferActiveWheelFlingAnimation. This type of transition shouldn't be needed with touchscreen flings. * src/WebCompositorInputHandlerImpl.cpp: (WebKit::WebCompositorInputHandlerImpl::handleGestureFling): (WebKit::WebCompositorInputHandlerImpl::animate): (WebKit::WebCompositorInputHandlerImpl::cancelCurrentFling): (WebKit::WebCompositorInputHandlerImpl::scrollBy): * src/WebCompositorInputHandlerImpl.h: Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.cpp trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.h trunk/Source/WebKit/chromium/tests/WebCompositorInputHandlerImplTest.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (135807 => 135808) --- trunk/Source/WebKit/chromium/ChangeLog 2012-11-27 04:03:53 UTC (rev 135807) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-11-27 04:08:51 UTC (rev 135808) @@ -1,3 +1,31 @@ +2012-11-26 Alexandre Elias + +[chromium] Touchscreen fling handling +https://bugs.webkit.org/show_bug.cgi?id=103278 + +Reviewed by James Robinson. + +The fling logic for touchpad can fall through to bad +performance in several ways. This patch introduces an alternate +path for touchscreen fling that simplifies it as follows: + +- Stop generating wheel events, to prevent unnecessary scrollBegin hit +tests and to avoid falling back to slow path if a wheel handler is +registered. + +- Drop the event on ScrollStatusIgnored. There's no real reason to +send the event to the WebKit thread here. + +- Don't call transferActiveWheelFlingAnimation. This type of +transition shouldn't be needed with touchscreen flings. + +* src/WebCompositorInputHandlerImpl.cpp: +(WebKit::WebCompositorInputHandlerImpl::handleGestureFling): +(WebKit::WebCompositorInputHandlerImpl::animate): +(WebKit::WebCompositorInputHandlerImpl::cancelCurrentFling): +(WebKit::WebCompositorInputHandlerImpl::scrollBy): +* src/WebCompositorInputHandlerImpl.h: + 2012-11-26 Kentaro Hara [V8] Remove WorkerContextExecutionProxy.{h,cpp} Modified: trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.cpp (135807 => 135808) --- trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.cpp 2012-11-27 04:03:53 UTC (rev 135807) +++ trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.cpp 2012-11-27 04:08:51 UTC (rev 135808) @@ -118,7 +118,7 @@ WebInputHandlerClient::ScrollStatus scrollStatus = m_inputHandlerClient->scrollBegin(WebPoint(wheelEvent.x, wheelEvent.y), WebInputHandlerClient::ScrollInputTypeWheel); switch (scrollStatus) { case WebInputHandlerClient::ScrollStatusStarted: { -TRACE_EVENT_INSTANT2("cc", "WebCompositorInputHandlerImpl::handleInput wheel scroll", "deltaX", -wheelEvent.deltaX, "deltaY", -wheelEvent.deltaY); +TRACE_EVENT_INSTANT2("webkit", "WebCompositorInputHandlerImpl::handleInput wheel scroll", "deltaX", -wheelEvent.deltaX, "deltaY", -wheelEvent.deltaY); bool didScroll = m_inputHandlerClient->scrollByIfPossible(WebPoint(wheelEvent.x, wheelEvent.y), IntSize(-wheelEvent.deltaX, -wheelEvent.deltaY)); m_inputHandlerClient->scrollEnd(); return didScroll ? DidHandle : DropEvent; @@ -205,26 +205,30 @@ WebInputHandlerClient::ScrollStatus scrollStatus = m_inputHandlerClient->scrollBegin(WebPoint(gestureEvent.x, gestureEvent.y), WebInputHandlerClient::ScrollInputTypeGesture); switch (scrollStatus) { case WebInputHandlerClient::ScrollStatusStarted: { -m_inputHandlerClient->scrollEnd(); -m_wheelFlingCurve = adoptPtr(Platform::current()->createFlingAnimationCurve(gestureEvent.data.flingStart.sourceDevice, WebFloatPoint(gestureEvent.data.flingStart.velocityX, gestureEvent.data.flingStart.velocityY), WebSize())); -TRACE_EVENT_ASYNC_BEGIN0("cc", "WebCompositorInputHandlerImpl::handleGestureFling::started", this); -m_wheelFlingParameters.delta = WebFloatPoint(gestureEvent.data.flingStart.velocityX, gestureEvent.data.flingStart.velocityY); -m_wheelFlingParameters.point = WebPoint(gestureEvent.x, gestureEv
[webkit-changes] [136029] trunk/Source/WebKit/chromium
Title: [136029] trunk/Source/WebKit/chromium Revision 136029 Author ael...@chromium.org Date 2012-11-28 11:11:15 -0800 (Wed, 28 Nov 2012) Log Message [chromium] Handle pinch correctly in slow-scrolling area https://bugs.webkit.org/show_bug.cgi?id=102740 Reviewed by James Robinson. With the nonmodal gesture event model, pinch zoom gestures involve interleaved pinch and scroll events. This caused a bug on slow-scroll areas: the scroll events were sent to the main thread and the pinch events were handled in the impl thread. This patch makes it so that scroll events are always handled in the impl thread if a pinch is active. * src/WebCompositorInputHandlerImpl.cpp: (WebKit::WebCompositorInputHandlerImpl::WebCompositorInputHandlerImpl): (WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal): * src/WebCompositorInputHandlerImpl.h: * tests/WebCompositorInputHandlerImplTest.cpp: (WebKit::TEST_F): (WebKit): Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.cpp trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.h trunk/Source/WebKit/chromium/tests/WebCompositorInputHandlerImplTest.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (136028 => 136029) --- trunk/Source/WebKit/chromium/ChangeLog 2012-11-28 19:01:35 UTC (rev 136028) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-11-28 19:11:15 UTC (rev 136029) @@ -1,3 +1,26 @@ +2012-11-28 Alexandre Elias + +[chromium] Handle pinch correctly in slow-scrolling area +https://bugs.webkit.org/show_bug.cgi?id=102740 + +Reviewed by James Robinson. + +With the nonmodal gesture event model, pinch zoom gestures involve +interleaved pinch and scroll events. This caused a bug on slow-scroll +areas: the scroll events were sent to the main thread and +the pinch events were handled in the impl thread. + +This patch makes it so that scroll events are always handled in the impl +thread if a pinch is active. + +* src/WebCompositorInputHandlerImpl.cpp: +(WebKit::WebCompositorInputHandlerImpl::WebCompositorInputHandlerImpl): +(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal): +* src/WebCompositorInputHandlerImpl.h: +* tests/WebCompositorInputHandlerImplTest.cpp: +(WebKit::TEST_F): +(WebKit): + 2012-11-28 Sadrul Habib Chowdhury [chromium] Allow plugins to opt-in to receive synthetic mouse events out of touch events. Modified: trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.cpp (136028 => 136029) --- trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.cpp 2012-11-28 19:01:35 UTC (rev 136028) +++ trunk/Source/WebKit/chromium/src/WebCompositorInputHandlerImpl.cpp 2012-11-28 19:11:15 UTC (rev 136029) @@ -69,7 +69,8 @@ , m_expectScrollUpdateEnd(false) , m_expectPinchUpdateEnd(false) #endif -, m_gestureScrollStarted(false) +, m_gestureScrollOnImplThread(false) +, m_gesturePinchOnImplThread(false) { } @@ -131,7 +132,7 @@ return DidNotHandle; } } else if (event.type == WebInputEvent::GestureScrollBegin) { -ASSERT(!m_gestureScrollStarted); +ASSERT(!m_gestureScrollOnImplThread); ASSERT(!m_expectScrollUpdateEnd); #ifndef NDEBUG m_expectScrollUpdateEnd = true; @@ -140,7 +141,7 @@ WebInputHandlerClient::ScrollStatus scrollStatus = m_inputHandlerClient->scrollBegin(WebPoint(gestureEvent.x, gestureEvent.y), WebInputHandlerClient::ScrollInputTypeGesture); switch (scrollStatus) { case WebInputHandlerClient::ScrollStatusStarted: -m_gestureScrollStarted = true; +m_gestureScrollOnImplThread = true; return DidHandle; case WebInputHandlerClient::ScrollStatusOnMainThread: return DidNotHandle; @@ -150,7 +151,7 @@ } else if (event.type == WebInputEvent::GestureScrollUpdate) { ASSERT(m_expectScrollUpdateEnd); -if (!m_gestureScrollStarted) +if (!m_gestureScrollOnImplThread && !m_gesturePinchOnImplThread) return DidNotHandle; const WebGestureEvent& gestureEvent = *static_cast(&event); @@ -162,11 +163,11 @@ #ifndef NDEBUG m_expectScrollUpdateEnd = false; #endif -if (!m_gestureScrollStarted) +if (!m_gestureScrollOnImplThread) return DidNotHandle; m_inputHandlerClient->scrollEnd(); -m_gestureScrollStarted = false; +m_gestureScrollOnImplThread = false; return DidHandle; } else if (event.type == WebInputEvent::GesturePinchBegin) { ASSERT(!m_expectPinchUpdateEnd); @@ -174,12 +175,14 @@ m_expectPinchUpdateEnd = true; #endif m_inputHandlerClient->pinchGestureBegin(); +m_gesturePinchOnImplThread = true; return DidHandle; } else if (event.type == WebInputEvent::Gesture
[webkit-changes] [143355] trunk/Source/WebKit/chromium
Title: [143355] trunk/Source/WebKit/chromium Revision 143355 Author ael...@chromium.org Date 2013-02-19 10:42:27 -0800 (Tue, 19 Feb 2013) Log Message [chromium] Fix races in double-tap zoom minimum scale policy https://bugs.webkit.org/show_bug.cgi?id=110183 Reviewed by Adam Barth. Double-tap zoom on Android is supposed to return to minimum scale if no pinch zoom occurred since the last double-tap. Because both pinch zoom and the result of double-tap zoom gets passed in from CC via applyScrollAndScale, this logic was brittle and prone to races depending on when the animation update was received. This patch keeps track of what the target double-tap scale is to make it more robust. I also fixed double-tap zoom test mocking to exercise the entire page scale animation flow (our previous way of testing was hiding the raciness), and added a new test case in DivAutoZoomMultipleParamsTest. * src/WebViewImpl.cpp: (WebKit::WebViewImpl::WebViewImpl): (WebKit::WebViewImpl::startPageScaleAnimation): (WebKit): (WebKit::WebViewImpl::enableFakeDoubleTapAnimationForTesting): (WebKit::WebViewImpl::computeScaleAndScrollForHitRect): (WebKit::WebViewImpl::animateZoomAroundPoint): (WebKit::WebViewImpl::didCommitLoad): (WebKit::WebViewImpl::applyScrollAndScale): * src/WebViewImpl.h: (WebViewImpl): (WebKit::WebViewImpl::fakeDoubleTapAnimationPendingForTesting): (WebKit::WebViewImpl::fakeDoubleTapTargetPositionForTesting): (WebKit::WebViewImpl::fakeDoubleTapPageScaleFactorForTesting): (WebKit::WebViewImpl::fakeDoubleTapUseAnchorForTesting): * tests/WebFrameTest.cpp: Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/WebViewImpl.cpp trunk/Source/WebKit/chromium/src/WebViewImpl.h trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (143354 => 143355) --- trunk/Source/WebKit/chromium/ChangeLog 2013-02-19 18:40:03 UTC (rev 143354) +++ trunk/Source/WebKit/chromium/ChangeLog 2013-02-19 18:42:27 UTC (rev 143355) @@ -1,3 +1,39 @@ +2013-02-19 Alexandre Elias + +[chromium] Fix races in double-tap zoom minimum scale policy +https://bugs.webkit.org/show_bug.cgi?id=110183 + +Reviewed by Adam Barth. + +Double-tap zoom on Android is supposed to return to minimum scale +if no pinch zoom occurred since the last double-tap. Because both +pinch zoom and the result of double-tap zoom gets passed in from CC +via applyScrollAndScale, this logic was brittle and prone to races +depending on when the animation update was received. This patch +keeps track of what the target double-tap scale is to make it more +robust. + +I also fixed double-tap zoom test mocking to exercise the entire +page scale animation flow (our previous way of testing was hiding the +raciness), and added a new test case in DivAutoZoomMultipleParamsTest. + +* src/WebViewImpl.cpp: +(WebKit::WebViewImpl::WebViewImpl): +(WebKit::WebViewImpl::startPageScaleAnimation): +(WebKit): +(WebKit::WebViewImpl::enableFakeDoubleTapAnimationForTesting): +(WebKit::WebViewImpl::computeScaleAndScrollForHitRect): +(WebKit::WebViewImpl::animateZoomAroundPoint): +(WebKit::WebViewImpl::didCommitLoad): +(WebKit::WebViewImpl::applyScrollAndScale): +* src/WebViewImpl.h: +(WebViewImpl): +(WebKit::WebViewImpl::fakeDoubleTapAnimationPendingForTesting): +(WebKit::WebViewImpl::fakeDoubleTapTargetPositionForTesting): +(WebKit::WebViewImpl::fakeDoubleTapPageScaleFactorForTesting): +(WebKit::WebViewImpl::fakeDoubleTapUseAnchorForTesting): +* tests/WebFrameTest.cpp: + 2013-02-19 Joshua Bell IndexedDB: additional checks on LevelDB decoding Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (143354 => 143355) --- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp 2013-02-19 18:40:03 UTC (rev 143354) +++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp 2013-02-19 18:42:27 UTC (rev 143355) @@ -399,8 +399,11 @@ , m_ignoreViewportTagMaximumScale(false) , m_pageScaleFactorIsSet(false) , m_savedPageScaleFactor(0) -, m_doubleTapZoomInEffect(false) -, m_shouldUseDoubleTapTimeZero(false) +, m_doubleTapZoomPageScaleFactor(0) +, m_doubleTapZoomPending(false) +, m_enableFakeDoubleTapAnimationForTesting(false) +, m_fakeDoubleTapPageScaleFactor(0) +, m_fakeDoubleTapUseAnchor(false) , m_contextMenuAllowed(false) , m_doingDragAndDrop(false) , m_ignoreInputEvents(false) @@ -856,20 +859,35 @@ scheduleAnimation(); } -void WebViewImpl::startPageScaleAnimation(const IntPoint& targetPosition, bool useAnchor, float newScale, double durationInSeconds) +bool WebViewImpl::startPageScaleAnimation(const IntPoint& targetPosition, bool useAnchor, float newScale, double durationInSeconds) { WebPoint clampedPoint = targe
[webkit-changes] [143774] branches/chromium/1410/Source/WebKit/chromium
Title: [143774] branches/chromium/1410/Source/WebKit/chromium Revision 143774 Author ael...@chromium.org Date 2013-02-22 12:31:26 -0800 (Fri, 22 Feb 2013) Log Message Merge 142571 > [chromium] Apply page scale to all WebInputEvent types > https://bugs.webkit.org/show_bug.cgi?id=109370 > > Reviewed by James Robinson. > > Previously we only adjusted a few common input event types by page > scale, but in fact almost every position and size in WebInputEvents > requires it. > > I also took the opportunity to change some WebGestureEvent members to > floats (which I checked causes no warnings in Chromium-side code with > GCC or Clang). > > New WebInputEventConversionTest: InputEventsScaling > > * public/WebInputEvent.h: > (WebKit::WebGestureEvent::WebGestureEvent): > * src/WebInputEventConversion.cpp: > (WebKit::widgetScaleFactor): > (WebKit): > (WebKit::PlatformMouseEventBuilder::PlatformMouseEventBuilder): > (WebKit::PlatformWheelEventBuilder::PlatformWheelEventBuilder): > (WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder): > (WebKit::PlatformTouchPointBuilder::PlatformTouchPointBuilder): > (WebKit::updateWebMouseEventFromWebCoreMouseEvent): > (WebKit::WebMouseEventBuilder::WebMouseEventBuilder): > (WebKit::addTouchPoints): > (WebKit::WebTouchEventBuilder::WebTouchEventBuilder): > (WebKit::WebGestureEventBuilder::WebGestureEventBuilder): > * src/WebViewImpl.cpp: > (WebKit::WebViewImpl::handleGestureEvent): > (WebKit::WebViewImpl::hasTouchEventHandlersAt): > (WebKit::WebViewImpl::handleInputEvent): > * tests/WebInputEventConversionTest.cpp: > (WebCore::TEST): > (WebCore): > TBR=ael...@chromium.org Review URL: https://codereview.chromium.org/12319074 Modified Paths branches/chromium/1410/Source/WebKit/chromium/ChangeLog branches/chromium/1410/Source/WebKit/chromium/public/WebInputEvent.h branches/chromium/1410/Source/WebKit/chromium/src/WebInputEventConversion.cpp branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.cpp branches/chromium/1410/Source/WebKit/chromium/tests/WebInputEventConversionTest.cpp Diff Modified: branches/chromium/1410/Source/WebKit/chromium/ChangeLog (143773 => 143774) --- branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:30:58 UTC (rev 143773) +++ branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:31:26 UTC (rev 143774) @@ -1,3 +1,192 @@ +2013-02-11 Alexandre Elias + +[chromium] Apply page scale to all WebInputEvent types +https://bugs.webkit.org/show_bug.cgi?id=109370 + +Reviewed by James Robinson. + +Previously we only adjusted a few common input event types by page +scale, but in fact almost every position and size in WebInputEvents +requires it. + +I also took the opportunity to change some WebGestureEvent members to +floats (which I checked causes no warnings in Chromium-side code with +GCC or Clang). + +New WebInputEventConversionTest: InputEventsScaling + +* public/WebInputEvent.h: +(WebKit::WebGestureEvent::WebGestureEvent): +* src/WebInputEventConversion.cpp: +(WebKit::widgetScaleFactor): +(WebKit): +(WebKit::PlatformMouseEventBuilder::PlatformMouseEventBuilder): +(WebKit::PlatformWheelEventBuilder::PlatformWheelEventBuilder): +(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder): +(WebKit::PlatformTouchPointBuilder::PlatformTouchPointBuilder): +(WebKit::updateWebMouseEventFromWebCoreMouseEvent): +(WebKit::WebMouseEventBuilder::WebMouseEventBuilder): +(WebKit::addTouchPoints): +(WebKit::WebTouchEventBuilder::WebTouchEventBuilder): +(WebKit::WebGestureEventBuilder::WebGestureEventBuilder): +* src/WebViewImpl.cpp: +(WebKit::WebViewImpl::handleGestureEvent): +(WebKit::WebViewImpl::hasTouchEventHandlersAt): +(WebKit::WebViewImpl::handleInputEvent): +* tests/WebInputEventConversionTest.cpp: +(WebCore::TEST): +(WebCore): + +2013-02-11 Sheriff Bot + +Unreviewed, rolling out r142568. +http://trac.webkit.org/changeset/142568 +https://bugs.webkit.org/show_bug.cgi?id=109541 + +Broke the build, won't compile. (Requested by alancutter on +#webkit). + +* tests/GraphicsLayerChromiumTest.cpp: +(WebKit::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest): +* tests/ScrollingCoordinatorChromiumTest.cpp: +(WebKit::FakeWebViewClient::initializeLayerTreeView): + +2013-02-11 James Robinson + +[chromium] Add WebUnitTestSupport::createLayerTreeViewForTesting for webkit_unit_tests +https://bugs.webkit.org/show_bug.cgi?id=109403 + +Reviewed by Adam Barth. + +* tests/GraphicsLayerChromiumTest.cpp: +(WebKit::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest): +* tests/ScrollingCoordinatorChromiumTest.cpp: +(WebKit::FakeWebView
[webkit-changes] [143775] branches/chromium/1410/Source/WebKit/chromium
Title: [143775] branches/chromium/1410/Source/WebKit/chromium Revision 143775 Author ael...@chromium.org Date 2013-02-22 12:33:03 -0800 (Fri, 22 Feb 2013) Log Message Merge 142913 > [chromium] Fix scaling in WebViewImpl::handleGestureEvent, second try > https://bugs.webkit.org/show_bug.cgi?id=109671 > > Reviewed by James Robinson. > > My patch 142571 broke a bunch of things in handleGestureEvent that > assumed the event came in scaled, most notably tap highlight and > double-tap zoom. Switch those to PlatformGestureEvent. > > 142808 was an earlier version of this patch that was reverted > due to fling events asserting they can't be converted to > PlatformGestureEvent. This version moves fling earlier in the > function to avoid that. > > * src/WebViewImpl.cpp: > (WebKit::WebViewImpl::handleGestureEvent): > (WebKit::WebViewImpl::bestTapNode): > (WebKit::WebViewImpl::enableTapHighlight): > * src/WebViewImpl.h: > (WebViewImpl): > * tests/LinkHighlightTest.cpp: > (WebCore::TEST): > TBR=ael...@chromium.org Review URL: https://codereview.chromium.org/12315056 Modified Paths branches/chromium/1410/Source/WebKit/chromium/ChangeLog branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.cpp branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.h branches/chromium/1410/Source/WebKit/chromium/tests/LinkHighlightTest.cpp Diff Modified: branches/chromium/1410/Source/WebKit/chromium/ChangeLog (143774 => 143775) --- branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:31:26 UTC (rev 143774) +++ branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:33:03 UTC (rev 143775) @@ -1,3 +1,332 @@ +2013-02-14 Alexandre Elias + +[chromium] Fix scaling in WebViewImpl::handleGestureEvent, second try +https://bugs.webkit.org/show_bug.cgi?id=109671 + +Reviewed by James Robinson. + +My patch 142571 broke a bunch of things in handleGestureEvent that +assumed the event came in scaled, most notably tap highlight and +double-tap zoom. Switch those to PlatformGestureEvent. + +142808 was an earlier version of this patch that was reverted +due to fling events asserting they can't be converted to +PlatformGestureEvent. This version moves fling earlier in the +function to avoid that. + +* src/WebViewImpl.cpp: +(WebKit::WebViewImpl::handleGestureEvent): +(WebKit::WebViewImpl::bestTapNode): +(WebKit::WebViewImpl::enableTapHighlight): +* src/WebViewImpl.h: +(WebViewImpl): +* tests/LinkHighlightTest.cpp: +(WebCore::TEST): + +2013-02-14 Dirk Pranke + +Unreviewed, rolling out r142901. +http://trac.webkit.org/changeset/142901 + +r182258 introduces a dependency on chrome.gyp that breaks the win +build. Rolling back to r182150 until I can work up a workaround. + +* DEPS: + +2013-02-14 Dirk Pranke + +Unreviewed, chromium roll 182150 -> 182448 + +* DEPS: + +2013-02-14 Mark Pilgrim + +[Chromium] Move PlatformMessagePortChannel to WebCore +https://bugs.webkit.org/show_bug.cgi?id=109845 + +Reviewed by Adam Barth. + +Part of a larger refactoring series; see tracking bug 106829. + +* WebKit.gyp: +* src/PlatformMessagePortChannel.cpp: Removed. +* src/PlatformMessagePortChannel.h: Removed. +* src/SharedWorkerRepository.cpp: +* src/WebDOMMessageEvent.cpp: +* src/WebFrameImpl.cpp: +* src/WebSharedWorkerImpl.cpp: +* src/WebWorkerClientImpl.cpp: + +2013-02-14 Min Qin + +Passing alpha to DeferredImageDecoder once decoding completes +https://bugs.webkit.org/show_bug.cgi?id=108892 + +Reviewed by Stephen White. + +Add test to check that alpha value is passed from the decoder to ImageFrameGenerator. + +* tests/ImageFrameGeneratorTest.cpp: +(WebCore::MockImageDecoderFactory::create): +(WebCore::TEST_F): +* tests/MockImageDecoder.h: +(WebCore::MockImageDecoder::MockImageDecoder): +(WebCore::MockImageDecoder::setFrameHasAlpha): +(MockImageDecoder): +(WebCore::MockImageDecoder::frameHasAlphaAtIndex): + +2013-02-08 Andrey Kosyakov + +Web Inspector: expose did{Begin,Cancel}Frame() and {will,did}Composite() on WebDebToolsAgent +https://bugs.webkit.org/show_bug.cgi?id=109192 + +Reviewed by Pavel Feldman. + +- expose frame and compositing insturmentation methods on WebDevToolsAgent; +- temporarily route them from WebViewImpl to WebDevToolsAgent; + +* public/WebDevToolsAgent.h: +(WebDevToolsAgent): +* src/WebDevToolsAgentImpl.cpp: +(WebKit::WebDevToolsAgentImpl::didBeginFrame): +(WebKit): +(WebKit::WebDevToolsAgentImpl::didCancelFrame): +(WebKit::WebDevToolsAgentImpl::willComposite): +(WebKit::WebDevToolsAgen
[webkit-changes] [143776] branches/chromium/1410/Source/WebKit/chromium
Title: [143776] branches/chromium/1410/Source/WebKit/chromium Revision 143776 Author ael...@chromium.org Date 2013-02-22 12:34:40 -0800 (Fri, 22 Feb 2013) Log Message Merge 142927 > [chromium] No triggering autofill on unfocus > https://bugs.webkit.org/show_bug.cgi?id=109735 > > Patch by David Trainor on 2013-02-14 > Reviewed by James Robinson. > > Need to notify the autofill client to not process text changes when we're setting > focus to false and are trying to commit a composition. > > * public/WebAutofillClient.h: > (WebAutofillClient): > (WebKit::WebAutofillClient::setIgnoreTextChanges): > (WebKit::WebAutofillClient::~WebAutofillClient): > * src/WebViewImpl.cpp: > (WebKit::WebViewImpl::setFocus): > * tests/WebViewTest.cpp: TBR=commit-qu...@webkit.org Review URL: https://codereview.chromium.org/12340032 Modified Paths branches/chromium/1410/Source/WebKit/chromium/ChangeLog branches/chromium/1410/Source/WebKit/chromium/public/WebAutofillClient.h branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.cpp branches/chromium/1410/Source/WebKit/chromium/tests/WebViewTest.cpp Diff Modified: branches/chromium/1410/Source/WebKit/chromium/ChangeLog (143775 => 143776) --- branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:33:03 UTC (rev 143775) +++ branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:34:40 UTC (rev 143776) @@ -1,3 +1,21 @@ +2013-02-14 David Trainor + +[chromium] No triggering autofill on unfocus +https://bugs.webkit.org/show_bug.cgi?id=109735 + +Reviewed by James Robinson. + +Need to notify the autofill client to not process text changes when we're setting +focus to false and are trying to commit a composition. + +* public/WebAutofillClient.h: +(WebAutofillClient): +(WebKit::WebAutofillClient::setIgnoreTextChanges): +(WebKit::WebAutofillClient::~WebAutofillClient): +* src/WebViewImpl.cpp: +(WebKit::WebViewImpl::setFocus): +* tests/WebViewTest.cpp: + 2013-02-14 Alexandre Elias [chromium] Fix scaling in WebViewImpl::handleGestureEvent, second try Modified: branches/chromium/1410/Source/WebKit/chromium/public/WebAutofillClient.h (143775 => 143776) --- branches/chromium/1410/Source/WebKit/chromium/public/WebAutofillClient.h 2013-02-22 20:33:03 UTC (rev 143775) +++ branches/chromium/1410/Source/WebKit/chromium/public/WebAutofillClient.h 2013-02-22 20:34:40 UTC (rev 143776) @@ -90,8 +90,11 @@ virtual void textFieldDidChange(const WebInputElement&) { } virtual void textFieldDidReceiveKeyDown(const WebInputElement&, const WebKeyboardEvent&) { } +// Informs the client whether or not any subsequent text changes should be ignored. +virtual void setIgnoreTextChanges(bool ignore) { } + protected: -~WebAutofillClient() { } +virtual ~WebAutofillClient() { } }; } // namespace WebKit Modified: branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.cpp (143775 => 143776) --- branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.cpp 2013-02-22 20:33:03 UTC (rev 143775) +++ branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.cpp 2013-02-22 20:34:40 UTC (rev 143776) @@ -2151,8 +2151,15 @@ if (focusedFrame) { // Finish an ongoing composition to delete the composition node. Editor* editor = focusedFrame->editor(); -if (editor && editor->hasComposition()) +if (editor && editor->hasComposition()) { +if (m_autofillClient) +m_autofillClient->setIgnoreTextChanges(true); + editor->confirmComposition(); + +if (m_autofillClient) +m_autofillClient->setIgnoreTextChanges(false); +} m_imeAcceptEvents = false; } } Modified: branches/chromium/1410/Source/WebKit/chromium/tests/WebViewTest.cpp (143775 => 143776) --- branches/chromium/1410/Source/WebKit/chromium/tests/WebViewTest.cpp 2013-02-22 20:33:03 UTC (rev 143775) +++ branches/chromium/1410/Source/WebKit/chromium/tests/WebViewTest.cpp 2013-02-22 20:34:40 UTC (rev 143776) @@ -37,6 +37,7 @@ #include "FrameView.h" #include "HTMLDocument.h" #include "URLTestHelpers.h" +#include "WebAutofillClient.h" #include "WebContentDetectionResult.h" #include "WebDocument.h" #include "WebElement.h" @@ -720,4 +721,96 @@ webView->close(); } +class MockAutofillClient : public WebAutofillClient { +public: +MockAutofillClient() +: m_ignoreTextChanges(false) +, m_textChangesWhileIgnored(0) +, m_textChangesWhileNotIgnored(0) { } + +virtual ~MockAutofillClient() { } + +virtual void setIgnoreTextChanges(bool ignore) OVERRIDE { m_ignoreTextChanges = ignore; } +virtual void textFieldDidChange(const WebInputElement&) OVERRIDE +{ +if (m_ignoreTextChanges) +++m_textChangesWhileIgnored; +else +
[webkit-changes] [143777] branches/chromium/1410/Source/WebKit/chromium
Title: [143777] branches/chromium/1410/Source/WebKit/chromium Revision 143777 Author ael...@chromium.org Date 2013-02-22 12:35:40 -0800 (Fri, 22 Feb 2013) Log Message Merge 143032 > [chromium] WebInputEventBuilders should not reverse page scale > https://bugs.webkit.org/show_bug.cgi?id=109901 > > Reviewed by James Robinson. > > Though in theory logical that if WebInputEvent -> PlatformEvent > conversions divide by page scale, then the reverse builders should > multiply, in reality the only user of the reverse builders is > plugins which expect the same coordinate space as WebCore. > > * src/WebInputEventConversion.cpp: > (WebKit::updateWebMouseEventFromWebCoreMouseEvent): > (WebKit::WebMouseEventBuilder::WebMouseEventBuilder): > (WebKit::addTouchPoints): > (WebKit::WebGestureEventBuilder::WebGestureEventBuilder): > * tests/WebInputEventConversionTest.cpp: > (WebCore::TEST): > TBR=ael...@chromium.org Review URL: https://codereview.chromium.org/12330081 Modified Paths branches/chromium/1410/Source/WebKit/chromium/ChangeLog branches/chromium/1410/Source/WebKit/chromium/src/WebInputEventConversion.cpp branches/chromium/1410/Source/WebKit/chromium/tests/WebInputEventConversionTest.cpp Diff Modified: branches/chromium/1410/Source/WebKit/chromium/ChangeLog (143776 => 143777) --- branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:34:40 UTC (rev 143776) +++ branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:35:40 UTC (rev 143777) @@ -1,3 +1,104 @@ +2013-02-15 Alexandre Elias + +[chromium] WebInputEventBuilders should not reverse page scale +https://bugs.webkit.org/show_bug.cgi?id=109901 + +Reviewed by James Robinson. + +Though in theory logical that if WebInputEvent -> PlatformEvent +conversions divide by page scale, then the reverse builders should +multiply, in reality the only user of the reverse builders is +plugins which expect the same coordinate space as WebCore. + +* src/WebInputEventConversion.cpp: +(WebKit::updateWebMouseEventFromWebCoreMouseEvent): +(WebKit::WebMouseEventBuilder::WebMouseEventBuilder): +(WebKit::addTouchPoints): +(WebKit::WebGestureEventBuilder::WebGestureEventBuilder): +* tests/WebInputEventConversionTest.cpp: +(WebCore::TEST): + +2013-02-15 Anders Carlsson + +Remove const from a bunch of StorageArea member functions +https://bugs.webkit.org/show_bug.cgi?id=109957 + +Reviewed by Beth Dakin. + +Update for WebCore changes. + +* src/StorageAreaProxy.cpp: +(WebCore::StorageAreaProxy::length): +(WebCore::StorageAreaProxy::key): +(WebCore::StorageAreaProxy::getItem): +(WebCore::StorageAreaProxy::contains): +(WebCore::StorageAreaProxy::canAccessStorage): +(WebCore::StorageAreaProxy::memoryBytesUsedByCache): +* src/StorageAreaProxy.h: +(StorageAreaProxy): + +2013-02-15 Keishi Hattori + +PagePopupController.formatMonth should support short month format +https://bugs.webkit.org/show_bug.cgi?id=109530 + +Reviewed by Kent Tamura. + +* tests/LocaleMacTest.cpp: +(LocaleMacTest::formatMonth): +(TEST_F): + +2013-02-15 Keishi Hattori + +Add setValue and closePopup methods to PagePopupController +https://bugs.webkit.org/show_bug.cgi?id=109897 + +Reviewed by Kent Tamura. + +* src/ColorChooserPopupUIController.cpp: +(WebKit::ColorChooserPopupUIController::setValue): +(WebKit): +* src/ColorChooserPopupUIController.h: +(ColorChooserPopupUIController): +* src/DateTimeChooserImpl.cpp: +(WebKit::DateTimeChooserImpl::setValueAndClosePopup): Use setValue and closePopup. +(WebKit): +(WebKit::DateTimeChooserImpl::setValue): +(WebKit::DateTimeChooserImpl::closePopup): +* src/DateTimeChooserImpl.h: +(DateTimeChooserImpl): + +2013-02-15 Allan Sandfeld Jensen + +Simplify hitTestResultAtPoint and nodesFromRect APIs +https://bugs.webkit.org/show_bug.cgi?id=95720 + +Reviewed by Julien Chaffraix. + +Update calls to new API. + +* src/ContextMenuClientImpl.cpp: +(WebKit::selectMisspelledWord): +* src/FrameLoaderClientImpl.cpp: +(WebKit::FrameLoaderClientImpl::dispatchDecidePolicyForNavigationAction): +* src/WebFrameImpl.cpp: +(WebKit::WebFrameImpl::characterIndexForPoint): +* src/WebPluginContainerImpl.cpp: +(WebKit::WebPluginContainerImpl::isRectTopmost): +* src/WebViewImpl.cpp: +(WebKit::WebViewImpl::handleMouseDown): +(WebKit::WebViewImpl::computeBlockBounds): +(WebKit::WebViewImpl::bestTouchLinkNode): +(WebKit::WebViewImpl::hitTestResultForWindowPos): + +2013-02-14 Vsevolod Vlasov + +Unreviewed chromium test fix: incorrect fi
[webkit-changes] [143778] branches/chromium/1410/Source/WebKit/chromium
Title: [143778] branches/chromium/1410/Source/WebKit/chromium Revision 143778 Author ael...@chromium.org Date 2013-02-22 12:37:32 -0800 (Fri, 22 Feb 2013) Log Message Merge 143355 > [chromium] Fix races in double-tap zoom minimum scale policy > https://bugs.webkit.org/show_bug.cgi?id=110183 > > Reviewed by Adam Barth. > > Double-tap zoom on Android is supposed to return to minimum scale > if no pinch zoom occurred since the last double-tap. Because both > pinch zoom and the result of double-tap zoom gets passed in from CC > via applyScrollAndScale, this logic was brittle and prone to races > depending on when the animation update was received. This patch > keeps track of what the target double-tap scale is to make it more > robust. > > I also fixed double-tap zoom test mocking to exercise the entire > page scale animation flow (our previous way of testing was hiding the > raciness), and added a new test case in DivAutoZoomMultipleParamsTest. > > * src/WebViewImpl.cpp: > (WebKit::WebViewImpl::WebViewImpl): > (WebKit::WebViewImpl::startPageScaleAnimation): > (WebKit): > (WebKit::WebViewImpl::enableFakeDoubleTapAnimationForTesting): > (WebKit::WebViewImpl::computeScaleAndScrollForHitRect): > (WebKit::WebViewImpl::animateZoomAroundPoint): > (WebKit::WebViewImpl::didCommitLoad): > (WebKit::WebViewImpl::applyScrollAndScale): > * src/WebViewImpl.h: > (WebViewImpl): > (WebKit::WebViewImpl::fakeDoubleTapAnimationPendingForTesting): > (WebKit::WebViewImpl::fakeDoubleTapTargetPositionForTesting): > (WebKit::WebViewImpl::fakeDoubleTapPageScaleFactorForTesting): > (WebKit::WebViewImpl::fakeDoubleTapUseAnchorForTesting): > * tests/WebFrameTest.cpp: > TBR=ael...@chromium.org Review URL: https://codereview.chromium.org/12330082 Modified Paths branches/chromium/1410/Source/WebKit/chromium/ChangeLog branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.cpp branches/chromium/1410/Source/WebKit/chromium/src/WebViewImpl.h branches/chromium/1410/Source/WebKit/chromium/tests/WebFrameTest.cpp Diff Modified: branches/chromium/1410/Source/WebKit/chromium/ChangeLog (143777 => 143778) --- branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:35:40 UTC (rev 143777) +++ branches/chromium/1410/Source/WebKit/chromium/ChangeLog 2013-02-22 20:37:32 UTC (rev 143778) @@ -1,3 +1,147 @@ +2013-02-19 Alexandre Elias + +[chromium] Fix races in double-tap zoom minimum scale policy +https://bugs.webkit.org/show_bug.cgi?id=110183 + +Reviewed by Adam Barth. + +Double-tap zoom on Android is supposed to return to minimum scale +if no pinch zoom occurred since the last double-tap. Because both +pinch zoom and the result of double-tap zoom gets passed in from CC +via applyScrollAndScale, this logic was brittle and prone to races +depending on when the animation update was received. This patch +keeps track of what the target double-tap scale is to make it more +robust. + +I also fixed double-tap zoom test mocking to exercise the entire +page scale animation flow (our previous way of testing was hiding the +raciness), and added a new test case in DivAutoZoomMultipleParamsTest. + +* src/WebViewImpl.cpp: +(WebKit::WebViewImpl::WebViewImpl): +(WebKit::WebViewImpl::startPageScaleAnimation): +(WebKit): +(WebKit::WebViewImpl::enableFakeDoubleTapAnimationForTesting): +(WebKit::WebViewImpl::computeScaleAndScrollForHitRect): +(WebKit::WebViewImpl::animateZoomAroundPoint): +(WebKit::WebViewImpl::didCommitLoad): +(WebKit::WebViewImpl::applyScrollAndScale): +* src/WebViewImpl.h: +(WebViewImpl): +(WebKit::WebViewImpl::fakeDoubleTapAnimationPendingForTesting): +(WebKit::WebViewImpl::fakeDoubleTapTargetPositionForTesting): +(WebKit::WebViewImpl::fakeDoubleTapPageScaleFactorForTesting): +(WebKit::WebViewImpl::fakeDoubleTapUseAnchorForTesting): +* tests/WebFrameTest.cpp: + +2013-02-19 Joshua Bell + +IndexedDB: additional checks on LevelDB decoding +https://bugs.webkit.org/show_bug.cgi?id=109711 + +Reviewed by Tony Chang. + +* tests/IDBLevelDBCodingTest.cpp: Update test with new method signatures. + +2013-02-19 Jochen Eisinger + +[chromium] fix ScrollAnimatorNoneTest after r143295 +https://bugs.webkit.org/show_bug.cgi?id=110189 + +Reviewed by Nico Weber. + +* tests/ScrollAnimatorNoneTest.cpp: +(MockScrollableArea): + +2013-02-18 Simon Fraser + +Clean up the boolean argument to visibleContentRect +https://bugs.webkit.org/show_bug.cgi?id=110167 + +Reviewed by Simon Fraser. + +Replace the boolean argument to visibleContentRect() with +an enum. + +* src/ChromeClientImpl.cpp: +(WebKit::ChromeClientImpl::popupOpened): + +2013-02-18 Sheriff Bot + +Unreviewed
[webkit-changes] [144581] trunk
Title: [144581] trunk Revision 144581 Author ael...@chromium.org Date 2013-03-03 14:15:46 -0800 (Sun, 03 Mar 2013) Log Message [chromium] Remove WebLayerTreeView::setViewportSize call https://bugs.webkit.org/show_bug.cgi?id=110727 Reviewed by James Robinson. After https://codereview.chromium.org/12328080 lands, setViewportSize is called from the Chromium side. The multiplication by deviceScaleFactor here was prone to off-by-one errors. The layoutSize() function was only used here so delete it as well. DumpRenderTree WebViewHost must now call this method as well. Source/WebKit/chromium: * src/WebViewImpl.cpp: (WebKit::WebViewImpl::updateLayerTreeViewport): * src/WebViewImpl.h: (WebViewImpl): Tools: * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::initializeLayerTreeView): (WebViewHost::setWindowRect): (WebViewHost::setDeviceScaleFactor): (WebViewHost::updateViewportSize): * DumpRenderTree/chromium/WebViewHost.h: (WebViewHost): Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/WebViewImpl.cpp trunk/Source/WebKit/chromium/src/WebViewImpl.h trunk/Tools/ChangeLog trunk/Tools/DumpRenderTree/chromium/WebViewHost.cpp trunk/Tools/DumpRenderTree/chromium/WebViewHost.h Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (144580 => 144581) --- trunk/Source/WebKit/chromium/ChangeLog 2013-03-03 22:15:00 UTC (rev 144580) +++ trunk/Source/WebKit/chromium/ChangeLog 2013-03-03 22:15:46 UTC (rev 144581) @@ -1,3 +1,22 @@ +2013-03-03 Alexandre Elias + +[chromium] Remove WebLayerTreeView::setViewportSize call +https://bugs.webkit.org/show_bug.cgi?id=110727 + +Reviewed by James Robinson. + +After https://codereview.chromium.org/12328080 lands, +setViewportSize is called from the Chromium side. The multiplication +by deviceScaleFactor here was prone to off-by-one errors. +The layoutSize() function was only used here so delete it as well. + +DumpRenderTree WebViewHost must now call this method as well. + +* src/WebViewImpl.cpp: +(WebKit::WebViewImpl::updateLayerTreeViewport): +* src/WebViewImpl.h: +(WebViewImpl): + 2013-03-03 Sheriff Bot Unreviewed, rolling out r144567. Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (144580 => 144581) --- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp 2013-03-03 22:15:00 UTC (rev 144580) +++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp 2013-03-03 22:15:46 UTC (rev 144581) @@ -3148,20 +3148,6 @@ return root->documentRect().size(); } -IntSize WebViewImpl::layoutSize() const -{ -if (!isFixedLayoutModeEnabled()) -return m_size; - -IntSize contentSize = contentsSize(); - -if (fixedLayoutSize().width >= contentSize.width()) -return fixedLayoutSize(); - -float aspectRatio = static_cast(m_size.height) / m_size.width; -return IntSize(contentSize.width(), contentSize.width() * aspectRatio); -} - void WebViewImpl::computePageScaleFactorLimits() { if (!mainFrame() || !page() || !page()->mainFrame() || !page()->mainFrame()->view()) @@ -4292,15 +4278,7 @@ return; FrameView* view = page()->mainFrame()->view(); - -IntSize layoutViewportSize = layoutSize(); -IntSize deviceViewportSize = m_size; -if (m_webSettings->applyDeviceScaleFactorInCompositor()) -deviceViewportSize.scale(deviceScaleFactor()); - -m_nonCompositedContentHost->setViewport(deviceViewportSize, view->contentsSize(), view->scrollPosition(), view->scrollOrigin()); - -m_layerTreeView->setViewportSize(layoutViewportSize, deviceViewportSize); +m_nonCompositedContentHost->setViewport(m_size, view->contentsSize(), view->scrollPosition(), view->scrollOrigin()); m_layerTreeView->setPageScaleFactorAndLimits(pageScaleFactor(), m_minimumPageScaleFactor, m_maximumPageScaleFactor); } Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.h (144580 => 144581) --- trunk/Source/WebKit/chromium/src/WebViewImpl.h 2013-03-03 22:15:00 UTC (rev 144580) +++ trunk/Source/WebKit/chromium/src/WebViewImpl.h 2013-03-03 22:15:46 UTC (rev 144581) @@ -454,7 +454,6 @@ } WebCore::IntSize dipSize() const; -WebCore::IntSize layoutSize() const; WebCore::IntSize scaledSize(float) const; // Set the disposition for how this webview is to be initially shown. Modified: trunk/Tools/ChangeLog (144580 => 144581) --- trunk/Tools/ChangeLog 2013-03-03 22:15:00 UTC (rev 144580) +++ trunk/Tools/ChangeLog 2013-03-03 22:15:46 UTC (rev 144581) @@ -1,3 +1,25 @@ +2013-03-03 Alexandre Elias + +[chromium] Remove WebLayerTreeView::setViewportSize call +https://bugs.webkit.org/show_bug.cgi?id=110727 + +Reviewed by James Robinson. + +After https://codereview.chromium.org/12328080 lands, +setViewportSize is called from the Chromium side. The multiplication +by deviceScaleFactor here was prone to off-by-one errors. +
[webkit-changes] [144856] trunk/Source
tions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef WebFloatSize_h +#define WebFloatSize_h + +#include "WebCommon.h" + +#if WEBKIT_IMPLEMENTATION +#include "FloatSize.h" +#else +#include +#include +#include +#endif + +namespace WebKit { + +struct WebFloatSize { +float width; +float height; + +bool isEmpty() const { return width <= 0 || height <= 0; } + +WebFloatSize() +: width(0) +, height(0) +{ +} + +WebFloatSize(float width, float height) +: width(width) +, height(height) +{ +} + +#if WEBKIT_IMPLEMENTATION +WebFloatSize(const WebCore::FloatSize& s) +: width(s.width()) +, height(s.height()) +{ +} + +WebFloatSize& operator=(const WebCore::FloatSize& s) +{ +width = s.width(); +height = s.height(); +return *this; +} + +operator WebCore::FloatSize() const +{ +return WebCore::FloatSize(width, height); +} +#else +WebFloatSize(const gfx::SizeF& s) +: width(s.width()) +, height(s.height()) +{ +} + +WebFloatSize(const gfx::Vector2dF& v) +: width(v.x()) +, height(v.y()) +{ +} + +WebFloatSize& operator=(const gfx::SizeF& s) +{ +width = s.width(); +height = s.height(); +return *this; +} + +WebFloatSize& operator=(const gfx::Vector2dF& v) +{ +width = v.x(); +height = v.y(); +return *this; +} + +operator gfx::SizeF() const +{ +return gfx::SizeF(std::max(0.f, width), std::max(0.f, height)); +} + +operator gfx::Vector2dF() const +{ +return gfx::Vector2dF(width, height); +} +#endif +}; + +inline bool operator==(const WebFloatSize& a, const WebFloatSize& b) +{ +return a.width == b.width && a.height == b.height; +} + +inline bool operator!=(const WebFloatSize& a, const WebFloatSize& b) +{ +return !(a == b); +} + +} // namespace WebKit + +#endif Modified: trunk/Source/Platform/chromium/public/WebGestureCurveTarget.h (144855 => 144856) --- trunk/Source/Platform/chromium/public/WebGestureCurveTarget.h 2013-03-06 01:19:20 UTC (rev 144855) +++ trunk/Source/Platform/chromium/public/WebGestureCurveTarget.h 2013-03-06 01:29:55 UTC (rev 144856) @@ -25,14 +25,18 @@ #ifndef WebGestureCurveTarget_h #define WebGestureCurveTarget_h +#include "WebFloatSize.h" +#include "WebPoint.h" + namespace WebKit { -struct WebPoint; - class WebGestureCurveTarget { public: -virtual void scrollBy(const WebPoint&) = 0; +virtual void scrollBy(const WebFloatSize& delta) { scrollBy(WebPoint(delta.width, delta.height)); } +// TODO(aelias): Delete this after WebKit roll. +virtual void scrollBy(const WebPoint& delta) { scrollBy(WebFloatSize(delta.x, delta.y)); } + protected: virtual ~WebGestureCurveTarget() { } }; Modified: trunk/Source/Platform/chromium/public/WebInputHandlerClient.h (144855 => 144856) --- trunk/Source/Platform/chromium/public/WebInputHandlerClient.h 2013-03-06 01:19:20 UTC (rev 144855) +++ trunk/Source/Platform/chromium/public/WebInputHandlerClient.h 2013-03-06 01:29:55 UTC (rev 144856) @@ -25,6 +25,7 @@ #define WebInputHandlerClient_h #include "WebCommon.h" +#include "WebFloatSize.h" #include "WebPoint.h" #include "WebSize.h" @@ -55,8 +56,11 @@ // ancestor layer that can be scrolled will be moved instead. If there is no // such layer to be moved, this
[webkit-changes] [130455] trunk/Source/WebKit/chromium
Title: [130455] trunk/Source/WebKit/chromium Revision 130455 Author ael...@chromium.org Date 2012-10-04 21:14:41 -0700 (Thu, 04 Oct 2012) Log Message [chromium] Scale plugin container by frameScaleFactor https://bugs.webkit.org/show_bug.cgi?id=98468 Reviewed by Adam Barth. Plugin containers (for invalid plugins) weren't taking into account frameScaleFactor, looking cut off when that was non-1. * src/WebPluginContainerImpl.cpp: (WebKit::WebPluginContainerImpl::paint): Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (130454 => 130455) --- trunk/Source/WebKit/chromium/ChangeLog 2012-10-05 03:56:17 UTC (rev 130454) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-10-05 04:14:41 UTC (rev 130455) @@ -1,3 +1,16 @@ +2012-10-04 Alexandre Elias + +[chromium] Scale plugin container by frameScaleFactor +https://bugs.webkit.org/show_bug.cgi?id=98468 + +Reviewed by Adam Barth. + +Plugin containers (for invalid plugins) weren't taking into account +frameScaleFactor, looking cut off when that was non-1. + +* src/WebPluginContainerImpl.cpp: +(WebKit::WebPluginContainerImpl::paint): + 2012-10-04 Alpha Lam Unreviewd. Chromium DEPS roll. Update to r160281. Modified: trunk/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp (130454 => 130455) --- trunk/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp 2012-10-05 03:56:17 UTC (rev 130454) +++ trunk/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp 2012-10-05 04:14:41 UTC (rev 130455) @@ -115,8 +115,13 @@ if (!parent()) return; +FloatRect scaledDamageRect = damageRect; +float frameScaleFactor = m_element->document()->page()->mainFrame()->frameScaleFactor(); +scaledDamageRect.scale(frameScaleFactor); +scaledDamageRect.move(-frameRect().x() * (frameScaleFactor - 1), -frameRect().y() * (frameScaleFactor - 1)); + // Don't paint anything if the plugin doesn't intersect the damage rect. -if (!frameRect().intersects(damageRect)) +if (!frameRect().intersects(enclosingIntRect(scaledDamageRect))) return; gc->save(); @@ -132,7 +137,7 @@ WebCanvas* canvas = gc->platformContext()->canvas(); IntRect windowRect = -IntRect(view->contentsToWindow(damageRect.location()), damageRect.size()); +IntRect(view->contentsToWindow(enclosingIntRect(scaledDamageRect))); m_webPlugin->paint(canvas, windowRect); gc->restore(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [130866] trunk/Source/WebCore
Title: [130866] trunk/Source/WebCore Revision 130866 Author ael...@chromium.org Date 2012-10-10 00:23:25 -0700 (Wed, 10 Oct 2012) Log Message Text Autosizing: Counteract funky window sizing on Android. https://bugs.webkit.org/show_bug.cgi?id=98809 Reviewed by Adam Barth. In Chrome for Android, the window sizes provided to WebCore are currently in physical screen pixels instead of device-scale-adjusted units. For example window width on a Galaxy Nexus is 720 instead of 360. Text autosizing expects device-independent pixels. When Chrome for Android cuts over to the new coordinate space, it will be tied to the setting applyPageScaleFactorInCompositor. No new tests. * rendering/TextAutosizer.cpp: (WebCore::TextAutosizer::processSubtree): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/TextAutosizer.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (130865 => 130866) --- trunk/Source/WebCore/ChangeLog 2012-10-10 07:03:35 UTC (rev 130865) +++ trunk/Source/WebCore/ChangeLog 2012-10-10 07:23:25 UTC (rev 130866) @@ -1,3 +1,23 @@ +2012-10-10 Alexandre Elias + +Text Autosizing: Counteract funky window sizing on Android. +https://bugs.webkit.org/show_bug.cgi?id=98809 + +Reviewed by Adam Barth. + +In Chrome for Android, the window sizes provided to WebCore are +currently in physical screen pixels instead of +device-scale-adjusted units. For example window width on a +Galaxy Nexus is 720 instead of 360. Text autosizing expects +device-independent pixels. When Chrome for Android cuts over to +the new coordinate space, it will be tied to the setting +applyPageScaleFactorInCompositor. + +No new tests. + +* rendering/TextAutosizer.cpp: +(WebCore::TextAutosizer::processSubtree): + 2012-10-09 Philip Rogers Recursively detach SVGElementInstances Modified: trunk/Source/WebCore/rendering/TextAutosizer.cpp (130865 => 130866) --- trunk/Source/WebCore/rendering/TextAutosizer.cpp 2012-10-10 07:03:35 UTC (rev 130865) +++ trunk/Source/WebCore/rendering/TextAutosizer.cpp 2012-10-10 07:23:25 UTC (rev 130866) @@ -64,7 +64,9 @@ windowInfo.windowSize = m_document->settings()->textAutosizingWindowSizeOverride(); if (windowInfo.windowSize.isEmpty()) { bool includeScrollbars = !InspectorInstrumentation::shouldApplyScreenWidthOverride(mainFrame); -windowInfo.windowSize = mainFrame->view()->visibleContentRect(includeScrollbars).size(); // FIXME: Check that this is always in logical (density-independent) pixels (see wkbug.com/87440). +windowInfo.windowSize = mainFrame->view()->visibleContentRect(includeScrollbars).size(); +if (!m_document->settings()->applyPageScaleFactorInCompositor()) +windowInfo.windowSize.scale(1 / m_document->page()->deviceScaleFactor()); } // Largest area of block that can be visible at once (assuming the main ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [131944] trunk
Title: [131944] trunk Revision 131944 Author ael...@chromium.org Date 2012-10-19 14:30:19 -0700 (Fri, 19 Oct 2012) Log Message [chromium] API to pass impl thread via WebLayerTreeView https://bugs.webkit.org/show_bug.cgi?id=99863 Reviewed by James Robinson. This adds an API to pass the compositor impl thread via WebView and WebLayerTreeView. This is currently a no-op change, but in the future this codepath will supercede WebCompositor. The goal is to avoid statics in compositor initialization. Source/Platform: * chromium/public/WebCompositorSupport.h: (WebKit::WebCompositorSupport::createLayerTreeView): (WebCompositorSupport): * chromium/public/WebLayerTreeView.h: (WebKit): (WebLayerTreeView): Source/WebKit/chromium: * public/WebView.h: (WebKit): (WebView): * src/WebViewImpl.cpp: (WebKit::WebViewImpl::WebViewImpl): (WebKit::WebViewImpl::setCompositorImplThread): (WebKit): (WebKit::WebViewImpl::setIsAcceleratedCompositingActive): * src/WebViewImpl.h: (WebViewImpl): * tests/GraphicsLayerChromiumTest.cpp: (WebKit::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest): Tools: * DumpRenderTree/chromium/TestShell.cpp: (TestShell::createNewWindow): Modified Paths trunk/Source/Platform/ChangeLog trunk/Source/Platform/chromium/public/WebCompositorSupport.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/public/WebView.h trunk/Source/WebKit/chromium/src/WebViewImpl.cpp trunk/Source/WebKit/chromium/src/WebViewImpl.h trunk/Source/WebKit/chromium/tests/GraphicsLayerChromiumTest.cpp trunk/Tools/ChangeLog trunk/Tools/DumpRenderTree/chromium/TestShell.cpp Diff Modified: trunk/Source/Platform/ChangeLog (131943 => 131944) --- trunk/Source/Platform/ChangeLog 2012-10-19 21:04:06 UTC (rev 131943) +++ trunk/Source/Platform/ChangeLog 2012-10-19 21:30:19 UTC (rev 131944) @@ -1,3 +1,22 @@ +2012-10-19 Alexandre Elias + +[chromium] API to pass impl thread via WebLayerTreeView +https://bugs.webkit.org/show_bug.cgi?id=99863 + +Reviewed by James Robinson. + +This adds an API to pass the compositor impl thread via WebView and +WebLayerTreeView. This is currently a no-op change, but in the future +this codepath will supercede WebCompositor. The goal is to avoid statics +in compositor initialization. + +* chromium/public/WebCompositorSupport.h: +(WebKit::WebCompositorSupport::createLayerTreeView): +(WebCompositorSupport): +* chromium/public/WebLayerTreeView.h: +(WebKit): +(WebLayerTreeView): + 2012-10-18 Tommy Widenflycht MediaStream API: Do some cleanup in the chromium WebKit API Modified: trunk/Source/Platform/chromium/public/WebCompositorSupport.h (131943 => 131944) --- trunk/Source/Platform/chromium/public/WebCompositorSupport.h 2012-10-19 21:04:06 UTC (rev 131943) +++ trunk/Source/Platform/chromium/public/WebCompositorSupport.h 2012-10-19 21:30:19 UTC (rev 131944) @@ -74,6 +74,8 @@ virtual void setPageScalePinchZoomEnabled(bool) { } // May return 0 if initialization fails. +virtual WebLayerTreeView* createLayerTreeView(WebLayerTreeViewClient* client, const WebLayer& root, const WebLayerTreeView::Settings& settings, WebThread* implThread) { return createLayerTreeView(client, root, settings); } +// FIXME(aelias): Delete this version when the above is implemented. virtual WebLayerTreeView* createLayerTreeView(WebLayerTreeViewClient*, const WebLayer& root, const WebLayerTreeView::Settings&) { return 0; } Modified: trunk/Source/WebKit/chromium/ChangeLog (131943 => 131944) --- trunk/Source/WebKit/chromium/ChangeLog 2012-10-19 21:04:06 UTC (rev 131943) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-10-19 21:30:19 UTC (rev 131944) @@ -1,3 +1,28 @@ +2012-10-19 Alexandre Elias + +[chromium] API to pass impl thread via WebLayerTreeView +https://bugs.webkit.org/show_bug.cgi?id=99863 + +Reviewed by James Robinson. + +This adds an API to pass the compositor impl thread via WebView and +WebLayerTreeView. This is currently a no-op change, but in the future +this codepath will supercede WebCompositor. The goal is to avoid statics +in compositor initialization. + +* public/WebView.h: +(WebKit): +(WebView): +* src/WebViewImpl.cpp: +(WebKit::WebViewImpl::WebViewImpl): +(WebKit::WebViewImpl::setCompositorImplThread): +(WebKit): +(WebKit::WebViewImpl::setIsAcceleratedCompositingActive): +* src/WebViewImpl.h: +(WebViewImpl): +* tests/GraphicsLayerChromiumTest.cpp: +(WebKit::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest): + 2012-10-19 Pavel Feldman Web Inspector: merge "docked" state into the "dock side" enum. Modified: trunk/Source/WebKit/chromium/public/WebView.h (131943 => 131944) --- trunk/Source/WebKit/chromium/public/WebView.
[webkit-changes] [139022] trunk
Title: [139022] trunk Revision 139022 Author ael...@chromium.org Date 2013-01-07 17:39:04 -0800 (Mon, 07 Jan 2013) Log Message Divide gesture scroll delta by scale factor https://bugs.webkit.org/show_bug.cgi?id=106263 Reviewed by Adam Barth. Gesture scroll deltas were not being adjusted by the frame's scale factors, resulting in overly fast main-thread scrolling when zoomed in. New test: fast/events/touch/gesture/touch-gesture-scroll-div-scaled.html * page/EventHandler.cpp: (WebCore::EventHandler::handleGestureScrollCore): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/EventHandler.cpp Added Paths trunk/LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-div-scaled-expected.txt trunk/LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-div-scaled.html trunk/LayoutTests/platform/chromium/fast/events/touch/gesture/touch-gesture-scroll-div-scaled-expected.txt Diff Added: trunk/LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-div-scaled-expected.txt (0 => 139022) --- trunk/LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-div-scaled-expected.txt (rev 0) +++ trunk/LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-div-scaled-expected.txt 2013-01-08 01:39:04 UTC (rev 139022) @@ -0,0 +1,10 @@ +This tests gesture event scrolling of an overflow div with page scale. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +gesture events not implemented on this platform or gesture event scrolling of a document is broken +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-div-scaled.html (0 => 139022) --- trunk/LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-div-scaled.html (rev 0) +++ trunk/LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-div-scaled.html 2013-01-08 01:39:04 UTC (rev 139022) @@ -0,0 +1,131 @@ + + + + +#touchtarget { + width: 100px; + height: 100px; + position: relative; + background: white; +} + +::-webkit-scrollbar { +width: 0px; +height: 0px; +} + +#movingbox { + width: 100%; + height: 100%; + position: absolute; + word-wrap: break-word; + overflow-y: scroll; + overflow-x: scroll; + display: block; +} + +#greenbox { + width: 100px; + height: 100px; + background: green; + padding: 0px; + margin: 0px; +} + +#redbox { + width: 100px; + height: 100px; + background: red; + padding: 0px; + margin: 0px; +} + +td { + padding: 0px; +} + + + +++ + + ++++
++ ++ + + ++ +