Title: [145409] trunk/Source
Revision
145409
Author
[email protected]
Date
2013-03-11 14:51:19 -0700 (Mon, 11 Mar 2013)

Log Message

Source/WebCore: Mac: Cmd-w should close full screen window.
https://bugs.webkit.org/show_bug.cgi?id=108406

Reviewed by Darin Adler.

Pass performClose: requests on to the owning window controller.

* platform/mac/WebCoreFullScreenWindow.mm:
(-[WebCoreFullScreenWindow performClose:]):

Source/WebKit/mac: Mac: Cmd-w should close full screen window.
https://bugs.webkit.org/show_bug.cgi?id=108406

Reviewed by Darin Adler.

Allow the user to close the full screen window with Cmd-w by making the full screen window
closable, and by intercepting performClose:.

* WebView/WebFullScreenController.mm:
(-[WebFullScreenController init]): Create a closable full screen window.
(-[WebFullScreenController performClose:]): When we receive a close request in full screen mode,
    animate out of full screen.

Source/WebKit2: Full screen mode should not exit when application resigns active state.
https://bugs.webkit.org/show_bug.cgi?id=106129

Reviewed by Darin Adler.

Allow the user to close the full screen window with Cmd-w by making the full screen window
closable, and by intercepting performClose:.

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController init]): Create a closable full screen window.
(-[WKFullScreenWindowController performClose:]): When we receive a close request in full screen mode,
    animate out of full screen.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (145408 => 145409)


--- trunk/Source/WebCore/ChangeLog	2013-03-11 21:48:19 UTC (rev 145408)
+++ trunk/Source/WebCore/ChangeLog	2013-03-11 21:51:19 UTC (rev 145409)
@@ -1,3 +1,15 @@
+2013-01-30  Jer Noble  <[email protected]>
+
+        Mac: Cmd-w should close full screen window.
+        https://bugs.webkit.org/show_bug.cgi?id=108406
+
+        Reviewed by Darin Adler.
+
+        Pass performClose: requests on to the owning window controller.
+
+        * platform/mac/WebCoreFullScreenWindow.mm:
+        (-[WebCoreFullScreenWindow performClose:]):
+
 2013-03-11  Xiyuan Xia  <[email protected]>
 
         [Chromium] chromium/linux breaks expectation of select popup background due to bad UA css rules

Modified: trunk/Source/WebCore/platform/mac/WebCoreFullScreenWindow.mm (145408 => 145409)


--- trunk/Source/WebCore/platform/mac/WebCoreFullScreenWindow.mm	2013-03-11 21:48:19 UTC (rev 145408)
+++ trunk/Source/WebCore/platform/mac/WebCoreFullScreenWindow.mm	2013-03-11 21:51:19 UTC (rev 145409)
@@ -67,6 +67,11 @@
 {
     [[self windowController] cancelOperation:sender];
 }
+
+- (void)performClose:(id)sender
+{
+    [[self windowController] performClose:sender];
+}
 @end
 
 #endif // ENABLE(FULLSCREEN_API)

Modified: trunk/Source/WebKit/mac/ChangeLog (145408 => 145409)


--- trunk/Source/WebKit/mac/ChangeLog	2013-03-11 21:48:19 UTC (rev 145408)
+++ trunk/Source/WebKit/mac/ChangeLog	2013-03-11 21:51:19 UTC (rev 145409)
@@ -1,3 +1,18 @@
+2013-01-30  Jer Noble  <[email protected]>
+
+        Mac: Cmd-w should close full screen window.
+        https://bugs.webkit.org/show_bug.cgi?id=108406
+
+        Reviewed by Darin Adler.
+
+        Allow the user to close the full screen window with Cmd-w by making the full screen window
+        closable, and by intercepting performClose:.
+
+        * WebView/WebFullScreenController.mm:
+        (-[WebFullScreenController init]): Create a closable full screen window.
+        (-[WebFullScreenController performClose:]): When we receive a close request in full screen mode,
+            animate out of full screen.
+
 2013-03-07  Anders Carlsson  <[email protected]>
 
         Add didFocusTextField:inFrame to WebFormDelegate

Modified: trunk/Source/WebKit/mac/WebView/WebFullScreenController.mm (145408 => 145409)


--- trunk/Source/WebKit/mac/WebView/WebFullScreenController.mm	2013-03-11 21:48:19 UTC (rev 145408)
+++ trunk/Source/WebKit/mac/WebView/WebFullScreenController.mm	2013-03-11 21:51:19 UTC (rev 145409)
@@ -96,7 +96,7 @@
 - (id)init
 {
     // Do not defer window creation, to make sure -windowNumber is created (needed by WebWindowScaleAnimation).
-    NSWindow *window = [[WebCoreFullScreenWindow alloc] initWithContentRect:NSZeroRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO];
+    NSWindow *window = [[WebCoreFullScreenWindow alloc] initWithContentRect:NSZeroRect styleMask:NSClosableWindowMask backing:NSBackingStoreBuffered defer:NO];
     self = [super initWithWindow:window];
     [window release];
     if (!self)
@@ -386,6 +386,12 @@
     NSEnableScreenUpdates();
 }
 
+- (void)performClose:(id)sender
+{
+    if (_isFullScreen) {
+        [self cancelOperation:sender];
+}
+
 - (void)close
 {
     // We are being asked to close rapidly, most likely because the page 

Modified: trunk/Source/WebKit2/ChangeLog (145408 => 145409)


--- trunk/Source/WebKit2/ChangeLog	2013-03-11 21:48:19 UTC (rev 145408)
+++ trunk/Source/WebKit2/ChangeLog	2013-03-11 21:51:19 UTC (rev 145409)
@@ -1,3 +1,18 @@
+2013-01-30  Jer Noble  <[email protected]>
+
+        Full screen mode should not exit when application resigns active state.
+        https://bugs.webkit.org/show_bug.cgi?id=106129
+
+        Reviewed by Darin Adler.
+
+        Allow the user to close the full screen window with Cmd-w by making the full screen window
+        closable, and by intercepting performClose:.
+
+        * UIProcess/mac/WKFullScreenWindowController.mm:
+        (-[WKFullScreenWindowController init]): Create a closable full screen window.
+        (-[WKFullScreenWindowController performClose:]): When we receive a close request in full screen mode,
+            animate out of full screen.
+
 2013-03-11  Zan Dobersek  <[email protected]>
 
         [GTK] WebKit2-only build fails

Modified: trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm (145408 => 145409)


--- trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm	2013-03-11 21:48:19 UTC (rev 145408)
+++ trunk/Source/WebKit2/UIProcess/mac/WKFullScreenWindowController.mm	2013-03-11 21:51:19 UTC (rev 145409)
@@ -83,7 +83,7 @@
 #pragma mark Initialization
 - (id)init
 {
-    RetainPtr<NSWindow> window = adoptNS([[WebCoreFullScreenWindow alloc] initWithContentRect:NSZeroRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO]);
+    RetainPtr<NSWindow> window = adoptNS([[WebCoreFullScreenWindow alloc] initWithContentRect:NSZeroRect styleMask:NSClosableWindowMask backing:NSBackingStoreBuffered defer:NO]);
     self = [super initWithWindow:window.get()];
     if (!self)
         return nil;
@@ -393,6 +393,12 @@
     [(WKFullScreenWindowController*)_self completeFinishExitFullScreenAnimationAfterRepaint];
 }
 
+- (void)performClose:(id)sender
+{
+    if (_isFullScreen)
+        [self cancelOperation:sender];
+}
+
 - (void)close
 {
     // We are being asked to close rapidly, most likely because the page 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to