Title: [134284] branches/safari-536.28-branch/Source

Diff

Modified: branches/safari-536.28-branch/Source/WebCore/ChangeLog (134283 => 134284)


--- branches/safari-536.28-branch/Source/WebCore/ChangeLog	2012-11-12 20:37:52 UTC (rev 134283)
+++ branches/safari-536.28-branch/Source/WebCore/ChangeLog	2012-11-12 20:38:10 UTC (rev 134284)
@@ -1,5 +1,22 @@
 2012-11-12  Lucas Forschler  <[email protected]>
 
+        Merge r131018
+
+    2012-10-10  Jer Noble  <[email protected]>
+
+            Disallow full screen mode keyboard access by default.
+            https://bugs.webkit.org/show_bug.cgi?id=98971
+            <rdar://problem/12474226>
+
+            Reviewed by Sam Weinig.
+
+            Fall back to requesting non-keyboard access if the client refuses to allow keyboard access.
+
+            * dom/Document.cpp:
+            (WebCore::Document::requestFullScreenForElement):
+
+2012-11-12  Lucas Forschler  <[email protected]>
+
         Merge r130855
 
     2012-10-09  Philip Rogers  <[email protected]>
@@ -207335,3 +207352,4 @@
 .
 .
 .
+.

Modified: branches/safari-536.28-branch/Source/WebCore/dom/Document.cpp (134283 => 134284)


--- branches/safari-536.28-branch/Source/WebCore/dom/Document.cpp	2012-11-12 20:37:52 UTC (rev 134283)
+++ branches/safari-536.28-branch/Source/WebCore/dom/Document.cpp	2012-11-12 20:38:10 UTC (rev 134284)
@@ -5387,10 +5387,18 @@
         // There is a previously-established user preference, security risk, or platform limitation.
         if (!page() || !page()->settings()->fullScreenEnabled())
             break;
-        
-        if (!page()->chrome()->client()->supportsFullScreenForElement(element, flags & Element::ALLOW_KEYBOARD_INPUT))
-            break;
 
+        if (!page()->chrome()->client()->supportsFullScreenForElement(element, flags & Element::ALLOW_KEYBOARD_INPUT)) {
+            // The new full screen API does not accept a "flags" parameter, so fall back to disallowing
+            // keyboard input if the chrome client refuses to allow keyboard input.
+            if (!inLegacyMozillaMode && flags & Element::ALLOW_KEYBOARD_INPUT) {
+                flags &= ~Element::ALLOW_KEYBOARD_INPUT;
+                if (!page()->chrome()->client()->supportsFullScreenForElement(element, false))
+                    break;
+            } else
+                break;
+        }
+
         // 2. Let doc be element's node document. (i.e. "this")
         Document* currentDoc = this;
 

Modified: branches/safari-536.28-branch/Source/WebKit/mac/ChangeLog (134283 => 134284)


--- branches/safari-536.28-branch/Source/WebKit/mac/ChangeLog	2012-11-12 20:37:52 UTC (rev 134283)
+++ branches/safari-536.28-branch/Source/WebKit/mac/ChangeLog	2012-11-12 20:38:10 UTC (rev 134284)
@@ -1,3 +1,20 @@
+2012-11-12  Lucas Forschler  <[email protected]>
+
+        Merge r131018
+
+    2012-10-10  Jer Noble  <[email protected]>
+
+            Disallow full screen mode keyboard access by default.
+            https://bugs.webkit.org/show_bug.cgi?id=98971
+            <rdar://problem/12474226>
+
+            Reviewed by Sam Weinig.
+
+            Only support full screen if keyboard access is not requested.
+
+            * WebView/WebView.mm:
+            (-[WebView _supportsFullScreenForElement:WebCore::withKeyboard:]):
+
 2012-08-06  Lucas Forschler  <[email protected]>
 
     Merge 123907
@@ -19499,3 +19516,4 @@
         (WebKit::NetscapePluginInstanceProxy::loadRequest): Added an assertion.
 
 == Rolled over to ChangeLog-2010-01-29 ==
+.

Modified: branches/safari-536.28-branch/Source/WebKit/mac/WebView/WebView.mm (134283 => 134284)


--- branches/safari-536.28-branch/Source/WebKit/mac/WebView/WebView.mm	2012-11-12 20:37:52 UTC (rev 134283)
+++ branches/safari-536.28-branch/Source/WebKit/mac/WebView/WebView.mm	2012-11-12 20:38:10 UTC (rev 134284)
@@ -6343,7 +6343,7 @@
     if (![[WebPreferences standardPreferences] fullScreenEnabled])
         return NO;
 
-    return YES;
+    return !withKeyboard;
 }
 
 - (void)_enterFullScreenForElement:(WebCore::Element*)element

Modified: branches/safari-536.28-branch/Source/WebKit2/ChangeLog (134283 => 134284)


--- branches/safari-536.28-branch/Source/WebKit2/ChangeLog	2012-11-12 20:37:52 UTC (rev 134283)
+++ branches/safari-536.28-branch/Source/WebKit2/ChangeLog	2012-11-12 20:38:10 UTC (rev 134284)
@@ -1,5 +1,22 @@
 2012-11-12  Lucas Forschler  <[email protected]>
 
+        Merge r131018
+
+    2012-10-10  Jer Noble  <[email protected]>
+
+            Disallow full screen mode keyboard access by default.
+            https://bugs.webkit.org/show_bug.cgi?id=98971
+            <rdar://problem/12474226>
+
+            Reviewed by Sam Weinig.
+
+            Only support full screen if keyboard access is not requested.
+
+            * UIProcess/WebFullScreenManagerProxy.cpp:
+            (WebKit::WebFullScreenManagerProxy::supportsFullScreen):
+
+2012-11-12  Lucas Forschler  <[email protected]>
+
         Merge r126903
 
     2012-08-28  Jon Lee  <[email protected]>
@@ -47841,3 +47858,4 @@
 .
 .
 .
+.

Modified: branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebFullScreenManagerProxy.cpp (134283 => 134284)


--- branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebFullScreenManagerProxy.cpp	2012-11-12 20:37:52 UTC (rev 134283)
+++ branches/safari-536.28-branch/Source/WebKit2/UIProcess/WebFullScreenManagerProxy.cpp	2012-11-12 20:38:10 UTC (rev 134284)
@@ -96,7 +96,7 @@
 
 void WebFullScreenManagerProxy::supportsFullScreen(bool withKeyboard, bool& supports)
 {
-    supports = true;
+    supports = !withKeyboard;
 }
 
 } // namespace WebKit
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to