[WebIDL] Annotate IDL interfaces under Source/WebCore/page/ with the OperationsNotDel...
authorzandobersek@gmail.com <zandobersek@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 6 Oct 2013 18:07:25 +0000 (18:07 +0000)
committerzandobersek@gmail.com <zandobersek@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 6 Oct 2013 18:07:25 +0000 (18:07 +0000)
https://bugs.webkit.org/show_bug.cgi?id=122278

Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
doesn't have any effect, but will keep the operations not configurable after the generator is modified
to preserve the original behavior. The attribute will be removed from each interface after checking
conformity with other browsers (in terms of configurability of operations of that interface) and the
WebKit's existing test suites.

This patch covers IDL interfaces under Source/WebCore/page/.

* page/Console.idl:
* page/Crypto.idl:
* page/DOMSecurityPolicy.idl:
* page/DOMSelection.idl:
* page/DOMWindow.idl:
* page/EventSource.idl:
* page/History.idl:
* page/Location.idl:
* page/Navigator.idl:
* page/Performance.idl:
* page/PerformanceEntryList.idl:
* page/SpeechInputResultList.idl:
* page/WindowBase64.idl:
* page/WindowTimers.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@156996 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 files changed:
Source/WebCore/ChangeLog
Source/WebCore/page/Console.idl
Source/WebCore/page/Crypto.idl
Source/WebCore/page/DOMSecurityPolicy.idl
Source/WebCore/page/DOMSelection.idl
Source/WebCore/page/DOMWindow.idl
Source/WebCore/page/EventSource.idl
Source/WebCore/page/History.idl
Source/WebCore/page/Location.idl
Source/WebCore/page/Navigator.idl
Source/WebCore/page/Performance.idl
Source/WebCore/page/PerformanceEntryList.idl
Source/WebCore/page/SpeechInputResultList.idl
Source/WebCore/page/WindowBase64.idl
Source/WebCore/page/WindowTimers.idl

index 27468e4..c79e7c1 100644 (file)
@@ -1,3 +1,32 @@
+2013-10-06  Zan Dobersek  <zdobersek@igalia.com>
+
+        [WebIDL] Annotate IDL interfaces under Source/WebCore/page/ with the OperationsNotDeletable attribute
+        https://bugs.webkit.org/show_bug.cgi?id=122278
+
+        Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
+        interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
+        doesn't have any effect, but will keep the operations not configurable after the generator is modified
+        to preserve the original behavior. The attribute will be removed from each interface after checking
+        conformity with other browsers (in terms of configurability of operations of that interface) and the
+        WebKit's existing test suites.
+
+        This patch covers IDL interfaces under Source/WebCore/page/.
+
+        * page/Console.idl:
+        * page/Crypto.idl:
+        * page/DOMSecurityPolicy.idl:
+        * page/DOMSelection.idl:
+        * page/DOMWindow.idl:
+        * page/EventSource.idl:
+        * page/History.idl:
+        * page/Location.idl:
+        * page/Navigator.idl:
+        * page/Performance.idl:
+        * page/PerformanceEntryList.idl:
+        * page/SpeechInputResultList.idl:
+        * page/WindowBase64.idl:
+        * page/WindowTimers.idl:
+
 2013-10-06  Darin Adler  <darin@apple.com>
 
         * rendering/RenderButton.cpp:
