Title: [233954] branches/safari-606-branch/Source/WebKit
- Revision
- 233954
- Author
- [email protected]
- Date
- 2018-07-18 18:59:54 -0700 (Wed, 18 Jul 2018)
Log Message
Cherry-pick r233876. rdar://problem/42345027
Black flash in content area when returning to Mail
https://bugs.webkit.org/show_bug.cgi?id=187719
<rdar://problem/42165340>
Reviewed by Wenson Hsieh.
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::applicationDidFinishSnapshottingAfterEnteringBackground):
This still reproduces sometimes even after r233723, because:
If a pending commit arrives after ApplicationDidEnterBackground (when we
ask the web content process to freeze the layer tree), and after
ApplicationDidFinishSnapshottingAfterEnteringBackground (when we hide
WKContentView), but before the process sleeps, it will cause WKContentView
to be unhidden (potentially including layers with empty surfaces as contents).
Nothing will re-hide WKContentView. Instead, we should wait for the next
*pending* commit, which will necessarily not come until after the application
returns to the foreground because of the strict IPC ordering between
the message that freezes the layer tree and the "next commit" mechanism.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@233876 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Modified Paths
Diff
Modified: branches/safari-606-branch/Source/WebKit/ChangeLog (233953 => 233954)
--- branches/safari-606-branch/Source/WebKit/ChangeLog 2018-07-19 01:59:51 UTC (rev 233953)
+++ branches/safari-606-branch/Source/WebKit/ChangeLog 2018-07-19 01:59:54 UTC (rev 233954)
@@ -1,5 +1,54 @@
2018-07-18 Babak Shafiei <[email protected]>
+ Cherry-pick r233876. rdar://problem/42345027
+
+ Black flash in content area when returning to Mail
+ https://bugs.webkit.org/show_bug.cgi?id=187719
+ <rdar://problem/42165340>
+
+ Reviewed by Wenson Hsieh.
+
+ * UIProcess/ios/WebPageProxyIOS.mm:
+ (WebKit::WebPageProxy::applicationDidFinishSnapshottingAfterEnteringBackground):
+ This still reproduces sometimes even after r233723, because:
+
+ If a pending commit arrives after ApplicationDidEnterBackground (when we
+ ask the web content process to freeze the layer tree), and after
+ ApplicationDidFinishSnapshottingAfterEnteringBackground (when we hide
+ WKContentView), but before the process sleeps, it will cause WKContentView
+ to be unhidden (potentially including layers with empty surfaces as contents).
+ Nothing will re-hide WKContentView. Instead, we should wait for the next
+ *pending* commit, which will necessarily not come until after the application
+ returns to the foreground because of the strict IPC ordering between
+ the message that freezes the layer tree and the "next commit" mechanism.
+
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@233876 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2018-07-16 Tim Horton <[email protected]>
+
+ Black flash in content area when returning to Mail
+ https://bugs.webkit.org/show_bug.cgi?id=187719
+ <rdar://problem/42165340>
+
+ Reviewed by Wenson Hsieh.
+
+ * UIProcess/ios/WebPageProxyIOS.mm:
+ (WebKit::WebPageProxy::applicationDidFinishSnapshottingAfterEnteringBackground):
+ This still reproduces sometimes even after r233723, because:
+
+ If a pending commit arrives after ApplicationDidEnterBackground (when we
+ ask the web content process to freeze the layer tree), and after
+ ApplicationDidFinishSnapshottingAfterEnteringBackground (when we hide
+ WKContentView), but before the process sleeps, it will cause WKContentView
+ to be unhidden (potentially including layers with empty surfaces as contents).
+ Nothing will re-hide WKContentView. Instead, we should wait for the next
+ *pending* commit, which will necessarily not come until after the application
+ returns to the foreground because of the strict IPC ordering between
+ the message that freezes the layer tree and the "next commit" mechanism.
+
+2018-07-18 Babak Shafiei <[email protected]>
+
Cherry-pick r233872. rdar://problem/42345272
Source/WebCore:
Modified: branches/safari-606-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm (233953 => 233954)
--- branches/safari-606-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm 2018-07-19 01:59:51 UTC (rev 233953)
+++ branches/safari-606-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm 2018-07-19 01:59:54 UTC (rev 233954)
@@ -657,7 +657,7 @@
{
if (m_drawingArea) {
m_drawingArea->prepareForAppSuspension();
- m_drawingArea->hideContentUntilAnyUpdate();
+ m_drawingArea->hideContentUntilPendingUpdate();
}
m_process->send(Messages::WebPage::ApplicationDidFinishSnapshottingAfterEnteringBackground(), m_pageID);
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes