Title: [209468] trunk/Source/WebKit2
Revision
209468
Author
jer.no...@apple.com
Date
2016-12-07 12:29:55 -0800 (Wed, 07 Dec 2016)

Log Message

Exiting Element Fullscreen mode loses focus on WKWebView.
https://bugs.webkit.org/show_bug.cgi?id=165512

Reviewed by Eric Carlson.

Setting 'window.contentView.hidden = YES' will reset the first-responder (whereas
previously setting 'window.contentView.layer.hidden = YES' did not). Grab the first-
responder before doing so, so that it can be reset correctly when moving the WKWebView
back to it's original window.

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

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (209467 => 209468)


--- trunk/Source/WebKit2/ChangeLog	2016-12-07 20:25:22 UTC (rev 209467)
+++ trunk/Source/WebKit2/ChangeLog	2016-12-07 20:29:55 UTC (rev 209468)
@@ -1,3 +1,18 @@
+2016-12-07  Jer Noble  <jer.no...@apple.com>
+
+        Exiting Element Fullscreen mode loses focus on WKWebView.
+        https://bugs.webkit.org/show_bug.cgi?id=165512
+
+        Reviewed by Eric Carlson.
+
+        Setting 'window.contentView.hidden = YES' will reset the first-responder (whereas
+        previously setting 'window.contentView.layer.hidden = YES' did not). Grab the first-
+        responder before doing so, so that it can be reset correctly when moving the WKWebView
+        back to it's original window.
+
+        * UIProcess/mac/WKFullScreenWindowController.mm:
+        (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
+
 2016-12-07  Alex Christensen  <achristen...@webkit.org>
 
         Fix CMake build after r209418.

Modified: trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm (209467 => 209468)


--- trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm	2016-12-07 20:25:22 UTC (rev 209467)
+++ trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm	2016-12-07 20:29:55 UTC (rev 209468)
@@ -393,6 +393,8 @@
         return;
     _fullScreenState = NotInFullScreen;
 
+    NSResponder *firstResponder = [[self window] firstResponder];
+
     // Screen updates to be re-enabled in completeFinishExitFullScreenAnimationAfterRepaint.
     NSDisableScreenUpdates();
     _page->setSuppressVisibilityUpdates(true);
@@ -402,7 +404,6 @@
     [_backgroundView.get().layer removeAllAnimations];
     [[_webViewPlaceholder window] setAutodisplay:NO];
 
-    NSResponder *firstResponder = [[self window] firstResponder];
     [self _replaceView:_webViewPlaceholder.get() with:_webView];
     BEGIN_BLOCK_OBJC_EXCEPTIONS
     [NSLayoutConstraint activateConstraints:self.savedConstraints];
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to