index c8c28a4..a832c95 100644 (file)
@@ -29,6 +29,7 @@
 [
     NoInterfaceObject,
     GenerateIsReachable=ImplFrame,
+    OperationsNotDeletable
 ] interface Console {
 
     [CallWith=ScriptArguments&ScriptState] void debug();
index 5813305..a8d62f2 100644 (file)
@@ -28,7 +28,8 @@
 
 [
     NoInterfaceObject,
-    ImplementationLacksVTable
+    ImplementationLacksVTable,
+    OperationsNotDeletable
 ] interface Crypto {
     [Custom, RaisesException] ArrayBufferView getRandomValues(ArrayBufferView array);
 };
index de0467e..4dddf4d 100644 (file)
@@ -24,7 +24,8 @@
 
 [
     Conditional=CSP_NEXT,
-    InterfaceName=SecurityPolicy
+    InterfaceName=SecurityPolicy,
+    OperationsNotDeletable
 ] interface DOMSecurityPolicy {
     readonly attribute boolean allowsEval;
     readonly attribute boolean allowsInlineScript;
index e187473..1eb7977 100644 (file)
@@ -31,7 +31,8 @@
 // https://developer.mozilla.org/En/DOM/Selection
 [
     GenerateIsReachable=ImplFrame,
-    InterfaceName=Selection
+    InterfaceName=Selection,
+    OperationsNotDeletable
 ] interface DOMSelection {
     readonly attribute Node anchorNode;
     readonly attribute long anchorOffset;
index 6c988be..f868f27 100644 (file)
@@ -37,7 +37,8 @@
     JSGenerateToNativeObject,
     ReplaceableConstructor,
     JSLegacyParent=JSDOMWindowBase,
-    InterfaceName=Window
+    InterfaceName=Window,
+    OperationsNotDeletable
 ] interface DOMWindow {
     // DOM Level 0
     [Replaceable] readonly attribute Screen screen;
index a291a9b..fede795 100644 (file)
@@ -36,7 +36,8 @@
     ConstructorCallWith=ScriptExecutionContext,
     ConstructorRaisesException,
     EventTarget,
-    JSNoStaticTables
+    JSNoStaticTables,
+    OperationsNotDeletable
 ] interface EventSource {
 
     readonly attribute DOMString URL; // Lowercased .url is the one in the spec, but leaving .URL for compatibility reasons.
index 2fc8c07..954dc3f 100644 (file)
@@ -29,6 +29,7 @@
     GenerateIsReachable=ImplFrame,
     CustomDeleteProperty,
     CustomEnumerateProperty,
+    OperationsNotDeletable
 ] interface History {
     readonly attribute unsigned long length;
     [CachedAttribute, Custom] readonly attribute SerializedScriptValue state;
index 07545a4..7eeb6be 100644 (file)
@@ -35,6 +35,7 @@
     JSCustomDefineOwnProperty,
     JSCustomNamedGetterOnPrototype,
     JSCustomDefineOwnPropertyOnPrototype,
+    OperationsNotDeletable
 ] interface Location {
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
              [DoNotCheckSecurityOnSetter, CustomSetter] attribute DOMString href;
index acc51ac..93e8b44 100644 (file)
@@ -19,6 +19,7 @@
 
 [
     GenerateIsReachable=ImplFrame,
+    OperationsNotDeletable
 ] interface Navigator {
     readonly attribute DOMString appCodeName;
     readonly attribute DOMString appName;
index 53e8390..6d65652 100644 (file)
@@ -33,6 +33,7 @@
 [
     Conditional=WEB_TIMING,
     EventTarget,
+    OperationsNotDeletable
 ] interface Performance {
     readonly attribute PerformanceNavigation navigation;
     readonly attribute PerformanceTiming timing;
index 4dc9ebf..5cfde0c 100644 (file)
@@ -33,7 +33,8 @@
     NoInterfaceObject,
     Conditional=WEB_TIMING,
     Conditional=PERFORMANCE_TIMELINE,
-    ImplementationLacksVTable
+    ImplementationLacksVTable,
+    OperationsNotDeletable
 ] interface PerformanceEntryList {
     readonly attribute unsigned long length;
     getter PerformanceEntry item(unsigned long index);
index 4cf29ea..2d984a2 100644 (file)
@@ -26,7 +26,8 @@
 [
     NoInterfaceObject,
     Conditional=INPUT_SPEECH,
-    ImplementationLacksVTable
+    ImplementationLacksVTable,
+    OperationsNotDeletable
 ] interface SpeechInputResultList {
     readonly attribute unsigned long length;
     getter SpeechInputResult item([IsIndex] unsigned long index);
index e2b53cb..b8c2ee4 100644 (file)
@@ -26,7 +26,8 @@
  */
 
 [
-    NoInterfaceObject
+    NoInterfaceObject,
+    OperationsNotDeletable
 ] interface WindowBase64 {
     [RaisesException] DOMString atob(DOMString string);
     [RaisesException] DOMString btoa(DOMString string);
index bfea6a6..9067d75 100644 (file)
@@ -26,7 +26,8 @@
  */
 
 [
-    NoInterfaceObject
+    NoInterfaceObject,
+    OperationsNotDeletable
 ] interface WindowTimers {
     [Custom] long setTimeout(any handler, [Default=Undefined] optional long timeout);
     void clearTimeout([Default=Undefined] optional long handle);