Title: [164260] trunk/Source/WebKit2
- Revision
- 164260
- Author
- timothy_hor...@apple.com
- Date
- 2014-02-17 16:56:57 -0800 (Mon, 17 Feb 2014)
Log Message
[iOS][wk2] Custom layers are sometimes put on-screen without being parented
https://bugs.webkit.org/show_bug.cgi?id=128935
<rdar://problem/16022336>
Reviewed by Sam Weinig.
* Platform/mac/LayerHostingContext.mm:
(WebKit::LayerHostingContext::createForExternalHostingProcess):
Give an explicit and unlikely display ID, so that the layer will never
be brought on-screen unless explicitly parented.
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (164259 => 164260)
--- trunk/Source/WebKit2/ChangeLog 2014-02-18 00:53:40 UTC (rev 164259)
+++ trunk/Source/WebKit2/ChangeLog 2014-02-18 00:56:57 UTC (rev 164260)
@@ -1,3 +1,16 @@
+2014-02-17 Tim Horton <timothy_hor...@apple.com>
+
+ [iOS][wk2] Custom layers are sometimes put on-screen without being parented
+ https://bugs.webkit.org/show_bug.cgi?id=128935
+ <rdar://problem/16022336>
+
+ Reviewed by Sam Weinig.
+
+ * Platform/mac/LayerHostingContext.mm:
+ (WebKit::LayerHostingContext::createForExternalHostingProcess):
+ Give an explicit and unlikely display ID, so that the layer will never
+ be brought on-screen unless explicitly parented.
+
2014-02-17 Anders Carlsson <ander...@apple.com>
Add history delegate to WKWebView
Modified: trunk/Source/WebKit2/Platform/mac/LayerHostingContext.mm (164259 => 164260)
--- trunk/Source/WebKit2/Platform/mac/LayerHostingContext.mm 2014-02-18 00:53:40 UTC (rev 164259)
+++ trunk/Source/WebKit2/Platform/mac/LayerHostingContext.mm 2014-02-18 00:56:57 UTC (rev 164260)
@@ -61,7 +61,11 @@
layerHostingContext->m_layerHostingMode = LayerHostingMode::OutOfProcess;
#if PLATFORM(IOS)
- layerHostingContext->m_context = (WKCAContextRef)[CAContext remoteContextWithOptions:@{ kCAContextIgnoresHitTest : @YES }];
+ // Use a very large display ID to ensure that the context is never put on-screen
+ // without being explicitly parented. See <rdar://problem/16089267> for details.
+ layerHostingContext->m_context = (WKCAContextRef)[CAContext remoteContextWithOptions:@{
+ kCAContextIgnoresHitTest : @YES,
+ kCAContextDisplayId : @10000 }];
#else
layerHostingContext->m_context = WKCAContextMakeRemoteForWindowServer();
#endif
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes