Title: [92576] trunk/Source
Revision
92576
Author
k...@chromium.org
Date
2011-08-07 19:06:58 -0700 (Sun, 07 Aug 2011)

Log Message

Make the fullscreen JS API enabled at runtime.
https://bugs.webkit.org/show_bug.cgi?id=65501

Reviewed by Adam Barth.

Source/WebCore:

* bindings/generic/RuntimeEnabledFeatures.cpp:
* bindings/generic/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::webkitFullScreenAPIEnabled):
(WebCore::RuntimeEnabledFeatures::setWebkitFullScreenAPIEnabled):
(WebCore::RuntimeEnabledFeatures::webkitRequestFullScreenEnabled):
(WebCore::RuntimeEnabledFeatures::webkitIsFullScreenEnabled):
(WebCore::RuntimeEnabledFeatures::webkitFullScreenKeyboardInputAllowedEnabled):
(WebCore::RuntimeEnabledFeatures::webkitCurrentFullScreenElementEnabled):
(WebCore::RuntimeEnabledFeatures::webkitCancelFullScreenEnabled):
* dom/Document.idl:
* dom/Element.idl:

Source/WebKit/chromium:

* public/WebRuntimeFeatures.h:
* src/WebRuntimeFeatures.cpp:
(WebKit::WebRuntimeFeatures::enableFullScreenAPI):
(WebKit::WebRuntimeFeatures::isFullScreenAPIEnabled):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (92575 => 92576)


--- trunk/Source/WebCore/ChangeLog	2011-08-07 22:16:27 UTC (rev 92575)
+++ trunk/Source/WebCore/ChangeLog	2011-08-08 02:06:58 UTC (rev 92576)
@@ -1,3 +1,22 @@
+2011-08-07  James Kozianski  <k...@chromium.org>
+
+        Make the fullscreen JS API enabled at runtime.
+        https://bugs.webkit.org/show_bug.cgi?id=65501
+
+        Reviewed by Adam Barth.
+
+        * bindings/generic/RuntimeEnabledFeatures.cpp:
+        * bindings/generic/RuntimeEnabledFeatures.h:
+        (WebCore::RuntimeEnabledFeatures::webkitFullScreenAPIEnabled):
+        (WebCore::RuntimeEnabledFeatures::setWebkitFullScreenAPIEnabled):
+        (WebCore::RuntimeEnabledFeatures::webkitRequestFullScreenEnabled):
+        (WebCore::RuntimeEnabledFeatures::webkitIsFullScreenEnabled):
+        (WebCore::RuntimeEnabledFeatures::webkitFullScreenKeyboardInputAllowedEnabled):
+        (WebCore::RuntimeEnabledFeatures::webkitCurrentFullScreenElementEnabled):
+        (WebCore::RuntimeEnabledFeatures::webkitCancelFullScreenEnabled):
+        * dom/Document.idl:
+        * dom/Element.idl:
+
 2011-08-07  Martin Robinson  <mrobin...@igalia.com>
 
         Distribution fix for GTK+.

Modified: trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.cpp (92575 => 92576)


--- trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.cpp	2011-08-07 22:16:27 UTC (rev 92575)
+++ trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.cpp	2011-08-08 02:06:58 UTC (rev 92576)
@@ -146,4 +146,8 @@
 bool RuntimeEnabledFeatures::isQuotaEnabled = false;
 #endif
 
+#if ENABLE(FULLSCREEN_API)
+bool RuntimeEnabledFeatures::isFullScreenAPIEnabled = true;
+#endif
+
 } // namespace WebCore

Modified: trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.h (92575 => 92576)


--- trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.h	2011-08-07 22:16:27 UTC (rev 92575)
+++ trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.h	2011-08-08 02:06:58 UTC (rev 92576)
@@ -70,6 +70,16 @@
     static bool webkitIDBRequestEnabled() { return isIndexedDBEnabled; }
     static bool webkitIDBTransactionEnabled() { return isIndexedDBEnabled; }
 
+#if ENABLE(FULLSCREEN_API)
+    static bool webkitFullScreenAPIEnabled() { return isFullScreenAPIEnabled; }
+    static void setWebkitFullScreenAPIEnabled(bool isEnabled) { isFullScreenAPIEnabled = isEnabled; }
+    static bool webkitRequestFullScreenEnabled() { return isFullScreenAPIEnabled; }
+    static bool webkitIsFullScreenEnabled() { return isFullScreenAPIEnabled; }
+    static bool webkitFullScreenKeyboardInputAllowedEnabled() { return isFullScreenAPIEnabled; }
+    static bool webkitCurrentFullScreenElementEnabled() { return isFullScreenAPIEnabled; }
+    static bool webkitCancelFullScreenEnabled() { return isFullScreenAPIEnabled; }
+#endif
+
 #if ENABLE(VIDEO)
     static bool audioEnabled();
     static bool htmlMediaElementEnabled();
