1. 06 Dec, 2013 14 commits
    • berto@igalia.com's avatar
      [GTK] Enable web audio by default · 0dc4522f
      berto@igalia.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124888
      
      Reviewed by Martin Robinson.
      
      When building with ./configure, enable_web_audio defaults to
      "no". However the basic functionality has been working for months
      so it's safe to enable it now.
      
      * Source/autotools/ReadCommandLineArguments.m4:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160215 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0dc4522f
    • philn@webkit.org's avatar
      [GStreamer] Audio/Video sink management is incoherent · 8f10d46f
      philn@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125304
      
      Reviewed by Gustavo Noronha Silva.
      
      Allow subclasses of MediaPlayerPrivateGStreamerBase to create
      custom audio/video sinks in a coherent manner using
      create{Audio,Video}Sink methods. Convenience getters are also
      available. Also removed some un-needed member variables in the
      playbin-based player.
      
      No new tests, existing media tests cover this change.
      
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
      (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
      (WebCore::MediaPlayerPrivateGStreamer::updateStates):
      (WebCore::MediaPlayerPrivateGStreamer::createAudioSink):
      (WebCore::MediaPlayerPrivateGStreamer::audioSink):
      (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
      (WebCore::MediaPlayerPrivateGStreamerBase::createAudioSink):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160214 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8f10d46f
    • msaboff@apple.com's avatar
      JSC: Simplify interface between throw and catch handler · c3101eb3
      msaboff@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125328
      
      Reviewed by Geoffrey Garen.
      
      Simplified the throw - catch interface.  The throw side is only responsible for
      jumping to the appropriate op_catch handler or returnFromJavaScript for uncaught
      exceptions.  The handler uses the exception values like VM.callFrameForThrow
      as appropriate and no longer relies on the throw side putting anything in
      registers.
      
      * jit/CCallHelpers.h:
      (JSC::CCallHelpers::jumpToExceptionHandler):
      * jit/JITOpcodes.cpp:
      (JSC::JIT::emit_op_catch):
      * jit/JITOpcodes32_64.cpp:
      (JSC::JIT::emit_op_catch):
      * llint/LowLevelInterpreter32_64.asm:
      (_llint_op_catch):
      (_llint_throw_from_slow_path_trampoline):
      * llint/LowLevelInterpreter64.asm:
      (_llint_op_catch):
      (_llint_throw_from_slow_path_trampoline):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160213 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c3101eb3
    • gyuyoung.kim@samsung.com's avatar
      Introduce IMAGE_TYPE_CASTS, and use it · 3886a9b6
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125330
      
      Reviewed by Ryosuke Niwa.
      
      Source/WebCore:
      
      As a step to use TYPE_CASTS_BASE, this cl introduce IMAGE_TYPE_CASTS.
      BitmapImage and SVGImage can use it to generate toFoo() type case helper functions.
      
      No new tests, no behavior changes.
      
      * loader/cache/CachedImage.cpp:
      (WebCore::CachedImage::imageSizeForRenderer):
      (WebCore::CachedImage::resumeAnimatingImagesForLoader):
      * platform/graphics/BitmapImage.h:
      * platform/graphics/Image.h:
      * platform/mac/DragImageMac.mm:
      (WebCore::createDragImageFromImage):
      * svg/graphics/SVGImage.h:
      
      Source/WebKit2:
      
      As a step to use TYPE_CASTS_BASE, this cl introduce IMAGE_TYPE_CASTS.
      BitmapImage, SVGImage can use it to generate toFoo() type case helper functions.
      
      * WebProcess/Plugins/PluginView.cpp:
      (WebKit::PluginView::pluginSnapshotTimerFired):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160212 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3886a9b6
    • mark.lam@apple.com's avatar
      C Loop LLINT layout test regressions. · f6c72967
      mark.lam@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125314.
      
      Reviewed by Geoffrey Garen.
      
      The regression was due to the ENABLE_LLINT_C_LOOP flag not being included
      in the build of the WebKit and WebKit2 components. As a result, some fields
      in JSC::VM were ifdef'ed out in WebCore and JSC, but not in WebKit and
      WebKit2. This resulted in VM::m_initializingObjectClass having 2 different
      offsets depending on whether it is accessed from WebCore and JSC or from
      WebKit and WebKit2, and chaos ensued.
      
      This issue will manifest when we pass --cloop to build-webkit.
      The fix is simply to add ENABLE_LLINT_C_LOOP to FEATURE_DEFINES for WebKit
      and WebKit2.
      
      Source/WebKit/mac: 
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2: 
      
      * Configurations/FeatureDefines.xcconfig:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160211 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f6c72967
    • commit-queue@webkit.org's avatar
      Remove USE(LOCKFREE_THREADSAFEREFCOUNTED) from Atomics.cpp since it is · 24652166
      commit-queue@webkit.org authored
      no longer defined.
      https://bugs.webkit.org/show_bug.cgi?id=124502
      
      Patch by Iain Lane <iain.lane@canonical.com> on 2013-12-05
      Reviewed by Anders Carlsson.
      
      * wtf/Atomics.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160210 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      24652166
    • zoltan@webkit.org's avatar
      Clean up the forwarding headers of RenderBlock.h · bc056dc4
      zoltan@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125323
      
      Reviewed by Ryosuke Niwa.
      
      In this patch, I removed the unnecessary forwarding headers from RenderBlock.h, and moved some to RenderBlockFlow.h.
      
      No new tests, no behavior change.
      
      * rendering/RenderBlock.h: Remove unnecessary forwarding headers.
      * rendering/RenderBlockFlow.h: Moved some forwarding headers from RenderBlock.h
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160209 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bc056dc4
    • oliver@apple.com's avatar
      Refactor static getter function prototype to include thisValue in addition to the base object · ae0687ba
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124461
      
      Reviewed by Geoffrey Garen.
      
      Source/JavaScriptCore:
      
      Add thisValue parameter to static getter prototype, and switch
      from JSValue to EncodedJSValue for parameters and return value.
      
      Currently none of the static getters use the thisValue, but
      separating out the refactoring will prevent future changes
      from getting lost in the noise of refactoring.  This means
      that this patch does not result in any change in behaviour.
      
      * API/JSCallbackObject.h:
      * API/JSCallbackObjectFunctions.h:
      (JSC::::asCallbackObject):
      (JSC::::staticFunctionGetter):
      (JSC::::callbackGetter):
      * jit/JITOperations.cpp:
      * runtime/JSActivation.cpp:
      (JSC::JSActivation::argumentsGetter):
      * runtime/JSActivation.h:
      * runtime/JSFunction.cpp:
      (JSC::JSFunction::argumentsGetter):
      (JSC::JSFunction::callerGetter):
      (JSC::JSFunction::lengthGetter):
      (JSC::JSFunction::nameGetter):
      * runtime/JSFunction.h:
      * runtime/JSObject.h:
      (JSC::PropertySlot::getValue):
      * runtime/NumberConstructor.cpp:
      (JSC::numberConstructorNaNValue):
      (JSC::numberConstructorNegInfinity):
      (JSC::numberConstructorPosInfinity):
      (JSC::numberConstructorMaxValue):
      (JSC::numberConstructorMinValue):
      * runtime/PropertySlot.h:
      * runtime/RegExpConstructor.cpp:
      (JSC::asRegExpConstructor):
      (JSC::regExpConstructorDollar1):
      (JSC::regExpConstructorDollar2):
      (JSC::regExpConstructorDollar3):
      (JSC::regExpConstructorDollar4):
      (JSC::regExpConstructorDollar5):
      (JSC::regExpConstructorDollar6):
      (JSC::regExpConstructorDollar7):
      (JSC::regExpConstructorDollar8):
      (JSC::regExpConstructorDollar9):
      (JSC::regExpConstructorInput):
      (JSC::regExpConstructorMultiline):
      (JSC::regExpConstructorLastMatch):
      (JSC::regExpConstructorLastParen):
      (JSC::regExpConstructorLeftContext):
      (JSC::regExpConstructorRightContext):
      * runtime/RegExpObject.cpp:
      (JSC::asRegExpObject):
      (JSC::regExpObjectGlobal):
      (JSC::regExpObjectIgnoreCase):
      (JSC::regExpObjectMultiline):
      (JSC::regExpObjectSource):
      
      Source/WebCore:
      
      Change bindings codegen to produce static getter functions
      with the correct types.  Also update the many custom implementations
      to the new type.
      
      No change in behaviour.
      
      * bindings/js/JSCSSStyleDeclarationCustom.cpp:
      (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
      (WebCore::cssPropertyGetterCallback):
      * bindings/js/JSDOMBinding.cpp:
      (WebCore::objectToStringFunctionGetter):
      * bindings/js/JSDOMBinding.h:
      * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
      (WebCore::JSDOMMimeTypeArray::nameGetter):
      * bindings/js/JSDOMPluginArrayCustom.cpp:
      (WebCore::JSDOMPluginArray::nameGetter):
      * bindings/js/JSDOMPluginCustom.cpp:
      (WebCore::JSDOMPlugin::nameGetter):
      * bindings/js/JSDOMStringMapCustom.cpp:
      (WebCore::JSDOMStringMap::nameGetter):
      * bindings/js/JSDOMWindowCustom.cpp:
      (WebCore::nonCachingStaticFunctionGetter):
      (WebCore::childFrameGetter):
      (WebCore::indexGetter):
      (WebCore::namedItemGetter):
      * bindings/js/JSHTMLAllCollectionCustom.cpp:
      (WebCore::JSHTMLAllCollection::nameGetter):
      * bindings/js/JSHTMLCollectionCustom.cpp:
      (WebCore::JSHTMLCollection::nameGetter):
      * bindings/js/JSHTMLDocumentCustom.cpp:
      (WebCore::JSHTMLDocument::nameGetter):
      * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
      (WebCore::JSHTMLFormControlsCollection::nameGetter):
      * bindings/js/JSHTMLFormElementCustom.cpp:
      (WebCore::JSHTMLFormElement::nameGetter):
      * bindings/js/JSHTMLFrameSetElementCustom.cpp:
      (WebCore::JSHTMLFrameSetElement::nameGetter):
      * bindings/js/JSHistoryCustom.cpp:
      (WebCore::nonCachingStaticBackFunctionGetter):
      (WebCore::nonCachingStaticForwardFunctionGetter):
      (WebCore::nonCachingStaticGoFunctionGetter):
      * bindings/js/JSJavaScriptCallFrameCustom.cpp:
      (WebCore::JSJavaScriptCallFrame::scopeType):
      * bindings/js/JSLocationCustom.cpp:
      (WebCore::nonCachingStaticReplaceFunctionGetter):
      (WebCore::nonCachingStaticReloadFunctionGetter):
      (WebCore::nonCachingStaticAssignFunctionGetter):
      * bindings/js/JSNamedNodeMapCustom.cpp:
      (WebCore::JSNamedNodeMap::nameGetter):
      * bindings/js/JSNodeListCustom.cpp:
      (WebCore::JSNodeList::nameGetter):
      * bindings/js/JSPluginElementFunctions.cpp:
      (WebCore::pluginElementPropertyGetter):
      * bindings/js/JSPluginElementFunctions.h:
      * bindings/js/JSRTCStatsResponseCustom.cpp:
      (WebCore::JSRTCStatsResponse::nameGetter):
      * bindings/js/JSStorageCustom.cpp:
      (WebCore::JSStorage::nameGetter):
      * bindings/js/JSStyleSheetListCustom.cpp:
      (WebCore::JSStyleSheetList::nameGetter):
      * bindings/scripts/CodeGeneratorJS.pm:
      (GenerateHeader):
      (GenerateImplementation):
      (GenerateParametersCheck):
      * bridge/runtime_array.cpp:
      (JSC::RuntimeArray::lengthGetter):
      (JSC::RuntimeArray::indexGetter):
      * bridge/runtime_array.h:
      * bridge/runtime_method.cpp:
      (JSC::RuntimeMethod::lengthGetter):
      * bridge/runtime_method.h:
      * bridge/runtime_object.cpp:
      (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
      (JSC::Bindings::RuntimeObject::fieldGetter):
      (JSC::Bindings::RuntimeObject::methodGetter):
      * bridge/runtime_object.h:
      
      Source/WebKit2:
      
      Update the WK2 JSC usage to the new static getter API
      
      * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
      (WebKit::callMethod):
      * WebProcess/Plugins/Netscape/JSNPObject.cpp:
      (WebKit::callNPJSObject):
      (WebKit::constructWithConstructor):
      (WebKit::JSNPObject::propertyGetter):
      (WebKit::JSNPObject::methodGetter):
      * WebProcess/Plugins/Netscape/JSNPObject.h:
      * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
      (WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
      (WebKit::NPRuntimeObjectMap::finalize):
      * WebProcess/WebPage/WebFrame.cpp:
      (WebKit::WebFrame::frameForContext):
      (WebKit::WebFrame::counterValue):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160208 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae0687ba
    • timothy_horton@apple.com's avatar
      Remove Image::decodedSize() · ca4d5712
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125327
      
      Reviewed by Sam Weinig.
      
      No new tests, just removing dead code.
      
      * platform/graphics/BitmapImage.cpp:
      (WebCore::BitmapImage::resetAnimation):
      * platform/graphics/BitmapImage.h:
      * platform/graphics/GeneratedImage.h:
      * platform/graphics/Image.h:
      * platform/graphics/cg/PDFDocumentImage.cpp:
      * platform/graphics/cg/PDFDocumentImage.h:
      * svg/graphics/SVGImage.h:
      * svg/graphics/SVGImageForContainer.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160207 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca4d5712
    • ossy@webkit.org's avatar
      Disable WebKit2 webkitpy unittests on Windows · d9d61709
      ossy@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125318
      
      Reviewed by Ryosuke Niwa.
      
      * Scripts/webkitpy/test/main.py:
      (main):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160206 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d9d61709
    • fpizlo@apple.com's avatar
      FTL should use cvttsd2si directly for double-to-int32 conversions · 9ba2f35c
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125275
      
      Source/JavaScriptCore: 
      
      Reviewed by Michael Saboff.
              
      Wow. This was an ordeal. Using cvttsd2si was actually easy, but I learned, and
      sometimes even fixed, some interesting things:
              
      - The llvm.x86.sse2.cvttsd2si intrinsic can actually result in LLVM emitting a
        vcvttsd2si. I guess the intrinsic doesn't actually imply the instruction.
              
      - That whole thing about branchTruncateDoubleToUint32? Yeah we don't need that. It's
        better to use branchTruncateDoubleToInt32 instead. It has the right semantics for
        all of its callers (err, its one-and-only caller), and it's more likely to take
        fast path. This patch kills branchTruncateDoubleToUint32.
              
      - "a[i] = v; v = a[i]". Does this change v? OK, assume that 'a[i]' is a pure-ish
        operation - like an array access with 'i' being an integer index and we're not
        having a bad time. Now does this change v? CSE assumes that it doesn't. That's
        wrong. If 'a' is a typed array - the most sensible and pure kind of array - then
        this can be a truncating cast. For example 'v' could be a double and 'a' could be
        an integer array.
              
      - "v1 = a[i]; v2 = a[i]". Is v1 === v2 assuming that 'a[i]' is pure-ish? The answer
        is no. You could have a different arrayMode in each access. I know this sounds
        weird, but with concurrent JIT that might happen.
              
      This patch adds tests for all of this stuff, except for the first issue (it's weird
      but probably doesn't matter) and the last issue (it's too much of a freakshow).
      
      * assembler/MacroAssemblerARM64.h:
      * assembler/MacroAssemblerARMv7.h:
      * assembler/MacroAssemblerX86Common.h:
      * dfg/DFGCSEPhase.cpp:
      (JSC::DFG::CSEPhase::getByValLoadElimination):
      (JSC::DFG::CSEPhase::performNodeCSE):
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
      * ftl/FTLAbbreviations.h:
      (JSC::FTL::vectorType):
      (JSC::FTL::getUndef):
      (JSC::FTL::buildInsertElement):
      * ftl/FTLIntrinsicRepository.h:
      * ftl/FTLLowerDFGToLLVM.cpp:
      (JSC::FTL::LowerDFGToLLVM::doubleToInt32):
      (JSC::FTL::LowerDFGToLLVM::doubleToUInt32):
      (JSC::FTL::LowerDFGToLLVM::sensibleDoubleToInt32):
      * ftl/FTLOutput.h:
      (JSC::FTL::Output::insertElement):
      (JSC::FTL::Output::hasSensibleDoubleToInt):
      (JSC::FTL::Output::sensibleDoubleToInt):
      
      LayoutTests: 
      
      Reviewed by Michael Saboff.
      
      * js/regress/double-to-int32-typed-array-expected.txt: Added.
      * js/regress/double-to-int32-typed-array-no-inline-expected.txt: Added.
      * js/regress/double-to-int32-typed-array-no-inline.html: Added.
      * js/regress/double-to-int32-typed-array.html: Added.
      * js/regress/double-to-uint32-typed-array-expected.txt: Added.
      * js/regress/double-to-uint32-typed-array-no-inline-expected.txt: Added.
      * js/regress/double-to-uint32-typed-array-no-inline.html: Added.
      * js/regress/double-to-uint32-typed-array.html: Added.
      * js/regress/script-tests/double-to-int32-typed-array-no-inline.js: Added.
      (foo):
      (test):
      * js/regress/script-tests/double-to-int32-typed-array.js: Added.
      (foo):
      (test):
      * js/regress/script-tests/double-to-uint32-typed-array-no-inline.js: Added.
      (foo):
      (test):
      * js/regress/script-tests/double-to-uint32-typed-array.js: Added.
      (foo):
      (test):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9ba2f35c
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r160133. · 82a8937b
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/160133
      https://bugs.webkit.org/show_bug.cgi?id=125325
      
      broke bindings tests on all the bots (Requested by thorton on
      #webkit).
      
      Source/JavaScriptCore:
      
      * API/JSCallbackObject.h:
      * API/JSCallbackObjectFunctions.h:
      (JSC::::staticFunctionGetter):
      (JSC::::callbackGetter):
      * jit/JITOperations.cpp:
      * runtime/JSActivation.cpp:
      (JSC::JSActivation::argumentsGetter):
      * runtime/JSActivation.h:
      * runtime/JSFunction.cpp:
      (JSC::JSFunction::argumentsGetter):
      (JSC::JSFunction::callerGetter):
      (JSC::JSFunction::lengthGetter):
      (JSC::JSFunction::nameGetter):
      * runtime/JSFunction.h:
      * runtime/JSObject.h:
      (JSC::PropertySlot::getValue):
      * runtime/NumberConstructor.cpp:
      (JSC::numberConstructorNaNValue):
      (JSC::numberConstructorNegInfinity):
      (JSC::numberConstructorPosInfinity):
      (JSC::numberConstructorMaxValue):
      (JSC::numberConstructorMinValue):
      * runtime/PropertySlot.h:
      * runtime/RegExpConstructor.cpp:
      (JSC::regExpConstructorDollar1):
      (JSC::regExpConstructorDollar2):
      (JSC::regExpConstructorDollar3):
      (JSC::regExpConstructorDollar4):
      (JSC::regExpConstructorDollar5):
      (JSC::regExpConstructorDollar6):
      (JSC::regExpConstructorDollar7):
      (JSC::regExpConstructorDollar8):
      (JSC::regExpConstructorDollar9):
      (JSC::regExpConstructorInput):
      (JSC::regExpConstructorMultiline):
      (JSC::regExpConstructorLastMatch):
      (JSC::regExpConstructorLastParen):
      (JSC::regExpConstructorLeftContext):
      (JSC::regExpConstructorRightContext):
      * runtime/RegExpObject.cpp:
      (JSC::regExpObjectGlobal):
      (JSC::regExpObjectIgnoreCase):
      (JSC::regExpObjectMultiline):
      (JSC::regExpObjectSource):
      
      Source/WebCore:
      
      * bindings/js/JSCSSStyleDeclarationCustom.cpp:
      (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
      (WebCore::cssPropertyGetterCallback):
      * bindings/js/JSDOMBinding.cpp:
      (WebCore::objectToStringFunctionGetter):
      * bindings/js/JSDOMBinding.h:
      * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
      (WebCore::JSDOMMimeTypeArray::nameGetter):
      * bindings/js/JSDOMPluginArrayCustom.cpp:
      (WebCore::JSDOMPluginArray::nameGetter):
      * bindings/js/JSDOMPluginCustom.cpp:
      (WebCore::JSDOMPlugin::nameGetter):
      * bindings/js/JSDOMStringMapCustom.cpp:
      (WebCore::JSDOMStringMap::nameGetter):
      * bindings/js/JSDOMWindowCustom.cpp:
      (WebCore::nonCachingStaticFunctionGetter):
      (WebCore::childFrameGetter):
      (WebCore::indexGetter):
      (WebCore::namedItemGetter):
      * bindings/js/JSHTMLAllCollectionCustom.cpp:
      (WebCore::JSHTMLAllCollection::nameGetter):
      * bindings/js/JSHTMLCollectionCustom.cpp:
      (WebCore::JSHTMLCollection::nameGetter):
      * bindings/js/JSHTMLDocumentCustom.cpp:
      (WebCore::JSHTMLDocument::nameGetter):
      * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
      (WebCore::JSHTMLFormControlsCollection::nameGetter):
      * bindings/js/JSHTMLFormElementCustom.cpp:
      (WebCore::JSHTMLFormElement::nameGetter):
      * bindings/js/JSHTMLFrameSetElementCustom.cpp:
      (WebCore::JSHTMLFrameSetElement::nameGetter):
      * bindings/js/JSHistoryCustom.cpp:
      (WebCore::nonCachingStaticBackFunctionGetter):
      (WebCore::nonCachingStaticForwardFunctionGetter):
      (WebCore::nonCachingStaticGoFunctionGetter):
      * bindings/js/JSJavaScriptCallFrameCustom.cpp:
      (WebCore::JSJavaScriptCallFrame::scopeType):
      * bindings/js/JSLocationCustom.cpp:
      (WebCore::nonCachingStaticReplaceFunctionGetter):
      (WebCore::nonCachingStaticReloadFunctionGetter):
      (WebCore::nonCachingStaticAssignFunctionGetter):
      * bindings/js/JSNamedNodeMapCustom.cpp:
      (WebCore::JSNamedNodeMap::nameGetter):
      * bindings/js/JSNodeListCustom.cpp:
      (WebCore::JSNodeList::nameGetter):
      * bindings/js/JSPluginElementFunctions.cpp:
      (WebCore::pluginElementPropertyGetter):
      * bindings/js/JSPluginElementFunctions.h:
      * bindings/js/JSRTCStatsResponseCustom.cpp:
      (WebCore::JSRTCStatsResponse::nameGetter):
      * bindings/js/JSStorageCustom.cpp:
      (WebCore::JSStorage::nameGetter):
      * bindings/js/JSStyleSheetListCustom.cpp:
      (WebCore::JSStyleSheetList::nameGetter):
      * bindings/scripts/CodeGeneratorJS.pm:
      (GenerateHeader):
      (GenerateImplementation):
      (GenerateParametersCheck):
      * bridge/runtime_array.cpp:
      (JSC::RuntimeArray::lengthGetter):
      (JSC::RuntimeArray::indexGetter):
      * bridge/runtime_array.h:
      * bridge/runtime_method.cpp:
      (JSC::RuntimeMethod::lengthGetter):
      * bridge/runtime_method.h:
      * bridge/runtime_object.cpp:
      (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
      (JSC::Bindings::RuntimeObject::fieldGetter):
      (JSC::Bindings::RuntimeObject::methodGetter):
      * bridge/runtime_object.h:
      
      Source/WebKit2:
      
      * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
      (WebKit::callMethod):
      * WebProcess/Plugins/Netscape/JSNPObject.cpp:
      (WebKit::callNPJSObject):
      (WebKit::constructWithConstructor):
      (WebKit::JSNPObject::propertyGetter):
      (WebKit::JSNPObject::methodGetter):
      * WebProcess/Plugins/Netscape/JSNPObject.h:
      * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
      (WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
      (WebKit::NPRuntimeObjectMap::finalize):
      * WebProcess/WebPage/WebFrame.cpp:
      (WebKit::WebFrame::counterValue):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160204 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      82a8937b
    • seokju@webkit.org's avatar
      Web Inspector: Remove 'cookiesString' output from Page.getCookies · 1eb5c051
      seokju@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125268
      
      Reviewed by Timothy Hatcher.
      
      Remove 'cookiesString' output from Page.getCookies protocol.
      It is no longer meaningful because it is an unused parameter.
      
      Source/WebCore:
      
      No new tests, no behavior change.
      
      * inspector/InspectorPageAgent.cpp:
      (WebCore::InspectorPageAgent::getCookies):
      * inspector/InspectorPageAgent.h:
      * inspector/protocol/Page.json:
      
      Source/WebInspectorUI:
      
      * UserInterface/CookieStorageContentView.js:
      (WebInspector.CookieStorageContentView.prototype.update):
      * UserInterface/InspectorBackendCommands.js:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160203 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1eb5c051
    • commit-queue@webkit.org's avatar
      Web Inspector: expose node and frame snapshot capabilities. · b54f0aea
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124326
      
      Patch by Brian J. Burg <burg@cs.washington.edu> on 2013-12-05
      Reviewed by Joseph Pecoraro.
      
      Source/WebCore:
      
      This adds snapshotRect() and snapshotNode() to the Page domain.
      Both methods create snapshots using FrameSnapshotting APIs
      and send images to the inspector frontend as a data URL.
      
      Remove the unimplemented Page.captureScreenshot API.
      
      * inspector/InspectorPageAgent.cpp:
      (WebCore::InspectorPageAgent::snapshotNode): Added.
      (WebCore::InspectorPageAgent::snapshotRect): Added.
      * inspector/InspectorPageAgent.h:
      * inspector/protocol/Page.json: Added new protocol APIs.
      
      Source/WebInspectorUI:
      
      Add method signatures for snapshotNode() and snapshotRect().
      Remove method signature for unimplemented Page.captureScreenshot.
      
      * UserInterface/InspectorBackendCommands.js:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160202 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b54f0aea
  2. 05 Dec, 2013 26 commits
    • betravis@adobe.com's avatar
      Source/WebCore: [CSS Shapes] Enable CSS Shapes on Windows · 8ea1b983
      betravis@adobe.com authored
          https://bugs.webkit.org/show_bug.cgi?id=89957
      
          Reviewed by Brent Fulgham.
      
          * css/CSSPropertyNames.in: Tweak to ensure shapes properties are regenerated.
      
      
      WebKitLibraries: [CSS Shapes] Enable CSS Shapes on Windows
      https://bugs.webkit.org/show_bug.cgi?id=89957
      
      Reviewed by Brent Fulgham.
      
      Turn on CSS_SHAPES on Windows now that bug 121883 has been fixed.
      
      * win/tools/vsprops/FeatureDefines.props:
      * win/tools/vsprops/FeatureDefinesCairo.props:
      
      LayoutTests: [CSS Shapes] Enable CSS Shapes on Windows
      https://bugs.webkit.org/show_bug.cgi?id=89957
      
      Reviewed by Brent Fulgham.
      
      Turning shapes tests back on on Windows builds.
      
      * platform/win/TestExpectations: Enable shapes tests.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160200 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8ea1b983
    • roger_fong@apple.com's avatar
      [WebGL] Make sure we satisfy uniform and varying packing restrictions. · f685dcd9
      roger_fong@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125124.
      <rdar://problem/15203291>
      
      Reviewed by Brent Fulgham.
      
      Tests covered by WebGL Khronos conformance tests:
      webgl/1.0.2/conformance/glsl/misc/shader-uniform-packing-restrictions.html
      webgl/1.0.2/conformance/glsl/misc/shader-varying-packing-restrictions.html
      
      * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
      (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
      * src/compiler/Compiler.cpp: 
      Add a check to enforcePackingRestrictions to ensure we make sure packing restrictions for varyings are satisfied as well.
      (TCompiler::TCompiler):
      (TCompiler::Init):
      (TCompiler::compile):
      (TCompiler::enforcePackingRestrictions):
      * src/compiler/ShHandle.h: Keep track of maximum varying vectors.
      * platform/mac/TestExpectations: Unskip some 1.0.2 WebGL conformance tests that should now be passing.
      Skip conformance/ogles/GL/build/build_009_to_016.html which is a faulty test and has too many varyings in one shader.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160199 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f685dcd9
    • achicu@adobe.com's avatar
      Web Inspector: [CSS Regions] Show a list of containing regions when clicking a... · 0e035b16
      achicu@adobe.com authored
      Web Inspector: [CSS Regions] Show a list of containing regions when clicking a node that is part of a flow
      https://bugs.webkit.org/show_bug.cgi?id=124614
      
      Reviewed by Timothy Hatcher.
      
      Source/WebInspectorUI:
      
      Added a new function in DOMTreeManager called getNodeContentFlowInfo that can be used
      to retrieve an object with the following structure:
      {
           "regionFlow": <Reference to the ContentFlow object referenced by the -webkit-flow-from property of the node>,
           "contentFlow": <Reference to the ContentFlow object referenced by the -webkit-flow-into property of
                           the node or a parent of the node>,
           "regions": [ list of DOMNodes representing the regions containers of the node. The node is split across all these regions. ]
      }
      
      Also, used this method to display a two new sections in the Computed Styles panel.
      1. Section "Flows": can have up to two Simple Rows: "Region Flow" and "Content Flow".
      2. Section "Container Regions" contains a DOMTreeDataGrid with the list of regions.
      
      The sections are only visible when there's content to display.
      
      Next to the "Region Flow" simple row I've added an arrow that will take the user to the "ContentFlowDOMTreeContentView" of the
      ContentFlow. The same happens for the "Content Flow", but in this case the element will also be highlighted.
      
      Part of the patch I've added the DOMTreeDataGridNode. LayerTreeDataGrid has a lot of CSS in common with it, so I
      will make another patch to refactor LayerTreeDataGrid to use DOMTreeDataGridNode as a base class.
      
      * Localizations/en.lproj/localizedStrings.js:
      * UserInterface/ComputedStyleDetailsPanel.css: Added.
      (.details-section > .content > .group > .row.simple.content-flow-link > .label):
      (.details-section > .content > .group > .row.simple.content-flow-link > .value):
      (.details-section > .content > .group > .row.simple.content-flow-link > .value > div):
      (.details-section > .content > .group > .row.simple.content-flow-link > .value > div > .icon):
      (.details-section > .content > .group > .row.simple.content-flow-link > .value > div > span):
      (.details-section > .content > .group > .row.simple.content-flow-link > .value > div > .go-to-arrow):
      (.details-section > .content > .group > .row.simple.content-flow-link:hover > .value > div > .go-to-arrow):
      * UserInterface/ComputedStyleDetailsPanel.js:
      (WebInspector.ComputedStyleDetailsPanel):
      (WebInspector.ComputedStyleDetailsPanel.prototype.get regionFlow):
      (WebInspector.ComputedStyleDetailsPanel.prototype.set regionFlow):
      (WebInspector.ComputedStyleDetailsPanel.prototype.get contentFlow):
      (WebInspector.ComputedStyleDetailsPanel.prototype.set contentFlow):
      (WebInspector.ComputedStyleDetailsPanel.prototype.get containerRegions):
      (WebInspector.ComputedStyleDetailsPanel.prototype.set containerRegions):
      (WebInspector.ComputedStyleDetailsPanel.prototype.refresh):
      (WebInspector.ComputedStyleDetailsPanel.prototype._computedStyleShowAllCheckboxValueChanged):
      (WebInspector.ComputedStyleDetailsPanel.prototype._resetFlowDetails):
      (WebInspector.ComputedStyleDetailsPanel.prototype._refreshFlowDetails.contentFlowInfoReady):
      (WebInspector.ComputedStyleDetailsPanel.prototype._refreshFlowDetails):
      (WebInspector.ComputedStyleDetailsPanel.prototype._goToRegionFlowArrowWasClicked):
      (WebInspector.ComputedStyleDetailsPanel.prototype._goToContentFlowArrowWasClicked):
      * UserInterface/DOMTreeDataGrid.css: Added.
      (.dom-tree-data-grid .data-grid):
      (.dom-tree-data-grid .data-grid table.data):
      (.dom-tree-data-grid .data-container):
      (.dom-tree-data-grid .data-container tr):
      (.dom-tree-data-grid .data-container td > div):
      (.dom-tree-data-grid .data-container .name-column):
      (.dom-tree-data-grid .data-container .name-column .icon):
      (.dom-tree-data-grid .data-container .name-column .label):
      (.dom-tree-data-grid .data-container tr:hover .name-column .label):
      (.dom-tree-data-grid .data-container .go-to-arrow):
      (.dom-tree-data-grid .data-container tr:hover .go-to-arrow):
      (.dom-tree-data-grid .data-container tbody > tr:nth-child(2n)):
      (.dom-tree-data-grid .data-container tbody > tr:nth-child(2n+1)):
      * UserInterface/DOMTreeDataGrid.js: Added.
      (WebInspector.DOMTreeDataGrid):
      (WebInspector.DOMTreeDataGrid.prototype._onmousemove):
      (WebInspector.DOMTreeDataGrid.prototype._onmouseout):
      * UserInterface/DOMTreeDataGridNode.js: Added.
      (WebInspector.DOMTreeDataGridNode):
      (WebInspector.DOMTreeDataGridNode.prototype.get domNode):
      (WebInspector.DOMTreeDataGridNode.prototype.createCellContent):
      (WebInspector.DOMTreeDataGridNode.prototype._updateNodeName):
      (WebInspector.DOMTreeDataGridNode.prototype._makeNameCell):
      (WebInspector.DOMTreeDataGridNode.prototype._updateNameCellData):
      (WebInspector.DOMTreeDataGridNode.prototype._goToArrowWasClicked):
      * UserInterface/DOMTreeManager.js:
      (WebInspector.DOMTreeManager.prototype.unregisteredNamedFlowContentElement):
      (WebInspector.DOMTreeManager.prototype.nodeRequested):
      (WebInspector.DOMTreeManager.prototype._coerceRemoteArrayOfDOMNodes):
      (WebInspector.DOMTreeManager.prototype.domNodeResolved):
      (WebInspector.DOMTreeManager.prototype.regionNodesAvailable):
      (WebInspector.DOMTreeManager.prototype.get if):
      (WebInspector.DOMTreeManager.prototype.get var):
      (WebInspector.DOMTreeManager.prototype.backendFunction.getComputedProperty):
      (WebInspector.DOMTreeManager.prototype.backendFunction.getContentFlowName):
      (WebInspector.DOMTreeManager.prototype.):
      * UserInterface/DataGrid.css:
      (.data-grid.no-header > table.header):
      (.data-grid.no-header .data-container):
      * UserInterface/DetailsSection.js:
      (WebInspector.DetailsSection):
      * UserInterface/InspectorBackend.js:
      (InspectorBackendClass.prototype._wrap):
      * UserInterface/Main.html:
      * UserInterface/ResourceSidebarPanel.js:
      (WebInspector.ResourceSidebarPanel.prototype.showContentFlowDOMTree):
      * UserInterface/RuntimeManager.js:
      (WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow):
      (WebInspector.RuntimeManager.prototype.getPropertiesForRemoteObject):
      
      LayoutTests:
      
      Added a new test to check the new WebInspector function called DOMTreeManager.getNodeContentFlowInfo.
      
      * http/tests/inspector-protocol/resources/InspectorTest.js:
      When testing the inspector code, we want to catch and log any uncaught exceptions or console.errors/asserts.
      (InspectorTest.importInspectorScripts.console.error.window.onerror):
      (InspectorTest.importInspectorScripts.console.assert):
      (InspectorTest.importInspectorScripts):
      * inspector-protocol/model/content-node-region-info-expected.txt: Added.
      * inspector-protocol/model/content-node-region-info.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160198 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0e035b16
    • cfleizach@apple.com's avatar
      AX: Seed: safari extension installation crashes safari under voice over and freezes voice over · b8f51544
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125308
      
      Reviewed by Anders Carlsson.
      
      Much like Javascript alerts, we need to allow accessibility clients to continue to interact with the WebProcess thread
      when using dispatchDecidePolicyResponses.
      
      * Platform/CoreIPC/MessageSender.h:
      (CoreIPC::MessageSender::sendSync):
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160197 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b8f51544
    • commit-queue@webkit.org's avatar
      32bit buildfix after r160151 · 95b9bf94
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125298
      
      Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-05
      Reviewed by Csaba Osztrogonác.
      
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      (StreamingClient::handleDataReceived):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      95b9bf94
    • matthew_hanson@apple.com's avatar
      Fix ANGLE build failures by re-comitting the changes in http://trac.webkit.org/changeset/154223 · d1be5307
      matthew_hanson@apple.com authored
      on top of the library updates introduced by http://trac.webkit.org/changeset/159533.
      
      Rubber-stamped by Babak Shafiei.
      
      * src/compiler/glslang.l:
      * src/compiler/glslang_lex.cpp:
      * src/compiler/preprocessor/Tokenizer.cpp:
      * src/compiler/preprocessor/Tokenizer.l:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160194 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d1be5307
    • andersca@apple.com's avatar
      "Use Selection for Find" doesn't work in PDF viewed in Safari · da1151f2
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125319
      <rdar://problem/15486983>
      
      Reviewed by Tim Horton.
      
      * WebProcess/Plugins/PDF/PDFPlugin.h:
      * WebProcess/Plugins/PDF/PDFPlugin.mm:
      (-[WKPDFLayerControllerDelegate writeItemsToPasteboard:withTypes:]):
      Pass NSGeneralPboard to writeItemsToPasteboard.
      
      (WebKit::PDFPlugin::handleEditingCommand):
      Handle takeFindStringFromSelection by getting the current selection string and writing it to the find pasteboard.
      
      (WebKit::PDFPlugin::isEditingCommandEnabled):
      Handle takeFindStringFromSelection.
      
      (WebKit::PDFPlugin::writeItemsToPasteboard):
      Update this to take a pasteboard name.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160193 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      da1151f2
    • andersca@apple.com's avatar
      WebKit2 API should use weak ownership for delegate properties rather than assign · cd451e75
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125316
      <rdar://problem/15560614>
      
      Reviewed by Dan Bernstein.
      
      Use WeakObjCPtr for the delegates.
      
      * UIProcess/API/Cocoa/WKBrowsingContextController.h:
      * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
      (didStartProvisionalLoadForFrame):
      (didReceiveServerRedirectForProvisionalLoadForFrame):
      (didFailProvisionalLoadWithErrorForFrame):
      (didCommitLoadForFrame):
      (didFinishLoadForFrame):
      (didFailLoadWithErrorForFrame):
      (didStartProgress):
      (didChangeProgress):
      (didFinishProgress):
      (didChangeBackForwardList):
      (setUpPagePolicyClient):
      (-[WKBrowsingContextController loadDelegate]):
      (-[WKBrowsingContextController setLoadDelegate:]):
      (-[WKBrowsingContextController policyDelegate]):
      (-[WKBrowsingContextController setPolicyDelegate:]):
      (-[WKBrowsingContextController historyDelegate]):
      (-[WKBrowsingContextController setHistoryDelegate:]):
      * UIProcess/API/Cocoa/WKBrowsingContextControllerInternal.h:
      * UIProcess/API/Cocoa/WKConnection.mm:
      (didReceiveMessage):
      (didClose):
      (-[WKConnection delegate]):
      (-[WKConnection setDelegate:]):
      * UIProcess/API/Cocoa/WKProcessGroup.mm:
      (didCreateConnection):
      (getInjectedBundleInitializationUserData):
      (didNavigateWithNavigationData):
      (didPerformClientRedirect):
      (didPerformServerRedirect):
      (didUpdateHistoryTitle):
      (-[WKProcessGroup delegate]):
      (-[WKProcessGroup setDelegate:]):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160191 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cd451e75
    • commit-queue@webkit.org's avatar
      Cropping and drawing ImageBuffers results in uninitialized data being shown · 0a6174a7
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125271
      
      Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-05
      Reviewed by Simon Fraser.
      
      createCroppedImageIfNecessary() crops to the bottom left of the ImageBuffer
      backing store instead of the top left. In addition, ImageBuffer::draw()
      draws the entire ImageBuffer's backing store instead of just the relevant
      portion of it.
      
      No new tests are necessary because the existing tests already test this
      functionality
      
      * platform/graphics/cg/ImageBufferCG.cpp:
      (WebCore::createCroppedImageIfNecessary): Crop to the top left of the
      backing store
      (WebCore::ImageBuffer::draw): Draw only the logical portion of the
      backing store
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160189 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0a6174a7
    • bfulgham@apple.com's avatar
      [Win] Avoid copying compiled-in resources to DSTROOT · 5dbfedc3
      bfulgham@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125309
      
      Reviewed by Jer Noble.
      
      * WebKit.vcxproj/WebKit/WebKitPostBuild.cmd: Only copy Info.plist to the final WebKit.resource bundle.
      The PNG and RC files are compiled into the WebKit.dll library.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160188 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5dbfedc3
    • andersca@apple.com's avatar
      Tweak WeakObjCPtr · c24a7a4f
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125311
      
      Reviewed by Darin Adler.
      
      Source/WebKit2:
      
      Make it possible to use WeakObjCPtr with pointer types such as id. Also,
      add a getAutoreleased() member that will load the weak pointer and retain + autorelease it.
      
      * Shared/mac/WeakObjCPtr.h:
      (WebKit::WeakObjCPtr::WeakObjCPtr):
      (WebKit::WeakObjCPtr::operator=):
      (WebKit::WeakObjCPtr::get):
      (WebKit::WeakObjCPtr::getAutoreleased):
      
      Tools:
      
      Split up tests into more logical groups. Add new tests for new functionality.
      
      * TestWebKitAPI/Tests/WebKit2/mac/WeakObjCPtr.mm:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160187 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c24a7a4f
    • mark.lam@apple.com's avatar
      Make the C Loop LLINT work with callToJavaScript. · afeead10
      mark.lam@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125294.
      
      Reviewed by Michael Saboff.
      
      1. Changed the C Loop LLINT to dispatch to an Executable via its JITCode
         instance which is consistent with how the ASM LLINT works.
      2. Changed CLoop::execute() to take an Opcode instead of an OpcodeID.
         This makes it play nice with the use of JITCode for dispatching.
      3. Introduce a callToJavaScript and callToNativeFunction for the C Loop
         LLINT. These will call JSStack::pushFrame() and popFrame() to setup
         and teardown the CallFrame.
      4. Also introduced a C Loop returnFromJavaScript which is just a
         replacement for ctiOpThrowNotCaught which had the same function.
      5. Remove a lot of #if ENABLE(LLINT_C_LOOP) code now that the dispatch
         mechanism is consistent.
      
      This patch has been tested with both configurations of COMPUTED_GOTOs
      on and off.
      
      * interpreter/CachedCall.h:
      (JSC::CachedCall::CachedCall):
      (JSC::CachedCall::call):
      (JSC::CachedCall::setArgument):
      * interpreter/CallFrameClosure.h:
      (JSC::CallFrameClosure::setThis):
      (JSC::CallFrameClosure::setArgument):
      (JSC::CallFrameClosure::resetCallFrame):
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::execute):
      (JSC::Interpreter::executeCall):
      (JSC::Interpreter::executeConstruct):
      (JSC::Interpreter::prepareForRepeatCall):
      * interpreter/Interpreter.h:
      * interpreter/JSStack.h:
      * interpreter/JSStackInlines.h:
      (JSC::JSStack::pushFrame):
      * interpreter/ProtoCallFrame.h:
      (JSC::ProtoCallFrame::scope):
      (JSC::ProtoCallFrame::callee):
      (JSC::ProtoCallFrame::thisValue):
      (JSC::ProtoCallFrame::argument):
      (JSC::ProtoCallFrame::setArgument):
      * jit/JITCode.cpp:
      (JSC::JITCode::execute):
      * jit/JITCode.h:
      * jit/JITExceptions.cpp:
      (JSC::genericUnwind):
      * llint/LLIntCLoop.cpp:
      (JSC::LLInt::CLoop::initialize):
      * llint/LLIntCLoop.h:
      * llint/LLIntEntrypoint.cpp:
      (JSC::LLInt::setFunctionEntrypoint):
      (JSC::LLInt::setEvalEntrypoint):
      (JSC::LLInt::setProgramEntrypoint):
      - Inverted the check for vm.canUseJIT(). This allows the JIT case to be
        #if'd out nicely when building the C Loop LLINT.
      * llint/LLIntOpcode.h:
      * llint/LLIntThunks.cpp:
      (JSC::doCallToJavaScript):
      (JSC::executeJS):
      (JSC::callToJavaScript):
      (JSC::executeNative):
      (JSC::callToNativeFunction):
      * llint/LLIntThunks.h:
      * llint/LowLevelInterpreter.cpp:
      (JSC::CLoop::execute):
      * runtime/Executable.h:
      (JSC::ExecutableBase::offsetOfNumParametersFor):
      (JSC::ExecutableBase::hostCodeEntryFor):
      (JSC::ExecutableBase::jsCodeEntryFor):
      (JSC::ExecutableBase::jsCodeWithArityCheckEntryFor):
      (JSC::NativeExecutable::create):
      (JSC::NativeExecutable::finishCreation):
      (JSC::ProgramExecutable::generatedJITCode):
      * runtime/JSArray.cpp:
      (JSC::AVLTreeAbstractorForArrayCompare::compare_key_key):
      * runtime/StringPrototype.cpp:
      (JSC::replaceUsingRegExpSearch):
      * runtime/VM.cpp:
      (JSC::VM::getHostFunction):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160186 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      afeead10
    • zoltan@webkit.org's avatar
      [CSS Shapes] Update negative-arguments inset parsing test to test for the... · d882a076
      zoltan@webkit.org authored
      [CSS Shapes] Update negative-arguments inset parsing test to test for the argument not for the commas
      https://bugs.webkit.org/show_bug.cgi?id=125310
      
      Reviewed by Rob Buis.
      
      Fix typo in the negative-arguments inset tests, remove commas.
      
      * fast/shapes/parsing/parsing-shape-lengths-expected.txt:
      * fast/shapes/parsing/parsing-shape-lengths.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160185 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d882a076
    • bfulgham@apple.com's avatar
      [Win] Exiting from Media Full Screen mode via 'escape' key does not work properly · 706b7eea
      bfulgham@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125272
      
      Reviewed by Jer Noble.
      
      * WebView.cpp:
      (WebView::fullScreenClientWillExitFullScreen): Change to webkitCancelFullScreen method call
      to more closely match Media Control behavior.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160184 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      706b7eea
    • commit-queue@webkit.org's avatar
      Remove stale ScriptGlobalObject methods · 90ace0de
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125276
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-12-05
      Reviewed by Sam Weinig.
      
      * bindings/js/ScriptObject.cpp:
      (WebCore::ScriptGlobalObject::set):
      * bindings/js/ScriptObject.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160183 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      90ace0de
    • rniwa@webkit.org's avatar
      Change how the form element pointer affects parsing template elements, to... · 5995f121
      rniwa@webkit.org authored
      Change how the form element pointer affects parsing template elements, to reduce weirdness in templates
      https://bugs.webkit.org/show_bug.cgi?id=125279
      
      Reviewed by Antti Koivisto.
      
      Source/WebCore: 
      
      Faithfully update the HTML5 parser after http://html5.org/tools/web-apps-tracker?from=8330&to=8331.
      
      Test: fast/dom/HTMLTemplateElement/no-form-association-2.html
      
      * html/parser/HTMLConstructionSite.cpp:
      (WebCore::HTMLConstructionSite::insertHTMLFormElement): Don't the form element pointer if the context
      element or its ancestor is a template element.
      (WebCore::HTMLConstructionSite::insideTemplateElement): Added.
      (WebCore::HTMLConstructionSite::createHTMLElement): Renamed openElementsContainTemplateElement to
      insideTemplateElement to reflect the true semantics of the boolean.
      
      * html/parser/HTMLConstructionSite.h:
      
      * html/parser/HTMLTreeBuilder.cpp:
      (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): Ignore the form element pointer if there
      is a template element on the stack of open elements. This faithfully reflects what's being said in the
      specification. We should probably make isParsingTemplateContents more efficient by storing a boolean
      and then wrap from() in some helper function but that should probbaly happen in a separate patch.
      (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto.
      (WebCore::HTMLTreeBuilder::processStartTagForInTable): Ditto.
      (WebCore::HTMLTreeBuilder::processEndTagForInBody): Don't unset or rely on the form element pointer
      when there is a template element on the stack of open elements.
      
      * html/parser/HTMLTreeBuilder.h:
      (WebCore::HTMLTreeBuilder::isParsingTemplateContents): Added a trivial implementation for when
      TEMPLATE_ELEMENT is disabled.
      (WebCore::HTMLTreeBuilder::isParsingFragmentOrTemplateContents): Merged two implementations.
      
      LayoutTests: 
      
      Added a regression test. Someone should port this test into web-platform-tests once the latest spec.
      change has been refelcted to a working draft version of the HTML5 specification.
      
      * fast/dom/HTMLTemplateElement/no-form-association-2-expected.txt: Added.
      * fast/dom/HTMLTemplateElement/no-form-association-2.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160182 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5995f121
    • commit-queue@webkit.org's avatar
      [MediaStream] Firing negotiationneeded event upon track add/remove on MediaStream · c0b63ec5
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125243
      
      Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-12-05
      Reviewed by Eric Carlson.
      
      Spec states that: In particular, if an RTCPeerConnection object is consuming a MediaStream on which a track is
      added, by, e.g., the addTrack() method being invoked, the RTCPeerConnection object must fire the
      "negotiationneeded" event. Removal of media components must also trigger "negotiationneeded".
      
      Source/WebCore:
      
      Existing tests updated.
      
      * Modules/mediastream/MediaStream.cpp:
      (WebCore::MediaStream::addTrack):
      (WebCore::MediaStream::removeTrack):
      (WebCore::MediaStream::addObserver):
      (WebCore::MediaStream::removeObserver):
      * Modules/mediastream/MediaStream.h:
      * Modules/mediastream/RTCPeerConnection.cpp:
      (WebCore::RTCPeerConnection::~RTCPeerConnection):
      (WebCore::RTCPeerConnection::addStream):
      (WebCore::RTCPeerConnection::removeStream):
      (WebCore::RTCPeerConnection::didAddOrRemoveTrack):
      * Modules/mediastream/RTCPeerConnection.h:
      * platform/mock/RTCPeerConnectionHandlerMock.cpp:
      (WebCore::RTCPeerConnectionHandlerMock::addStream):
      
      LayoutTests:
      
      * fast/mediastream/RTCPeerConnection-AddRemoveStream-expected.txt:
      * fast/mediastream/RTCPeerConnection-AddRemoveStream.html:
      * fast/mediastream/RTCPeerConnection-onnegotiationneeded-expected.txt:
      * fast/mediastream/RTCPeerConnection-onnegotiationneeded.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160181 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c0b63ec5
    • hugo.lima@openbossa.org's avatar
      [Unreviewed] Turn on executable bits of Tools/Scripts/run-nix-tests and... · 7fa8a1b1
      hugo.lima@openbossa.org authored
      [Unreviewed] Turn on executable bits of Tools/Scripts/run-nix-tests and Tools/Scripts/update-webkitnix-libs
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160180 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7fa8a1b1
    • bdakin@apple.com's avatar
      Bad repaints on twitter when the tile cache has a margin · cab34d3c
      bdakin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125263
      -and corresponding-
      <rdar://problem/15576884>
      
      Reviewed by Tim Horton.
      
      When tiles that used to be margin tiles become real-content tiles, they need to be 
      invalidated.
      
      Two new helper functions will make it so that we don’t have to manually factor out 
      the margin from the bounds in more than one place in the code.
      * platform/graphics/ca/mac/TileController.h:
      * platform/graphics/ca/mac/TileController.mm:
      (WebCore::TileController::boundsWithoutMargin):
      (WebCore::TileController::boundsAtLastRevalidateWithoutMargin):
      
       Here is one existing place where we used to factor out the margin, but now we can 
      call boundsWithoutMargin().
      (WebCore::TileController::adjustRectAtTileIndexForMargin):
      
      And here is where we invalidate the formerly-margin tiles.
      (WebCore::TileController::revalidateTiles):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160179 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cab34d3c
    • zoltan@webkit.org's avatar
      Remove the forward declaration of BidiContext class from RenderBlock.h · c98cfd8f
      zoltan@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125265
      
      Reviewed by Csaba Osztrogonác.
      
      No new tests, no behavior change.
      
      * rendering/RenderBlock.h: BidiContext is not used in RenderBlock.h
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160178 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c98cfd8f
    • commit-queue@webkit.org's avatar
      [Cairo] Avoid extra copy when drawing images · 7caa7837
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124209
      
      Patch by Aloisio Almeida Jr <aloisio.almeida@openbossa.org> on 2013-12-05
      Reviewed by Carlos Garcia Campos.
      
      This commit applies some changes proposed after the original patch has
      been landed. It fixes the logic to create the subsurface (as it was
      inverted). It also remove an unnecessary RefPtr variable to hold the
      subsurface.
      
      No new tests. It's an enhancement. Already covered by existing tests.
      
      * platform/graphics/cairo/PlatformContextCairo.cpp:
      (WebCore::PlatformContextCairo::drawSurfaceToContext):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160177 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7caa7837
    • zoltan@webkit.org's avatar
      [CSS Shapes] Fix inset when only a subset of the arguments are defined · 3a470a7f
      zoltan@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125277
      
      Reviewed by David Hyatt.
      
      Source/WebCore:
      
             I thought Length's default value is fixed-0, but actually it's auto-0. For the optional arguments
             of inset shape, we need to use fixed-0, so I updated the code and the tests to use that explicitly.
      
      No new tests, I updated the old ones.
      
      * css/BasicShapeFunctions.cpp:
      (WebCore::basicShapeForValue):
      
      LayoutTests:
      
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160176 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3a470a7f
    • commit-queue@webkit.org's avatar
      Fix JavaScriptCore build if cloop is enabled after r160094 · 02308551
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125292
      
      Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-05
      Reviewed by Michael Saboff.
      
      Move ProtoCallFrame outside the JIT guard.
      
      * jit/JITCode.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160175 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      02308551
    • carlosgc@webkit.org's avatar
      [GTK] Do not use deprecated gtk-doc 'Rename to' tag · 3b52d3fb
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125303
      
      Reviewed by Philippe Normand.
      
      GObject introspection rename-to annotation is available in
      since version 0.6.3 so we should use that instead.
      
      * bindings/gobject/WebKitDOMEventTarget.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160174 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3b52d3fb
    • carlosgc@webkit.org's avatar
      [GTK] Fix gtk-doc warnings when generating DOM bindings API docs · 6b39e900
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125302
      
      Reviewed by Philippe Normand.
      
      * gtk/generate-webkitdom-doc-files:
      (WebKitDOMDocGeneratorSections.write_footer): Add a new section
      containing a private subsection for WEBKIT_API, WEBKIT_DEPRECATED
      and WEBKIT_DEPRECATED_FOR macros.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160173 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6b39e900
    • carlosgc@webkit.org's avatar
      [GTK] Add missing symbols to WebKitDOMDeprecated.symbols · 59999b90
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125300
      
      Reviewed by Philippe Normand.
      
      Add webkit_dom_html_element_get_id and
      webkit_dom_html_element_set_id to the symbols files.
      
      * bindings/gobject/WebKitDOMDeprecated.symbols:
      * bindings/gobject/webkitdom.symbols:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160172 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      59999b90