• zandobersek@gmail.com's avatar
    Remove the OperationsNotDeletable attribute from most of the WebIDL interfaces · d5961560
    zandobersek@gmail.com authored
    https://bugs.webkit.org/show_bug.cgi?id=124151
    
    Reviewed by Geoffrey Garen.
    
    The OperationsNotDeletable attribute currently doesn't have any effect, but will soon enforce
    non-configurability of operations on the interface that uses the attribute. Non-configurability
    of operations is the default behavior at the moment, but will be changed to follow the WebIDL
    specification which requires that the operations are configurable (i.e. -- in JSC terms -- deletable).
    IE and Firefox already exhibit this behavior in the majority of cases, while Chrome and Opera don't.
    
    The attribute remains in use on the Location interface to mimic the Unforgeable attribute which
    also makes operations of an interface non-configurable. Unforgeable attribute will be used instead
    when support for it will be added to the JSC bindings generator.
    
    * Modules/battery/BatteryManager.idl:
    * Modules/encryptedmedia/MediaKeySession.idl:
    * Modules/encryptedmedia/MediaKeys.idl:
    * Modules/gamepad/GamepadList.idl:
    * Modules/geolocation/Geolocation.idl:
    * Modules/indexeddb/IDBCursor.idl:
    * Modules/indexeddb/IDBDatabase.idl:
    * Modules/indexeddb/IDBFactory.idl:
    * Modules/indexeddb/IDBIndex.idl:
    * Modules/indexeddb/IDBKeyRange.idl:
    * Modules/indexeddb/IDBObjectStore.idl:
    * Modules/indexeddb/IDBTransaction.idl:
    * Modules/indexeddb/IDBVersionChangeEvent.idl:
    * Modules/mediacontrols/MediaControlsHost.idl:
    * Modules/mediasource/MediaSource.idl:
    * Modules/mediasource/SourceBuffer.idl:
    * Modules/mediasource/SourceBufferList.idl:
    * Modules/mediastream/MediaStream.idl:
    * Modules/mediastream/MediaStreamTrack.idl:
    * Modules/mediastream/RTCDTMFSender.idl:
    * Modules/mediastream/RTCDataChannel.idl:
    * Modules/mediastream/RTCPeerConnection.idl:
    * Modules/mediastream/RTCStatsReport.idl:
    * Modules/mediastream/RTCStatsResponse.idl:
    * Modules/networkinfo/NetworkInfoConnection.idl:
    * Modules/notifications/Notification.idl:
    * Modules/notifications/NotificationCenter.idl:
    * Modules/proximity/DeviceProximityEvent.idl:
    * Modules/quota/StorageInfo.idl:
    * Modules/quota/StorageQuota.idl:
    * Modules/speech/SpeechGrammarList.idl:
    * Modules/speech/SpeechRecognition.idl:
    * Modules/speech/SpeechRecognitionResult.idl:
    * Modules/speech/SpeechRecognitionResultList.idl:
    * Modules/speech/SpeechSynthesis.idl:
    * Modules/webaudio/AnalyserNode.idl:
    * Modules/webaudio/AudioBuffer.idl:
    * Modules/webaudio/AudioBufferSourceNode.idl:
    * Modules/webaudio/AudioContext.idl:
    * Modules/webaudio/AudioListener.idl:
    * Modules/webaudio/AudioNode.idl:
    * Modules/webaudio/AudioParam.idl:
    * Modules/webaudio/BiquadFilterNode.idl:
    * Modules/webaudio/OscillatorNode.idl:
    * Modules/webaudio/PannerNode.idl:
    * Modules/webdatabase/Database.idl:
    * Modules/webdatabase/DatabaseSync.idl:
    * Modules/webdatabase/SQLResultSetRowList.idl:
    * Modules/webdatabase/SQLTransaction.idl:
    * Modules/webdatabase/SQLTransactionSync.idl:
    * Modules/websockets/WebSocket.idl:
    * crypto/CryptoKey.idl:
    * crypto/SubtleCrypto.idl:
    * css/CSSHostRule.idl:
    * css/CSSMediaRule.idl:
    * css/CSSPrimitiveValue.idl:
    * css/CSSRuleList.idl:
    * css/CSSStyleDeclaration.idl:
    * css/CSSStyleSheet.idl:
    * css/CSSSupportsRule.idl:
    * css/CSSValueList.idl:
    * css/DOMWindowCSS.idl:
    * css/FontLoader.idl:
    * css/MediaList.idl:
    * css/MediaQueryList.idl:
    * css/MediaQueryListListener.idl:
    * css/StyleMedia.idl:
    * css/StyleSheet.idl:
    * css/StyleSheetList.idl:
    * css/WebKitCSSFilterValue.idl:
    * css/WebKitCSSKeyframesRule.idl:
    * css/WebKitCSSMatrix.idl:
    * css/WebKitCSSTransformValue.idl:
    * dom/CharacterData.idl:
    * dom/ChildNode.idl:
    * dom/ClientRectList.idl:
    * dom/Clipboard.idl:
    * dom/CompositionEvent.idl:
    * dom/CustomEvent.idl:
    * dom/DOMCoreException.idl:
    * dom/DOMImplementation.idl:
    * dom/DOMNamedFlowCollection.idl:
    * dom/DOMStringList.idl:
    * dom/DOMStringMap.idl:
    * dom/DataTransferItem.idl:
    * dom/DataTransferItemList.idl:
    * dom/DeviceMotionEvent.idl:
    * dom/DeviceOrientationEvent.idl:
    * dom/Document.idl:
    * dom/DocumentFragment.idl:
    * dom/DocumentType.idl:
    * dom/Element.idl:
    * dom/Event.idl:
    * dom/EventException.idl:
    * dom/EventListener.idl:
    * dom/EventTarget.idl:
    * dom/HashChangeEvent.idl:
    * dom/KeyboardEvent.idl:
    * dom/MessageEvent.idl:
    * dom/MessagePort.idl:
    * dom/MouseEvent.idl:
    * dom/MutationEvent.idl:
    * dom/MutationObserver.idl:
    * dom/NamedNodeMap.idl:
    * dom/Node.idl:
    * dom/NodeFilter.idl:
    * dom/NodeIterator.idl:
    * dom/NodeList.idl:
    * dom/Range.idl:
    * dom/RangeException.idl:
    * dom/ShadowRoot.idl:
    * dom/Text.idl:
    * dom/TextEvent.idl:
    * dom/TouchEvent.idl:
    * dom/TouchList.idl:
    * dom/TreeWalker.idl:
    * dom/UIEvent.idl:
    * dom/WebKitNamedFlow.idl:
    * dom/WheelEvent.idl:
    * fileapi/Blob.idl:
    * fileapi/FileException.idl:
    * fileapi/FileList.idl:
    * fileapi/FileReader.idl:
    * fileapi/FileReaderSync.idl:
    * html/DOMFormData.idl:
    * html/DOMSettableTokenList.idl:
    * html/DOMTokenList.idl:
    * html/DOMURL.idl:
    * html/HTMLAllCollection.idl:
    * html/HTMLAnchorElement.idl:
    * html/HTMLButtonElement.idl:
    * html/HTMLCanvasElement.idl:
    * html/HTMLCollection.idl:
    * html/HTMLDocument.idl:
    * html/HTMLElement.idl:
    * html/HTMLEmbedElement.idl:
    * html/HTMLFieldSetElement.idl:
    * html/HTMLFormControlsCollection.idl:
    * html/HTMLFormElement.idl:
    * html/HTMLFrameElement.idl:
    * html/HTMLIFrameElement.idl:
    * html/HTMLInputElement.idl:
    * html/HTMLKeygenElement.idl:
    * html/HTMLMarqueeElement.idl:
    * html/HTMLMediaElement.idl:
    * html/HTMLObjectElement.idl:
    * html/HTMLOptionsCollection.idl:
    * html/HTMLOutputElement.idl:
    * html/HTMLSelectElement.idl:
    * html/HTMLTableElement.idl:
    * html/HTMLTableRowElement.idl:
    * html/HTMLTableSectionElement.idl:
    * html/HTMLTextAreaElement.idl:
    * html/HTMLVideoElement.idl:
    * html/MediaController.idl:
    * html/RadioNodeList.idl:
    * html/TimeRanges.idl:
    * html/canvas/CanvasGradient.idl:
    * html/canvas/CanvasRenderingContext2D.idl:
    * html/canvas/DOMPath.idl:
    * html/canvas/EXTDrawBuffers.idl:
    * html/canvas/OESVertexArrayObject.idl:
    * html/canvas/WebGLDebugShaders.idl:
    * html/canvas/WebGLLoseContext.idl:
    * html/canvas/WebGLRenderingContext.idl:
    * html/track/AudioTrackList.idl:
    * html/track/TextTrack.idl:
    * html/track/TextTrackCue.idl:
    * html/track/TextTrackCueList.idl:
    * html/track/TextTrackList.idl:
    * html/track/TextTrackRegionList.idl:
    * html/track/VideoTrackList.idl:
    * loader/appcache/DOMApplicationCache.idl:
    * page/Console.idl:
    * page/Crypto.idl:
    * page/DOMSecurityPolicy.idl:
    * page/DOMSelection.idl:
    * page/DOMWindow.idl:
    * page/EventSource.idl:
    * page/History.idl:
    * page/Navigator.idl:
    * page/Performance.idl:
    * page/PerformanceEntryList.idl:
    * page/SpeechInputResultList.idl:
    * page/WindowBase64.idl:
    * page/WindowTimers.idl:
    * plugins/DOMMimeTypeArray.idl:
    * plugins/DOMPlugin.idl:
    * plugins/DOMPluginArray.idl:
    * storage/Storage.idl:
    * storage/StorageEvent.idl:
    * svg/SVGAngle.idl:
    * svg/SVGAnimationElement.idl:
    * svg/SVGColor.idl:
    * svg/SVGCursorElement.idl:
    * svg/SVGDocument.idl:
    * svg/SVGElement.idl:
    * svg/SVGElementInstanceList.idl:
    * svg/SVGException.idl:
    * svg/SVGFEDropShadowElement.idl:
    * svg/SVGFEGaussianBlurElement.idl:
    * svg/SVGFEMorphologyElement.idl:
    * svg/SVGFilterElement.idl:
    * svg/SVGGraphicsElement.idl:
    * svg/SVGLength.idl:
    * svg/SVGLengthList.idl:
    * svg/SVGMarkerElement.idl:
    * svg/SVGMaskElement.idl:
    * svg/SVGMatrix.idl:
    * svg/SVGNumberList.idl:
    * svg/SVGPaint.idl:
    * svg/SVGPathElement.idl:
    * svg/SVGPathSegList.idl:
    * svg/SVGPatternElement.idl:
    * svg/SVGPoint.idl:
    * svg/SVGPointList.idl:
    * svg/SVGSVGElement.idl:
    * svg/SVGStringList.idl:
    * svg/SVGTests.idl:
    * svg/SVGTextContentElement.idl:
    * svg/SVGTransform.idl:
    * svg/SVGTransformList.idl:
    * workers/DedicatedWorkerGlobalScope.idl:
    * workers/Worker.idl:
    * workers/WorkerGlobalScope.idl:
    * workers/WorkerLocation.idl:
    * xml/DOMParser.idl:
    * xml/XMLHttpRequest.idl:
    * xml/XMLHttpRequestException.idl:
    * xml/XMLHttpRequestUpload.idl:
    * xml/XMLSerializer.idl:
    * xml/XPathEvaluator.idl:
    * xml/XPathException.idl:
    * xml/XPathExpression.idl:
    * xml/XPathNSResolver.idl:
    * xml/XPathResult.idl:
    * xml/XSLTProcessor.idl:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159061 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    d5961560