@@ -192,6 +202,10 @@
 #if ENABLE(QUOTA)
     static bool isQuotaEnabled;
 #endif
+
+#if ENABLE(FULLSCREEN_API)
+    static bool isFullScreenAPIEnabled;
+#endif
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/dom/Document.idl (92575 => 92576)


--- trunk/Source/WebCore/dom/Document.idl	2011-08-07 22:16:27 UTC (rev 92575)
+++ trunk/Source/WebCore/dom/Document.idl	2011-08-08 02:06:58 UTC (rev 92576)
@@ -238,10 +238,10 @@
             raises(DOMException);
 
 #if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
-        readonly attribute boolean webkitIsFullScreen;
-        readonly attribute boolean webkitFullScreenKeyboardInputAllowed;
-        readonly attribute Element webkitCurrentFullScreenElement;
-        void webkitCancelFullScreen();
+        readonly attribute [EnabledAtRuntime] boolean webkitIsFullScreen;
+        readonly attribute [EnabledAtRuntime] boolean webkitFullScreenKeyboardInputAllowed;
+        readonly attribute [EnabledAtRuntime] Element webkitCurrentFullScreenElement;
+        [EnabledAtRuntime] void webkitCancelFullScreen();
 #endif
 
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C

Modified: trunk/Source/WebCore/dom/Element.idl (92575 => 92576)


--- trunk/Source/WebCore/dom/Element.idl	2011-08-07 22:16:27 UTC (rev 92575)
+++ trunk/Source/WebCore/dom/Element.idl	2011-08-08 02:06:58 UTC (rev 92576)
@@ -136,7 +136,7 @@
 
 #if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
         const unsigned short ALLOW_KEYBOARD_INPUT = 1;
-        void webkitRequestFullScreen(in [Optional=CallWithDefaultValue] unsigned short flags);
+        [EnabledAtRuntime] void webkitRequestFullScreen(in [Optional=CallWithDefaultValue] unsigned short flags);
 #endif
 
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C

Modified: trunk/Source/WebKit/chromium/ChangeLog (92575 => 92576)


--- trunk/Source/WebKit/chromium/ChangeLog	2011-08-07 22:16:27 UTC (rev 92575)
+++ trunk/Source/WebKit/chromium/ChangeLog	2011-08-08 02:06:58 UTC (rev 92576)
@@ -1,3 +1,15 @@
+2011-08-07  James Kozianski  <k...@chromium.org>
+
+        Make the fullscreen JS API enabled at runtime.
+        https://bugs.webkit.org/show_bug.cgi?id=65501
+
+        Reviewed by Adam Barth.
+
+        * public/WebRuntimeFeatures.h:
+        * src/WebRuntimeFeatures.cpp:
+        (WebKit::WebRuntimeFeatures::enableFullScreenAPI):
+        (WebKit::WebRuntimeFeatures::isFullScreenAPIEnabled):
+
 2011-08-05  James Robinson  <jam...@chromium.org>
 
         [chromium] Accelerated canvas breaks when moving canvases or resources between Pages

Modified: trunk/Source/WebKit/chromium/public/WebRuntimeFeatures.h (92575 => 92576)


--- trunk/Source/WebKit/chromium/public/WebRuntimeFeatures.h	2011-08-07 22:16:27 UTC (rev 92575)
+++ trunk/Source/WebKit/chromium/public/WebRuntimeFeatures.h	2011-08-08 02:06:58 UTC (rev 92576)
@@ -106,6 +106,9 @@
     WEBKIT_EXPORT static void enableMediaStream(bool);
     WEBKIT_EXPORT static bool isMediaStreamEnabled();
 
+    WEBKIT_EXPORT static void enableFullScreenAPI(bool);
+    WEBKIT_EXPORT static bool isFullScreenAPIEnabled();
+
 private:
     WebRuntimeFeatures();
 };

Modified: trunk/Source/WebKit/chromium/src/WebRuntimeFeatures.cpp (92575 => 92576)


--- trunk/Source/WebKit/chromium/src/WebRuntimeFeatures.cpp	2011-08-07 22:16:27 UTC (rev 92575)
+++ trunk/Source/WebKit/chromium/src/WebRuntimeFeatures.cpp	2011-08-08 02:06:58 UTC (rev 92576)
@@ -356,4 +356,22 @@
 #endif
 }
 
+void WebRuntimeFeatures::enableFullScreenAPI(bool enable)
+{
+#if ENABLE(FULLSCREEN_API)
+    RuntimeEnabledFeatures::setWebkitFullScreenAPIEnabled(enable);
+#else
+    UNUSED_PARAM(enable);
+#endif
+}
+
+bool WebRuntimeFeatures::isFullScreenAPIEnabled()
+{
+#if ENABLE(FULLSCREEN_API)
+    return RuntimeEnabledFeatures::webkitFullScreenAPIEnabled();
+#else
+    return false;
+#endif
+}
+
 } // namespace WebKit
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to