Title: [255636] branches/safari-610.1.1-branch/Source/WebKit
- Revision
- 255636
- Author
- alanc...@apple.com
- Date
- 2020-02-03 19:08:51 -0800 (Mon, 03 Feb 2020)
Log Message
Cherry-pick r255458. rdar://problem/59016256
Can still get stuck after swipe backwards with a slow server, even after r254552
https://bugs.webkit.org/show_bug.cgi?id=207017
<rdar://problem/59016256>
Reviewed by Chris Dumez.
* UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::unfreezeLayerTreeDueToSwipeAnimation):
* UIProcess/ProvisionalPageProxy.h:
* UIProcess/WebPageProxy.cpp:
There's a second case where you can get stuck with the "swipe gesture"
layer tree freeze reason in the web process: when doing a cross-origin
navigation where the load takes more than 3 seconds (the swipe
snapshot timeout) to commit, the provisional page will have mirrored
the original page's frozen state upon creation, but will not ever
receive the unfreeze, because it is sent while still provisional.
To fix this, just forward the unfreeze message to the provisional page.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@255458 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Modified Paths
Diff
Modified: branches/safari-610.1.1-branch/Source/WebKit/ChangeLog (255635 => 255636)
--- branches/safari-610.1.1-branch/Source/WebKit/ChangeLog 2020-02-04 03:08:48 UTC (rev 255635)
+++ branches/safari-610.1.1-branch/Source/WebKit/ChangeLog 2020-02-04 03:08:51 UTC (rev 255636)
@@ -1,5 +1,52 @@
2020-02-03 Russell Epstein <repst...@apple.com>
+ Cherry-pick r255458. rdar://problem/59016256
+
+ Can still get stuck after swipe backwards with a slow server, even after r254552
+ https://bugs.webkit.org/show_bug.cgi?id=207017
+ <rdar://problem/59016256>
+
+ Reviewed by Chris Dumez.
+
+ * UIProcess/ProvisionalPageProxy.cpp:
+ (WebKit::ProvisionalPageProxy::unfreezeLayerTreeDueToSwipeAnimation):
+ * UIProcess/ProvisionalPageProxy.h:
+ * UIProcess/WebPageProxy.cpp:
+ There's a second case where you can get stuck with the "swipe gesture"
+ layer tree freeze reason in the web process: when doing a cross-origin
+ navigation where the load takes more than 3 seconds (the swipe
+ snapshot timeout) to commit, the provisional page will have mirrored
+ the original page's frozen state upon creation, but will not ever
+ receive the unfreeze, because it is sent while still provisional.
+
+ To fix this, just forward the unfreeze message to the provisional page.
+
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@255458 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2020-01-30 Tim Horton <timothy_hor...@apple.com>
+
+ Can still get stuck after swipe backwards with a slow server, even after r254552
+ https://bugs.webkit.org/show_bug.cgi?id=207017
+ <rdar://problem/59016256>
+
+ Reviewed by Chris Dumez.
+
+ * UIProcess/ProvisionalPageProxy.cpp:
+ (WebKit::ProvisionalPageProxy::unfreezeLayerTreeDueToSwipeAnimation):
+ * UIProcess/ProvisionalPageProxy.h:
+ * UIProcess/WebPageProxy.cpp:
+ There's a second case where you can get stuck with the "swipe gesture"
+ layer tree freeze reason in the web process: when doing a cross-origin
+ navigation where the load takes more than 3 seconds (the swipe
+ snapshot timeout) to commit, the provisional page will have mirrored
+ the original page's frozen state upon creation, but will not ever
+ receive the unfreeze, because it is sent while still provisional.
+
+ To fix this, just forward the unfreeze message to the provisional page.
+
+2020-02-03 Russell Epstein <repst...@apple.com>
+
Cherry-pick r255456. rdar://problem/58966044
REGRESSION (r253267): Swipe from edge on Twitter images no longer goes back
Modified: branches/safari-610.1.1-branch/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp (255635 => 255636)
--- branches/safari-610.1.1-branch/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp 2020-02-04 03:08:48 UTC (rev 255635)
+++ branches/safari-610.1.1-branch/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp 2020-02-04 03:08:51 UTC (rev 255636)
@@ -388,6 +388,11 @@
}
#endif
+void ProvisionalPageProxy::unfreezeLayerTreeDueToSwipeAnimation()
+{
+ send(Messages::WebPage::UnfreezeLayerTreeDueToSwipeAnimation());
+}
+
void ProvisionalPageProxy::didReceiveMessage(IPC::Connection& connection, IPC::Decoder& decoder)
{
ASSERT(decoder.messageReceiverName() == Messages::WebPageProxy::messageReceiverName());
Modified: branches/safari-610.1.1-branch/Source/WebKit/UIProcess/ProvisionalPageProxy.h (255635 => 255636)
--- branches/safari-610.1.1-branch/Source/WebKit/UIProcess/ProvisionalPageProxy.h 2020-02-04 03:08:48 UTC (rev 255635)
+++ branches/safari-610.1.1-branch/Source/WebKit/UIProcess/ProvisionalPageProxy.h 2020-02-04 03:08:51 UTC (rev 255636)
@@ -96,6 +96,8 @@
void goToBackForwardItem(API::Navigation&, WebBackForwardListItem&, Optional<WebsitePoliciesData>&&);
void cancel();
+ void unfreezeLayerTreeDueToSwipeAnimation();
+
void processDidTerminate();
private:
Modified: branches/safari-610.1.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (255635 => 255636)
--- branches/safari-610.1.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2020-02-04 03:08:48 UTC (rev 255635)
+++ branches/safari-610.1.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2020-02-04 03:08:51 UTC (rev 255636)
@@ -8524,6 +8524,9 @@
if (m_isLayerTreeFrozenDueToSwipeAnimation) {
m_isLayerTreeFrozenDueToSwipeAnimation = false;
send(Messages::WebPage::UnfreezeLayerTreeDueToSwipeAnimation());
+
+ if (m_provisionalPage)
+ m_provisionalPage->unfreezeLayerTreeDueToSwipeAnimation();
}
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes