Title: [114567] trunk/Source
Revision
114567
Author
[email protected]
Date
2012-04-18 14:53:50 -0700 (Wed, 18 Apr 2012)

Log Message

Full Screen mode does not preserve CALayer ordering after exiting.
https://bugs.webkit.org/show_bug.cgi?id=83931

Reviewed by Eric Carlson.

When swapping the placeholder and web views, use -[NSView addSubview:positioned:relativeTo:]
instead of -[NSView replaceSubview:with:], as the latter does not preserve the relative order
of the view's backing CALayers.

Source/WebKit/mac:

* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _swapView:with:]):

Source/WebKit2:

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController _swapView:with:]):

Modified Paths

Diff

Modified: trunk/Source/WebKit/mac/ChangeLog (114566 => 114567)


--- trunk/Source/WebKit/mac/ChangeLog	2012-04-18 21:51:48 UTC (rev 114566)
+++ trunk/Source/WebKit/mac/ChangeLog	2012-04-18 21:53:50 UTC (rev 114567)
@@ -1,3 +1,17 @@
+2012-04-18  Jer Noble  <[email protected]>
+
+        Full Screen mode does not preserve CALayer ordering after exiting.
+        https://bugs.webkit.org/show_bug.cgi?id=83931
+
+        Reviewed by Eric Carlson.
+
+        When swapping the placeholder and web views, use -[NSView addSubview:positioned:relativeTo:]
+        instead of -[NSView replaceSubview:with:], as the latter does not preserve the relative order
+        of the view's backing CALayers.
+
+        * WebView/WebFullScreenController.mm:
+        (-[WebFullScreenController _swapView:with:]):
+
 2012-04-18  Alexey Proskuryakov  <[email protected]>
 
         [WK2] Sandbox violations prevent attaching files to gmail messages

Modified: trunk/Source/WebKit/mac/WebView/WebFullScreenController.mm (114566 => 114567)


--- trunk/Source/WebKit/mac/WebView/WebFullScreenController.mm	2012-04-18 21:51:48 UTC (rev 114566)
+++ trunk/Source/WebKit/mac/WebView/WebFullScreenController.mm	2012-04-18 21:53:50 UTC (rev 114567)
@@ -454,7 +454,8 @@
     [otherView setFrame:[view frame]];        
     [otherView setAutoresizingMask:[view autoresizingMask]];
     [otherView removeFromSuperview];
-    [[view superview] replaceSubview:view with:otherView];
+    [[view superview] addSubview:otherView positioned:NSWindowAbove relativeTo:otherView];
+    [otherView removeFromSuperview];
     [CATransaction commit];
 }
 

Modified: trunk/Source/WebKit2/ChangeLog (114566 => 114567)


--- trunk/Source/WebKit2/ChangeLog	2012-04-18 21:51:48 UTC (rev 114566)
+++ trunk/Source/WebKit2/ChangeLog	2012-04-18 21:53:50 UTC (rev 114567)
@@ -1,3 +1,17 @@
+2012-04-18  Jer Noble  <[email protected]>
+
+        Full Screen mode does not preserve CALayer ordering after exiting.
+        https://bugs.webkit.org/show_bug.cgi?id=83931
+
+        Reviewed by Eric Carlson.
+
+        When swapping the placeholder and web views, use -[NSView addSubview:positioned:relativeTo:]
+        instead of -[NSView replaceSubview:with:], as the latter does not preserve the relative order
+        of the view's backing CALayers.
+
+        * UIProcess/mac/WKFullScreenWindowController.mm:
+        (-[WKFullScreenWindowController _swapView:with:]):
+
 2012-04-18  Alexey Proskuryakov  <[email protected]>
 
         [WK2] Sandbox violations prevent attaching files to gmail messages

Modified: trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm (114566 => 114567)


--- trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm	2012-04-18 21:51:48 UTC (rev 114566)
+++ trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm	2012-04-18 21:53:50 UTC (rev 114567)
@@ -451,7 +451,8 @@
     [otherView setFrame:[view frame]];        
     [otherView setAutoresizingMask:[view autoresizingMask]];
     [otherView removeFromSuperview];
-    [[view superview] replaceSubview:view with:otherView];
+    [[view superview] addSubview:otherView positioned:NSWindowAbove relativeTo:otherView];
+    [otherView removeFromSuperview];
     [CATransaction commit];
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to