Remove [NoInterfaceObject] from WorkerGlobalScope
https://bugs.webkit.org/show_bug.cgi?id=118071

Reviewed by Kentaro Hara.

.:

Update GENERATE_BINDINGS CMake macro to take 2 additional parameters
now needed by the preprocess-idls.pl script.

* Source/cmake/WebKitMacros.cmake:

Source/WebCore:

Expose WorkerGlobalScope interface in worker environment as per the latest
specification:
http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#the-workerglobalscope-common-interface

Also expose the SharedWorkerGlobalScope interface when the JavaScript global environment is a
shared worker environment, and the DedicatedWorkerGlobalScope interface when the JavaScript
global environment is a dedicated worker environment:
http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#sharedworkerglobalscope
http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#dedicatedworkerglobalscope

The semantics of the [GlobalContext] IDL extended attribute has changed to support this
use case. The value for the extended attribute is now the name of the interface to which the
Constructor attribute should be added (Window, WorkerGlobalScope, SharedWorkerGlobalScope...).
It is possible to specify several interface names by using '&' as separator. For e.g.
[GlobalContext=DOMWindow&WorkerGlobalScope].

Tests: fast/js/global-constructors-attributes-dedicated-worker.html
       fast/js/global-constructors-attributes-shared-worker.html

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* Modules/websockets/WebSocket.idl:
* UseJSC.cmake:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateConstructorHelperMethods):
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/generate-bindings.pl:
(checkIfIDLAttributesExists):
* bindings/scripts/preprocess-idls.pl:
* dom/MessageChannel.idl:
* dom/MessageEvent.idl:
* fileapi/Blob.idl:
* fileapi/FileReader.idl:
* fileapi/FileReaderSync.idl:
* html/DOMURL.idl:
* html/canvas/ArrayBuffer.idl:
* html/canvas/DataView.idl:
* html/canvas/Float32Array.idl:
* html/canvas/Float64Array.idl:
* html/canvas/Int16Array.idl:
* html/canvas/Int32Array.idl:
* html/canvas/Int8Array.idl:
* html/canvas/Uint16Array.idl:
* html/canvas/Uint32Array.idl:
* html/canvas/Uint8Array.idl:
* html/canvas/Uint8ClampedArray.idl:
* page/EventSource.idl:
* workers/DedicatedWorkerGlobalScope.idl:
* workers/SharedWorkerGlobalScope.idl:
* workers/WorkerGlobalScope.idl:
* workers/WorkerLocation.idl:
* xml/XMLHttpRequest.idl:

Tools:

Update bindings test script to pass 2 additional parameters
now needed by the preprocess-idls.pl script.

* Scripts/webkitpy/bindings/main.py:
(BindingsTests.generate_supplemental_dependency):
(BindingsTests.main):

LayoutTests:

Split fast/js/global-constructors-attributes-worker.html test into 2 for both
shared and dedicated workers, as the output is now different.

* fast/js/global-constructors-attributes-dedicated-worker-expected.txt: Copied from LayoutTests/fast/js/global-constructors-attributes-worker-expected.txt.
* fast/js/global-constructors-attributes-dedicated-worker.html: Copied from LayoutTests/fast/js/global-constructors-attributes-worker.html.
* fast/js/global-constructors-attributes-shared-worker-expected.txt: Renamed from LayoutTests/fast/js/global-constructors-attributes-worker-expected.txt.
* fast/js/global-constructors-attributes-shared-worker.html: Renamed from LayoutTests/fast/js/global-constructors-attributes-worker.html.
* fast/js/script-tests/global-constructors-attributes.js:
(.self.postMessage):
(.self.onconnect.self.postMessage):
(.self.onconnect):
* platform/efl/fast/js/global-constructors-attributes-dedicated-worker-expected.txt: Copied from LayoutTests/platform/gtk/fast/js/global-constructors-attributes-worker-expected.txt.
* platform/efl/fast/js/global-constructors-attributes-shared-worker-expected.txt: Copied from LayoutTests/platform/gtk/fast/js/global-constructors-attributes-worker-expected.txt.
* platform/gtk/fast/js/global-constructors-attributes-dedicated-worker-expected.txt: Renamed from LayoutTests/platform/gtk/fast/js/global-constructors-attributes-worker-expected.txt.
* platform/gtk/fast/js/global-constructors-attributes-shared-worker-expected.txt: Renamed from LayoutTests/platform/efl/fast/js/global-constructors-attributes-worker-expected.txt.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152100 268f45cc-cd09-0410-ab3c-d52691b4dbfc
49 files changed