Changeset 154020 in webkit


Ignore:
Timestamp:
Aug 13, 2013 1:54:48 PM (11 years ago)
Author:
commit-queue@webkit.org
Message:

Unreviewed, rolling out r153925.
http://trac.webkit.org/changeset/153925
https://bugs.webkit.org/show_bug.cgi?id=119768

broke fast/media/media-query-list-07.html (Requested by kling
on #webkit).

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(JSValueToNative):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/test/JS/JSTestCallback.cpp:

(WebCore::JSTestCallback::JSTestCallback):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):

  • css/MediaAllInOne.cpp:
  • css/MediaQueryListListener.cpp: Copied from Source/WebCore/css/MediaQueryListListener.idl.

(WebCore::MediaQueryListListener::queryChanged):

  • css/MediaQueryListListener.h:

(WebCore::MediaQueryListListener::create):
(WebCore::MediaQueryListListener::operator==):
(WebCore::MediaQueryListListener::MediaQueryListListener):

  • css/MediaQueryListListener.idl:
  • css/MediaQueryMatcher.cpp:

(WebCore::MediaQueryMatcher::Listener::evaluate):
(WebCore::MediaQueryMatcher::styleResolverChanged):

  • css/MediaQueryMatcher.h:
Location:
trunk/Source/WebCore
Files:
19 edited
1 copied

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/CMakeLists.txt

    r153968 r154020  
    317317    css/MediaList.idl
    318318    css/MediaQueryList.idl
    319     css/MediaQueryListListener.idl
    320319    css/RGBColor.idl
    321320    css/Rect.idl
     
    10761075    css/MediaQueryExp.cpp
    10771076    css/MediaQueryList.cpp
     1077    css/MediaQueryListListener.cpp
    10781078    css/MediaQueryMatcher.cpp
    10791079    css/PageRuleCollector.cpp
  • trunk/Source/WebCore/ChangeLog

    r154018 r154020  
     12013-08-13  Commit Queue  <commit-queue@webkit.org>
     2
     3        Unreviewed, rolling out r153925.
     4        http://trac.webkit.org/changeset/153925
     5        https://bugs.webkit.org/show_bug.cgi?id=119768
     6
     7        broke fast/media/media-query-list-07.html (Requested by kling
     8        on #webkit).
     9
     10        * CMakeLists.txt:
     11        * DerivedSources.cpp:
     12        * DerivedSources.make:
     13        * DerivedSources.pri:
     14        * GNUmakefile.list.am:
     15        * Target.pri:
     16        * WebCore.vcxproj/WebCore.vcxproj:
     17        * WebCore.vcxproj/WebCore.vcxproj.filters:
     18        * WebCore.xcodeproj/project.pbxproj:
     19        * bindings/scripts/CodeGeneratorJS.pm:
     20        (GenerateCallbackHeader):
     21        (GenerateCallbackImplementation):
     22        (JSValueToNative):
     23        * bindings/scripts/IDLAttributes.txt:
     24        * bindings/scripts/test/JS/JSTestCallback.cpp:
     25        (WebCore::JSTestCallback::JSTestCallback):
     26        * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
     27        (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
     28        * css/MediaAllInOne.cpp:
     29        * css/MediaQueryListListener.cpp: Copied from Source/WebCore/css/MediaQueryListListener.idl.
     30        (WebCore::MediaQueryListListener::queryChanged):
     31        * css/MediaQueryListListener.h:
     32        (WebCore::MediaQueryListListener::create):
     33        (WebCore::MediaQueryListListener::operator==):
     34        (WebCore::MediaQueryListListener::MediaQueryListListener):
     35        * css/MediaQueryListListener.idl:
     36        * css/MediaQueryMatcher.cpp:
     37        (WebCore::MediaQueryMatcher::Listener::evaluate):
     38        (WebCore::MediaQueryMatcher::styleResolverChanged):
     39        * css/MediaQueryMatcher.h:
     40
    1412013-08-13  Simon Fraser  <simon.fraser@apple.com>
    242
  • trunk/Source/WebCore/DerivedSources.cpp

    r153925 r154020  
    275275#include "JSMediaList.cpp"
    276276#include "JSMediaQueryList.cpp"
    277 #include "JSMediaQueryListListener.cpp"
    278277#if ENABLE(MEDIA_SOURCE)
    279278#include "JSMediaSource.cpp"
  • trunk/Source/WebCore/DerivedSources.make

    r153925 r154020  
    652652DOM_CLASSES=$(basename $(notdir $(BINDING_IDLS)))
    653653
    654 JS_DOM_HEADERS=$(filter-out JSEventListener.h, $(DOM_CLASSES:%=JS%.h))
     654JS_DOM_HEADERS=$(filter-out JSMediaQueryListListener.h JSEventListener.h, $(DOM_CLASSES:%=JS%.h))
    655655
    656656WEB_DOM_HEADERS :=
  • trunk/Source/WebCore/DerivedSources.pri

    r153925 r154020  
    210210    $$PWD/css/MediaList.idl \
    211211    $$PWD/css/MediaQueryList.idl \
    212     $$PWD/css/MediaQueryListListener.idl \
    213212    $$PWD/css/Rect.idl \
    214213    $$PWD/css/RGBColor.idl \
  • trunk/Source/WebCore/GNUmakefile.list.am

    r153939 r154020  
    528528        DerivedSources/WebCore/JSMediaQueryList.cpp \
    529529        DerivedSources/WebCore/JSMediaQueryList.h \
    530         DerivedSources/WebCore/JSMediaQueryListListener.cpp \
    531         DerivedSources/WebCore/JSMediaQueryListListener.h \
    532530        DerivedSources/WebCore/JSMessageChannel.cpp \
    533531        DerivedSources/WebCore/JSMessageChannel.h \
     
    13641362        $(WebCore)/css/MediaList.idl \
    13651363        $(WebCore)/css/MediaQueryList.idl \
    1366         $(WebCore)/css/MediaQueryListListener.idl \
    13671364        $(WebCore)/css/RGBColor.idl \
    13681365        $(WebCore)/css/Rect.idl \
     
    27212718        Source/WebCore/css/MediaQueryList.cpp \
    27222719        Source/WebCore/css/MediaQueryList.h \
     2720        Source/WebCore/css/MediaQueryListListener.cpp \
    27232721        Source/WebCore/css/MediaQueryListListener.h \
    27242722        Source/WebCore/css/MediaQueryMatcher.cpp \
  • trunk/Source/WebCore/Target.pri

    r153939 r154020  
    318318    css/MediaQueryExp.cpp \
    319319    css/MediaQueryList.cpp \
     320    css/MediaQueryListListener.cpp \
    320321    css/MediaQueryMatcher.cpp \
    321322    css/PageRuleCollector.cpp \
  • trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj

    r153939 r154020  
    33653365      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>
    33663366    </ClCompile>
    3367     <ClCompile Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMediaQueryListListener.cpp">
    3368       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    3369       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
    3370       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'">true</ExcludedFromBuild>
    3371       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'">true</ExcludedFromBuild>
    3372       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'">true</ExcludedFromBuild>
    3373       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|x64'">true</ExcludedFromBuild>
    3374       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    3375       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    3376       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'">true</ExcludedFromBuild>
    3377       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'">true</ExcludedFromBuild>
    3378       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>
    3379       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>
    3380     </ClCompile>
    33813367    <ClCompile Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMessageChannel.cpp">
    33823368      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
     
    92839269    </ClCompile>
    92849270    <ClCompile Include="..\css\MediaQueryList.cpp">
     9271      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
     9272      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
     9273      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'">true</ExcludedFromBuild>
     9274      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'">true</ExcludedFromBuild>
     9275      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>
     9276      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>
     9277    </ClCompile>
     9278    <ClCompile Include="..\css\MediaQueryListListener.cpp">
    92859279      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    92869280      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
     
    1840118395    <ClInclude Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMediaList.h" />
    1840218396    <ClInclude Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMediaQueryList.h" />
    18403     <ClInclude Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMediaQueryListListener.h" />
    1840418397    <ClInclude Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMessageChannel.h" />
    1840518398    <ClInclude Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMessageEvent.h" />
  • trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters

    r153925 r154020  
    23292329      <Filter>css</Filter>
    23302330    </ClCompile>
     2331    <ClCompile Include="..\css\MediaQueryListListener.cpp">
     2332      <Filter>css</Filter>
     2333    </ClCompile>
    23312334    <ClCompile Include="..\css\MediaQueryMatcher.cpp">
    23322335      <Filter>css</Filter>
     
    60426045    </ClCompile>
    60436046    <ClCompile Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMediaQueryList.cpp">
    6044       <Filter>DerivedSources</Filter>
    6045     </ClCompile>
    6046     <ClCompile Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMediaQueryListListener.cpp">
    60476047      <Filter>DerivedSources</Filter>
    60486048    </ClCompile>
     
    1378113781    </ClInclude>
    1378213782    <ClInclude Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMediaQueryList.h">
    13783       <Filter>DerivedSources</Filter>
    13784     </ClInclude>
    13785     <ClInclude Include="$(ConfigurationBuildDir)\obj32\$(ProjectName)\DerivedSources\JSMediaQueryListListener.h">
    1378613783      <Filter>DerivedSources</Filter>
    1378713784    </ClInclude>
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r153939 r154020  
    19601960                7BE7427381FA906FBB4F0F2C /* JSSVGGraphicsElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 950C4C02BED8936F818E2F99 /* JSSVGGraphicsElement.h */; };
    19611961                7C522D4B15B477E8009B7C95 /* InspectorOverlay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C522D4915B477E8009B7C95 /* InspectorOverlay.cpp */; };
    1962                 7C5343FC17B74B63004232F0 /* JSMediaQueryListListener.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C5343FA17B74B63004232F0 /* JSMediaQueryListListener.cpp */; };
    1963                 7C5343FD17B74B63004232F0 /* JSMediaQueryListListener.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C5343FB17B74B63004232F0 /* JSMediaQueryListListener.h */; };
    19641962                7CC7E3D717208C0F003C5277 /* IDNScriptWhiteList.txt in Resources */ = {isa = PBXBuildFile; fileRef = 7CC7E3D617208C0F003C5277 /* IDNScriptWhiteList.txt */; };
    19651963                7CE30DA9171B63D200EC33E1 /* FrameSnapshottingMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7CE30DA7171B63D200EC33E1 /* FrameSnapshottingMac.mm */; };
     
    52805278                D302754912A5FE84004BD828 /* RenderDetailsMarker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D302754512A5FE84004BD828 /* RenderDetailsMarker.cpp */; };
    52815279                D302754A12A5FE84004BD828 /* RenderDetailsMarker.h in Headers */ = {isa = PBXBuildFile; fileRef = D302754612A5FE84004BD828 /* RenderDetailsMarker.h */; };
     5280                D340629B1253BC8C009E4259 /* MediaQueryListListener.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D340629A1253BC8C009E4259 /* MediaQueryListListener.cpp */; };
    52825281                D359D789129CA2710006E5D2 /* HTMLDetailsElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D359D786129CA2710006E5D2 /* HTMLDetailsElement.cpp */; };
    52835282                D359D78A129CA2710006E5D2 /* HTMLDetailsElement.h in Headers */ = {isa = PBXBuildFile; fileRef = D359D787129CA2710006E5D2 /* HTMLDetailsElement.h */; };
     
    83938392                7C522D4915B477E8009B7C95 /* InspectorOverlay.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorOverlay.cpp; sourceTree = "<group>"; };
    83948393                7C522D4A15B478B2009B7C95 /* InspectorOverlay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorOverlay.h; sourceTree = "<group>"; };
    8395                 7C5343FA17B74B63004232F0 /* JSMediaQueryListListener.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSMediaQueryListListener.cpp; sourceTree = "<group>"; };
    8396                 7C5343FB17B74B63004232F0 /* JSMediaQueryListListener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = JSMediaQueryListListener.h; sourceTree = "<group>"; };
    83978394                7C60128060078BB70E367A95 /* DNSResolveQueue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DNSResolveQueue.cpp; sourceTree = "<group>"; };
    83988395                7C6136F61710C35200FF4A57 /* Hasher.pm */ = {isa = PBXFileReference; lastKnownFileType = text.script.perl; name = Hasher.pm; path = scripts/Hasher.pm; sourceTree = "<group>"; };
     
    1205212049                D302754512A5FE84004BD828 /* RenderDetailsMarker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderDetailsMarker.cpp; sourceTree = "<group>"; };
    1205312050                D302754612A5FE84004BD828 /* RenderDetailsMarker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderDetailsMarker.h; sourceTree = "<group>"; };
     12051                D340629A1253BC8C009E4259 /* MediaQueryListListener.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaQueryListListener.cpp; sourceTree = "<group>"; };
    1205412052                D359D786129CA2710006E5D2 /* HTMLDetailsElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLDetailsElement.cpp; sourceTree = "<group>"; };
    1205512053                D359D787129CA2710006E5D2 /* HTMLDetailsElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLDetailsElement.h; sourceTree = "<group>"; };
     
    1728917287                                D3A94A42122DC40F00A37BBC /* JSMediaQueryList.cpp */,
    1729017288                                D3A94A43122DC40F00A37BBC /* JSMediaQueryList.h */,
    17291                                 7C5343FA17B74B63004232F0 /* JSMediaQueryListListener.cpp */,
    17292                                 7C5343FB17B74B63004232F0 /* JSMediaQueryListListener.h */,
    1729317289                                BCFE2F0F0C1B58370020235F /* JSRect.cpp */,
    1729417290                                BCFE2F100C1B58370020235F /* JSRect.h */,
     
    1983319829                                D3A94A32122DABAC00A37BBC /* MediaQueryList.h */,
    1983419830                                D3A94A33122DABAC00A37BBC /* MediaQueryList.idl */,
     19831                                D340629A1253BC8C009E4259 /* MediaQueryListListener.cpp */,
    1983519832                                D3A94A34122DABAC00A37BBC /* MediaQueryListListener.h */,
    1983619833                                D3A94A35122DABAC00A37BBC /* MediaQueryListListener.idl */,
     
    2099320990                                89D08DA012228451001241DF /* AsyncFileSystem.h in Headers */,
    2099420991                                89D08DA112228451001241DF /* AsyncFileSystemCallbacks.h in Headers */,
    20995                                 7C5343FD17B74B63004232F0 /* JSMediaQueryListListener.h in Headers */,
    2099620992                                976D6C77122B8A3D001FD1F7 /* AsyncFileWriter.h in Headers */,
    2099720993                                976D6C93122B8A3D001FD1F7 /* AsyncFileWriterClient.h in Headers */,
     
    2486024856                                85DF81960AA77E4B00486AD7 /* DOMHTMLFrameElement.mm in Sources */,
    2486124857                                85DF81980AA77E4B00486AD7 /* DOMHTMLFrameSetElement.mm in Sources */,
    24862                                 7C5343FC17B74B63004232F0 /* JSMediaQueryListListener.cpp in Sources */,
    2486324858                                85992EBB0AA5069500AC0785 /* DOMHTMLHeadElement.mm in Sources */,
    2486424859                                85183B450AA6926100F19FA3 /* DOMHTMLHeadingElement.mm in Sources */,
     
    2609326088                                4E19592D0A39DACC00220FE5 /* MediaQueryExp.cpp in Sources */,
    2609426089                                D3A94A38122DABAC00A37BBC /* MediaQueryList.cpp in Sources */,
     26090                                D340629B1253BC8C009E4259 /* MediaQueryListListener.cpp in Sources */,
    2609526091                                D3AA10F3123A98AA0092152B /* MediaQueryMatcher.cpp in Sources */,
    2609626092                                FD671A77159BB07000197559 /* MediaStreamAudioSourceNode.cpp in Sources */,
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm

    r153925 r154020  
    31323132    push(@headerContent, "    virtual ~$className();\n");
    31333133
    3134     if ($interface->extendedAttributes->{"CallbackNeedsOperatorEqual"}) {
    3135         push(@headerContent, "    virtual bool operator==(const $interfaceName&) const;\n\n")
    3136     }
    3137 
    31383134    # Functions
    31393135    my $numFunctions = @{$interface->functions};
     
    31943190    # Constructor
    31953191    push(@implContent, "${className}::${className}(JSObject* callback, JSDOMGlobalObject* globalObject)\n");
    3196     if ($interface->extendedAttributes->{"CallbackNeedsOperatorEqual"}) {
    3197         push(@implContent, "    : ${interfaceName}(${className}Type)\n");
    3198     } else {
    3199         push(@implContent, "    : ${interfaceName}()\n");
    3200     }
    3201     push(@implContent, "    , ActiveDOMCallback(globalObject->scriptExecutionContext())\n");
     3192    push(@implContent, "    : ActiveDOMCallback(globalObject->scriptExecutionContext())\n");
    32023193    push(@implContent, "    , m_data(new JSCallbackData(callback, globalObject))\n");
    32033194    push(@implContent, "{\n");
     
    32173208    push(@implContent, "    m_data = 0;\n");
    32183209    push(@implContent, "#endif\n");
    3219     push(@implContent, "}\n\n");
    3220 
    3221     if ($interface->extendedAttributes->{"CallbackNeedsOperatorEqual"}) {
    3222         push(@implContent, "bool ${className}::operator==(const ${interfaceName}& other) const\n");
    3223         push(@implContent, "{\n");
    3224         push(@implContent, "    if (other.type() != type())\n");
    3225         push(@implContent, "        return false;\n");
    3226         push(@implContent, "    return static_cast<const ${className}*>(&other)->m_data->callback() == m_data->callback();\n");
    3227         push(@implContent, "}\n\n");
    3228     }
     3210    push(@implContent, "}\n");
     3211
    32293212    # Functions
    32303213    my $numFunctions = @{$interface->functions};
     
    33573340    "byte" => "int8_t",
    33583341    "octet" => "uint8_t",
    3359     "DOMTimeStamp" => "DOMTimeStamp",
     3342    "MediaQueryListListener" => "RefPtr<MediaQueryListListener>",
     3343    "DOMTimeStamp" => "DOMTimeStamp",   
    33603344);
    33613345
     
    34923476    }
    34933477
     3478    if ($type eq "MediaQueryListListener") {
     3479        AddToImplIncludes("MediaQueryListListener.h", $conditional);
     3480        return "MediaQueryListListener::create(ScriptValue(exec->vm(), " . $value ."))";
     3481    }
     3482
    34943483    if ($type eq "SerializedScriptValue") {
    34953484        AddToImplIncludes("SerializedScriptValue.h", $conditional);
  • trunk/Source/WebCore/bindings/scripts/IDLAttributes.txt

    r153925 r154020  
    2222CPPPureInterface
    2323CachedAttribute
    24 CallbackNeedsOperatorEqual
    2524CallWith=ScriptExecutionContext|ScriptState|ScriptArguments|CallStack
    2625CheckSecurity
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCallback.cpp

    r153925 r154020  
    3737
    3838JSTestCallback::JSTestCallback(JSObject* callback, JSDOMGlobalObject* globalObject)
    39     : TestCallback()
    40     , ActiveDOMCallback(globalObject->scriptExecutionContext())
     39    : ActiveDOMCallback(globalObject->scriptExecutionContext())
    4140    , m_data(new JSCallbackData(callback, globalObject))
    4241{
     
    5655#endif
    5756}
    58 
    5957
    6058// Functions
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp

    r153925 r154020  
    2424#include "ExceptionCode.h"
    2525#include "JSDOMBinding.h"
    26 #include "JSMediaQueryListListener.h"
     26#include "MediaQueryListListener.h"
    2727#include "TestMediaQueryListListener.h"
    2828#include <runtime/Error.h>
     
    168168    if (exec->argumentCount() < 1)
    169169        return throwVMError(exec, createNotEnoughArgumentsError(exec));
    170     if (exec->argumentCount() <= 0 || !exec->argument(0).isFunction())
    171         return throwVMTypeError(exec);
    172     RefPtr<MediaQueryListListener> listener = JSMediaQueryListListener::create(asObject(exec->argument(0)), castedThis->globalObject());
     170    RefPtr<MediaQueryListListener> listener(MediaQueryListListener::create(ScriptValue(exec->vm(), exec->argument(0))));
     171    if (exec->hadException())
     172        return JSValue::encode(jsUndefined());
    173173    impl->method(listener);
    174174    return JSValue::encode(jsUndefined());
  • trunk/Source/WebCore/css/MediaAllInOne.cpp

    r153925 r154020  
    3232#include "MediaQueryExp.cpp"
    3333#include "MediaQueryList.cpp"
     34#include "MediaQueryListListener.cpp"
    3435#include "MediaQueryMatcher.cpp"
  • trunk/Source/WebCore/css/MediaQueryListListener.cpp

    r154019 r154020  
    1818 */
    1919
    20 [
    21     CallbackNeedsOperatorEqual
    22 ] callback interface MediaQueryListListener {
    23     boolean queryChanged([Default=Undefined] optional MediaQueryList list);
    24 };
     20#include "config.h"
     21#include "MediaQueryListListener.h"
     22
     23#include "MediaQueryList.h"
     24#include "ScriptFunctionCall.h"
     25
     26#include "JSMediaQueryList.h"
     27
     28namespace WebCore {
     29
     30void MediaQueryListListener::queryChanged(ScriptState* state, MediaQueryList* query)
     31{
     32    ScriptCallback callback(state, m_value);
     33    callback.appendArgument(toJS(state, deprecatedGlobalObjectForPrototype(state), query));
     34    callback.call();
     35}
     36
     37}
  • trunk/Source/WebCore/css/MediaQueryListListener.h

    r153925 r154020  
    2121#define MediaQueryListListener_h
    2222
     23#include "ScriptState.h"
     24#include "ScriptValue.h"
    2325#include <wtf/RefCounted.h>
     26#include <wtf/text/WTFString.h>
    2427
    2528namespace WebCore {
     
    2730class MediaQueryList;
    2831
     32// See http://dev.w3.org/csswg/cssom-view/#the-mediaquerylist-interface
     33
    2934class MediaQueryListListener : public RefCounted<MediaQueryListListener> {
    3035public:
    31     enum Type {
    32         JSMediaQueryListListenerType
    33     };
     36    static PassRefPtr<MediaQueryListListener> create(const ScriptValue& value)
     37    {
     38        if (!value.isFunction())
     39            return 0;
     40        return adoptRef(new MediaQueryListListener(value));
     41    }
     42    void queryChanged(ScriptState*, MediaQueryList*);
    3443
    35     virtual bool queryChanged(MediaQueryList*) = 0;
    36     virtual bool operator==(const MediaQueryListListener&) const = 0;
    37     virtual ~MediaQueryListListener() { }
    38 
    39     Type type() const { return m_type; }
    40 
    41 protected:
    42     explicit MediaQueryListListener(Type type)
    43         : m_type(type)
    44     {
    45     }
     44    bool operator==(const MediaQueryListListener& other) const { return m_value == other.m_value; }
    4645
    4746private:
    48     Type m_type;
     47    MediaQueryListListener(const ScriptValue& value) : m_value(value) { }
     48
     49    ScriptValue m_value;
    4950};
    5051
    51 } // namespace WebCore
     52}
    5253
    5354#endif // MediaQueryListListener_h
  • trunk/Source/WebCore/css/MediaQueryListListener.idl

    r153925 r154020  
    1919
    2020[
    21     CallbackNeedsOperatorEqual
    22 ] callback interface MediaQueryListListener {
    23     boolean queryChanged([Default=Undefined] optional MediaQueryList list);
     21    NoInterfaceObject,
     22    JSNoStaticTables,
     23    ObjCProtocol,
     24    CPPPureInterface,
     25] interface MediaQueryListListener {
     26    void queryChanged([Default=Undefined] optional MediaQueryList list);
    2427};
  • trunk/Source/WebCore/css/MediaQueryMatcher.cpp

    r153926 r154020  
    4343}
    4444
    45 void MediaQueryMatcher::Listener::evaluate(MediaQueryEvaluator* evaluator)
     45void MediaQueryMatcher::Listener::evaluate(ScriptState* state, MediaQueryEvaluator* evaluator)
    4646{
    4747    bool notify;
    4848    m_query->evaluate(evaluator, notify);
    4949    if (notify)
    50         m_listener->queryChanged(m_query.get());
     50        m_listener->queryChanged(state, m_query.get());
    5151}
    5252
     
    142142    ASSERT(m_document);
    143143
     144    ScriptState* scriptState = mainWorldScriptState(m_document->frame());
     145    if (!scriptState)
     146        return;
     147
    144148    ++m_evaluationRound;
    145149    OwnPtr<MediaQueryEvaluator> evaluator = prepareEvaluator();
     
    148152
    149153    for (size_t i = 0; i < m_listeners.size(); ++i)
    150         m_listeners[i]->evaluate(evaluator.get());
     154        m_listeners[i]->evaluate(scriptState, evaluator.get());
    151155}
    152156
    153 } // namespace WebCore
     157}
  • trunk/Source/WebCore/css/MediaQueryMatcher.h

    r153925 r154020  
    2121#define MediaQueryMatcher_h
    2222
     23#include "ScriptState.h"
    2324#include <wtf/Forward.h>
    2425#include <wtf/RefCounted.h>
     
    5960        ~Listener();
    6061
    61         void evaluate(MediaQueryEvaluator*);
     62        void evaluate(ScriptState*, MediaQueryEvaluator*);
    6263
    6364        MediaQueryListListener* listener() { return m_listener.get(); }
     
    8283};
    8384
    84 } // namespace WebCore
     85}
    8586
    8687#endif // MediaQueryMatcher_h
Note: See TracChangeset for help on using the changeset viewer.