Title: [167864] trunk/Source/WebKit2
Revision
167864
Author
[email protected]
Date
2014-04-27 15:47:54 -0700 (Sun, 27 Apr 2014)

Log Message

REGRESSION (r164702): Double tap doesn't stay under the new element once the animation finishes
https://bugs.webkit.org/show_bug.cgi?id=132239
<rdar://problem/16192842>

Reviewed by Sam Weinig.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::scalePage):
The early-return added to WebPage::scalePage breaks callers who depend
on being able to call scalePage() with the same scale but a different
origin and having that change take effect.

Page::setPageScaleFactor already has the requisite logic, so move
the early return down after that call, and guard only notification
of page scale changes.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (167863 => 167864)


--- trunk/Source/WebKit2/ChangeLog	2014-04-27 22:28:29 UTC (rev 167863)
+++ trunk/Source/WebKit2/ChangeLog	2014-04-27 22:47:54 UTC (rev 167864)
@@ -1,3 +1,21 @@
+2014-04-27  Tim Horton  <[email protected]>
+
+        REGRESSION (r164702): Double tap doesn't stay under the new element once the animation finishes
+        https://bugs.webkit.org/show_bug.cgi?id=132239
+        <rdar://problem/16192842>
+
+        Reviewed by Sam Weinig.
+
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::scalePage):
+        The early-return added to WebPage::scalePage breaks callers who depend
+        on being able to call scalePage() with the same scale but a different
+        origin and having that change take effect.
+
+        Page::setPageScaleFactor already has the requisite logic, so move
+        the early return down after that call, and guard only notification
+        of page scale changes.
+
 2014-04-25  Andy Estes  <[email protected]>
 
         [iOS] Stop creating a WKWebResourceQuickLookDelegate for every WebResourceLoader

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (167863 => 167864)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2014-04-27 22:28:29 UTC (rev 167863)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2014-04-27 22:47:54 UTC (rev 167864)
@@ -1291,9 +1291,6 @@
 
 void WebPage::scalePage(double scale, const IntPoint& origin)
 {
-    if (scale == pageScaleFactor())
-        return;
-
 #if PLATFORM(IOS)
     if (!m_inDynamicSizeUpdate)
         m_dynamicSizeUpdateHistory.clear();
@@ -1305,8 +1302,14 @@
         return;
     }
 
+    float oldPageScaleFactor = pageScaleFactor();
+
     m_page->setPageScaleFactor(scale, origin);
 
+    // We can't early return before setPageScaleFactor because the origin might be different.
+    if (scale == oldPageScaleFactor)
+        return;
+
     for (auto* pluginView : m_pluginViews)
         pluginView->pageScaleFactorDidChange();
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to