Title: [194593] trunk/Source/WebKit2
- Revision
- 194593
- Author
- [email protected]
- Date
- 2016-01-05 11:38:13 -0800 (Tue, 05 Jan 2016)
Log Message
[Mac] Exiting fullscreen via Mission Control leaves fullcreen window frontmost on desktop
https://bugs.webkit.org/show_bug.cgi?id=152733
Reviewed by Eric Carlson.
Rather than ignore -windowDidExitFullScreen: notifications when fullscreen exit was
not initiated by WebKit (and the -window:startCustomAnimationToEnterFullScreenWithDuration:
method was not called), continue to exit fullscreen normally.
* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (194592 => 194593)
--- trunk/Source/WebKit2/ChangeLog 2016-01-05 19:24:23 UTC (rev 194592)
+++ trunk/Source/WebKit2/ChangeLog 2016-01-05 19:38:13 UTC (rev 194593)
@@ -1,3 +1,17 @@
+2016-01-05 Jer Noble <[email protected]>
+
+ [Mac] Exiting fullscreen via Mission Control leaves fullcreen window frontmost on desktop
+ https://bugs.webkit.org/show_bug.cgi?id=152733
+
+ Reviewed by Eric Carlson.
+
+ Rather than ignore -windowDidExitFullScreen: notifications when fullscreen exit was
+ not initiated by WebKit (and the -window:startCustomAnimationToEnterFullScreenWithDuration:
+ method was not called), continue to exit fullscreen normally.
+
+ * UIProcess/mac/WKFullScreenWindowController.mm:
+ (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
+
2016-01-05 Alex Christensen <[email protected]>
Clean up download code
Modified: trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm (194592 => 194593)
--- trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm 2016-01-05 19:24:23 UTC (rev 194592)
+++ trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm 2016-01-05 19:38:13 UTC (rev 194593)
@@ -373,8 +373,15 @@
- (void)finishedExitFullScreenAnimation:(bool)completed
{
- if (_fullScreenState != ExitingFullScreen)
- return;
+ if (_fullScreenState != ExitingFullScreen) {
+ // If we are not currently in the ExitingFullScreen state, this notification is unexpected, meaning
+ // fullscreen was exited without being initiated by WebKit. Do not return early, but continue to
+ // clean up our state by calling those methods which would have been called by -exitFullscreen,
+ // and proceed to close the fullscreen window.
+ [_webViewPlaceholder setTarget:nil];
+ [self _manager]->setAnimatingFullScreen(false);
+ [self _manager]->willExitFullScreen();
+ }
_fullScreenState = NotInFullScreen;
// Screen updates to be re-enabled in completeFinishExitFullScreenAnimationAfterRepaint.
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes