1. 04 Dec, 2013 8 commits
    • fpizlo@apple.com's avatar
      Fold constant typed arrays · ee327c85
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125205
      
      Source/JavaScriptCore: 
      
      Reviewed by Oliver Hunt and Mark Hahnenberg.
              
      If by some other mechanism we have a typed array access on a compile-time constant
      typed array pointer, then fold:
              
      - Array bounds checks. Specifically, fold the load of length.
              
      - Loading the vector.
              
      This needs to install a watchpoint on the array itself because of the possibility of
      neutering. Neutering is ridiculous. We do this without bloating the size of
      ArrayBuffer or JSArrayBufferView in the common case (i.e. the case where you
      allocated an array that didn't end up becoming a compile-time constant). To install
      the watchpoint, we slowDownAndWasteMemory and then create an incoming reference to
      the ArrayBuffer, where that incoming reference is from a watchpoint object. The
      ArrayBuffer already knows about such incoming references and can fire the
      watchpoints that way.
              
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * dfg/DFGDesiredWatchpoints.cpp:
      (JSC::DFG::ArrayBufferViewWatchpointAdaptor::add):
      (JSC::DFG::DesiredWatchpoints::addLazily):
      * dfg/DFGDesiredWatchpoints.h:
      (JSC::DFG::GenericSetAdaptor::add):
      (JSC::DFG::GenericSetAdaptor::hasBeenInvalidated):
      (JSC::DFG::ArrayBufferViewWatchpointAdaptor::hasBeenInvalidated):
      (JSC::DFG::GenericDesiredWatchpoints::reallyAdd):
      (JSC::DFG::GenericDesiredWatchpoints::areStillValid):
      (JSC::DFG::GenericDesiredWatchpoints::isStillValid):
      (JSC::DFG::GenericDesiredWatchpoints::shouldAssumeMixedState):
      (JSC::DFG::DesiredWatchpoints::isStillValid):
      (JSC::DFG::DesiredWatchpoints::shouldAssumeMixedState):
      (JSC::DFG::DesiredWatchpoints::isValidOrMixed):
      * dfg/DFGGraph.cpp:
      (JSC::DFG::Graph::tryGetFoldableView):
      * dfg/DFGGraph.h:
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::jumpForTypedArrayOutOfBounds):
      (JSC::DFG::SpeculativeJIT::emitTypedArrayBoundsCheck):
      (JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
      (JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
      (JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
      (JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
      (JSC::DFG::SpeculativeJIT::compileConstantIndexedPropertyStorage):
      (JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
      * dfg/DFGSpeculativeJIT.h:
      * dfg/DFGWatchpointCollectionPhase.cpp:
      (JSC::DFG::WatchpointCollectionPhase::handle):
      (JSC::DFG::WatchpointCollectionPhase::addLazily):
      * ftl/FTLLowerDFGToLLVM.cpp:
      (JSC::FTL::LowerDFGToLLVM::compileGetIndexedPropertyStorage):
      (JSC::FTL::LowerDFGToLLVM::compileGetByVal):
      (JSC::FTL::LowerDFGToLLVM::compilePutByVal):
      (JSC::FTL::LowerDFGToLLVM::typedArrayLength):
      * runtime/ArrayBuffer.cpp:
      (JSC::ArrayBuffer::transfer):
      * runtime/ArrayBufferNeuteringWatchpoint.cpp: Added.
      (JSC::ArrayBufferNeuteringWatchpoint::ArrayBufferNeuteringWatchpoint):
      (JSC::ArrayBufferNeuteringWatchpoint::~ArrayBufferNeuteringWatchpoint):
      (JSC::ArrayBufferNeuteringWatchpoint::finishCreation):
      (JSC::ArrayBufferNeuteringWatchpoint::destroy):
      (JSC::ArrayBufferNeuteringWatchpoint::create):
      (JSC::ArrayBufferNeuteringWatchpoint::createStructure):
      * runtime/ArrayBufferNeuteringWatchpoint.h: Added.
      (JSC::ArrayBufferNeuteringWatchpoint::set):
      * runtime/VM.cpp:
      (JSC::VM::VM):
      * runtime/VM.h:
      
      LayoutTests: 
      
      Reviewed by Oliver Hunt and Mark Hahnenberg.
      
      * js/regress/fixed-typed-array-storage-expected.txt: Added.
      * js/regress/fixed-typed-array-storage-var-index-expected.txt: Added.
      * js/regress/fixed-typed-array-storage-var-index.html: Added.
      * js/regress/fixed-typed-array-storage.html: Added.
      * js/regress/script-tests/fixed-typed-array-storage-var-index.js: Added.
      (foo):
      * js/regress/script-tests/fixed-typed-array-storage.js: Added.
      (foo):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160150 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ee327c85
    • zoltan@webkit.org's avatar
      [CSS Shapes] Support inset for shape-outside · c9ab7882
      zoltan@webkit.org authored
      <https://webkit.org/b/125112>
      
      Reviewed by David Hyatt.
      
      Source/WebCore:
      
      This patch adds inset support for shape-outside. Parsing has previously landed in r159968.
      Specification: http://dev.w3.org/csswg/css-shapes/#supported-basic-shapes
      
      Tests: fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left.html
             fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right.html
             fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left.html
             fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right.html
             fast/shapes/shape-outside-floats/shape-outside-floats-inset.html
      
      * platform/LengthSize.h:
      (WebCore::LengthSize::floatSize): Add conversion to FloatSize.
      * rendering/shapes/Shape.cpp:
      (WebCore::Shape::createShape): Handle inset case.
      
      LayoutTests:
      
      * fast/shapes/resources/rounded-rectangle.js: Add support to generate partially rounded rectangles.
      (scanConvertRoundedRectangleOutside):
      (genLeftRoundedRectFloatShapeOutsideRefTest):
      (genRightRoundedRectFloatShapeOutsideRefTest):
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-inset.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160130 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9ab7882
    • betravis@adobe.com's avatar
      Web Inspector: [CSS Shapes] Support raster shape visualizations · c9f2fded
      betravis@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124080
      
      Reviewed by Joseph Pecoraro.
      
      Source/WebCore:
      
      Create an inspector visualization for a shape created from an image.
      The visualization takes each line of the image, combining where possible.
      
      Test added to inspector-protocol/model/highlight-shape-outside.html
      
      * rendering/shapes/RasterShape.cpp:
      (WebCore::RasterShapeIntervals::buildBoundsPath): Create a path representing the
      RasterShapeIntervals.
      * rendering/shapes/RasterShape.h:
      
      LayoutTests:
      
      Add a test for data sent to the inspector for a raster shape.
      
      * inspector-protocol/model/highlight-shape-outside-expected.txt:
      * inspector-protocol/model/highlight-shape-outside.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160127 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9f2fded
    • commit-queue@webkit.org's avatar
      Allow ImageBuffer to use an IOSurface that is larger than necessary · 60dcc5f6
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124626
      
      Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-04
      Reviewed by Simon Fraser.
      
      Source/WebCore:
      
      Because creating ImageBuffer's backing store can be so expensive, it
      would be beneficial to have a pool of pre-created backing stores
      available. However, this means that ImageBuffer might have to use a
      backing store that is larger than the exact dimensions that it needs.
      This patch adds a field, m_backingStoreSize, to CG's ImageBufferData
      class, and uses this new field when performing ImageBuffer operations
      to allow for larger-than-necessary backing stores. Content is always
      drawn in the top left corner of the backing store.
      
      No new tests are necessary because there is no behavior change.
      
      * platform/graphics/ImageBuffer.h:
      (WebCore::ImageBuffer::baseTransform): The base transform has to put
      content at the top left corner instead of bottom left
      * platform/graphics/cg/ImageBufferCG.cpp:
      (WebCore::createCroppedImageIfNecessary): Convenience function to figure out
      the dimensions of the backing texture in user space
      (WebCore::ImageBuffer::ImageBuffer): Set up new m_backingStoreSize member
      (WebCore::maybeCropToBounds): Some ImageBuffer API functions require
      outputting an image with logical size. This function performs the cropping
      (WebCore::ImageBuffer::copyImage): Updated for larger-than-necessary
      backing stores
      (WebCore::ImageBuffer::copyNativeImage): Ditto
      (WebCore::ImageBuffer::draw): Ditto
      (WebCore::ImageBuffer::clip): Ditto
      (WebCore::ImageBuffer::putByteArray): Ditto
      (WebCore::ImageBuffer::toDataURL): Ditto
      * platform/graphics/cg/ImageBufferDataCG.cpp:
      (WebCore::ImageBufferData::getData): Ditto
      (WebCore::ImageBufferData::putData): Ditto
      * platform/graphics/cg/ImageBufferDataCG.h: New m_backingStoreSize field
      
      LayoutTests:
      
      Update tests to be more robust with respect to accelerated vs
      non-accelerated ImageBuffers.
      
      * fast/canvas/script-tests/canvas-fillPath-shadow.js: Don't sample a canvas at exactly
      the corner of a drawn shape (because the corner might be antialiased). Instead, sample
      a single pixel inside the shape
      * fast/canvas/script-tests/canvas-scale-shadowBlur.js: Don't sample a canvas at exactly
      the edge of the blur radius. Instead, sample a single pixel past the blur radius.
      * fast/canvas/script-tests/canvas-scale-strokePath-shadow.js:
      (shouldBeAround): Allow this test to be less strict when sampling inside a blurred region
      * platform/mac/fast/canvas/canvas-scale-shadowBlur-expected.txt: Matching update w/r/t
      canvas-scale-shadowBlur.js
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160121 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      60dcc5f6
    • dino@apple.com's avatar
      Source/WebCore: [WebGL] Support for texImage2D of type HALF_FLOAT_OES · 32904690
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=110936
      
      Reviewed by Brent Fulgham.
      
      Add support for the HALF_FLOAT_OES texture format from texImage2D
      and texSubImage2D.
      
      A lot of this patch comes from the original patch on the bug
      by Nayan Kumar, and the Blink commit:
      https://codereview.chromium.org/13842017
      
      Tests: fast/canvas/webgl/oes-texture-half-float-with-canvas.html
             fast/canvas/webgl/oes-texture-half-float-with-image.html
             fast/canvas/webgl/oes-texture-half-float-with-video.html
      
      * html/canvas/OESTextureHalfFloat.idl: New HALF_FLOAT_OES constant value.
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore::WebGLRenderingContext::validateTexFunc): Remove the code that
      would bail if half-float values were used.
      * platform/graphics/GraphicsContext3D.cpp:
      - Return appropriate DataFormats for half floating point types.
      - Copy the float -> half-float code from Blink
      - New pack functions for half floats
      * platform/graphics/GraphicsContext3D.h: New format types.
      * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
      (WebCore::GraphicsContext3D::texSubImage2D): Use GL_HALF_FLOAT_ARB if we're passed
      a HALF_FLOAT_OES.
      
      LayoutTests: [WebGL] Support for texImage2D/texSubImage2D of type HALF_FLOAT_OES
      https://bugs.webkit.org/show_bug.cgi?id=110936
      
      Reviewed by Brent Fulgham.
      
      New tests for half-float textures.
      
      * fast/canvas/webgl/oes-texture-half-float-expected.txt:
      * fast/canvas/webgl/oes-texture-half-float-not-supported-expected.txt: Removed.
      * fast/canvas/webgl/oes-texture-half-float-not-supported.html: Removed.
      * fast/canvas/webgl/oes-texture-half-float-with-canvas-expected.txt: Added.
      * fast/canvas/webgl/oes-texture-half-float-with-canvas.html: Added.
      * fast/canvas/webgl/oes-texture-half-float-with-image-expected.txt: Added.
      * fast/canvas/webgl/oes-texture-half-float-with-image.html: Added.
      * fast/canvas/webgl/oes-texture-half-float-with-video-expected.txt: Added.
      * fast/canvas/webgl/oes-texture-half-float-with-video.html: Added.
      * fast/canvas/webgl/oes-texture-half-float.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      32904690
    • mihnea@adobe.com's avatar
      [CSSRegions] Test dynamic change of position for out-of-flow transformed element · 1313145c
      mihnea@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124978
      
      Reviewed by Alexandru Chiculita.
      
      Test that a 3D transformed absolutely positioned element inside a named flow
      whose position is dynamic changed is displayed in the right position in the associated region.
      
      * compositing/regions/abs-transformed-dynamic-update-expected.html: Added.
      * compositing/regions/abs-transformed-dynamic-update.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160110 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1313145c
    • fpizlo@apple.com's avatar
      Infer constant closure variables · 88fedde1
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124630
      
      Source/JavaScriptCore: 
      
      Reviewed by Geoffrey Garen.
              
      Captured variables that are assigned once (not counting op_enter's Undefined
      initialization) and that are contained within a function that has thus far only been
      entered once are now constant folded. It's pretty awesome.
              
      This involves a watchpoint on the assignment to variables and a watchpoint on entry
      into the function. The former is reused from global variable constant inference and the
      latter is reused from one-time closure inference.
      
      * GNUmakefile.list.am:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::dumpBytecode):
      (JSC::CodeBlock::CodeBlock):
      * bytecode/Instruction.h:
      (JSC::Instruction::Instruction):
      * bytecode/Opcode.h:
      (JSC::padOpcodeName):
      * bytecode/UnlinkedCodeBlock.h:
      (JSC::UnlinkedInstruction::UnlinkedInstruction):
      * bytecode/VariableWatchpointSet.h:
      (JSC::VariableWatchpointSet::invalidate):
      * bytecode/Watchpoint.h:
      (JSC::WatchpointSet::invalidate):
      * bytecompiler/BytecodeGenerator.cpp:
      (JSC::BytecodeGenerator::addVar):
      (JSC::BytecodeGenerator::BytecodeGenerator):
      (JSC::BytecodeGenerator::emitInitLazyRegister):
      (JSC::BytecodeGenerator::emitMove):
      (JSC::BytecodeGenerator::emitNewFunctionInternal):
      (JSC::BytecodeGenerator::createArgumentsIfNecessary):
      * bytecompiler/BytecodeGenerator.h:
      (JSC::BytecodeGenerator::addVar):
      (JSC::BytecodeGenerator::watchableVariable):
      * dfg/DFGByteCodeParser.cpp:
      (JSC::DFG::ByteCodeParser::getLocal):
      (JSC::DFG::ByteCodeParser::inferredConstant):
      (JSC::DFG::ByteCodeParser::parseBlock):
      (JSC::DFG::ByteCodeParser::parse):
      * dfg/DFGGraph.cpp:
      (JSC::DFG::Graph::tryGetActivation):
      (JSC::DFG::Graph::tryGetRegisters):
      * dfg/DFGGraph.h:
      * jit/JIT.cpp:
      (JSC::JIT::privateCompileMainPass):
      (JSC::JIT::privateCompileSlowCases):
      * jit/JIT.h:
      * jit/JITOpcodes.cpp:
      (JSC::JIT::emit_op_mov):
      (JSC::JIT::emit_op_captured_mov):
      (JSC::JIT::emit_op_new_captured_func):
      (JSC::JIT::emitSlow_op_captured_mov):
      * jit/JITOpcodes32_64.cpp:
      (JSC::JIT::emit_op_mov):
      (JSC::JIT::emit_op_captured_mov):
      * llint/LowLevelInterpreter32_64.asm:
      * llint/LowLevelInterpreter64.asm:
      * runtime/CommonSlowPaths.cpp:
      (JSC::SLOW_PATH_DECL):
      * runtime/CommonSlowPaths.h:
      * runtime/ConstantMode.h: Added.
      * runtime/JSGlobalObject.h:
      * runtime/JSScope.cpp:
      (JSC::abstractAccess):
      * runtime/SymbolTable.cpp:
      (JSC::SymbolTableEntry::prepareToWatch):
      
      LayoutTests: 
      
      Reviewed by Geoffrey Garen.
              
      This adds both correctness and performance tests for constant closure variable
      inference.
      
      * js/regress/infer-closure-const-then-mov-expected.txt: Added.
      * js/regress/infer-closure-const-then-mov-no-inline-expected.txt: Added.
      * js/regress/infer-closure-const-then-mov-no-inline.html: Added.
      * js/regress/infer-closure-const-then-mov.html: Added.
      * js/regress/infer-closure-const-then-put-to-scope-expected.txt: Added.
      * js/regress/infer-closure-const-then-put-to-scope-no-inline-expected.txt: Added.
      * js/regress/infer-closure-const-then-put-to-scope-no-inline.html: Added.
      * js/regress/infer-closure-const-then-put-to-scope.html: Added.
      * js/regress/infer-closure-const-then-reenter-expected.txt: Added.
      * js/regress/infer-closure-const-then-reenter-no-inline-expected.txt: Added.
      * js/regress/infer-closure-const-then-reenter-no-inline.html: Added.
      * js/regress/infer-closure-const-then-reenter.html: Added.
      * js/regress/script-tests/infer-closure-const-then-mov-no-inline.js: Added.
      * js/regress/script-tests/infer-closure-const-then-mov.js: Added.
      * js/regress/script-tests/infer-closure-const-then-put-to-scope-no-inline.js: Added.
      (thingy.):
      (thingy):
      * js/regress/script-tests/infer-closure-const-then-put-to-scope.js: Added.
      (thingy.):
      (thingy):
      * js/regress/script-tests/infer-closure-const-then-reenter-no-inline.js: Added.
      (.return.foo):
      (foo):
      * js/regress/script-tests/infer-closure-const-then-reenter.js: Added.
      (.return.foo):
      (foo):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160109 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      88fedde1
    • mario.prada@samsung.com's avatar
      Unreviewed GTK gardening. Updated expectations for GTK and share them with EFL. · 60bce5a7
      mario.prada@samsung.com authored
      * accessibility/multiselect-list-reports-active-option-expected.txt: Renamed from LayoutTests/platform/efl/multiselect-list-reports-active-option-expected.txt.
      * platform/gtk/accessibility/multiselect-list-reports-active-option-expected.txt: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      60bce5a7
  2. 03 Dec, 2013 12 commits
    • ap@apple.com's avatar
      Update WebCrypto JWK mapping to newer proposal · e6074e79
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124218
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore: 
      
      Tests: crypto/subtle/jwk-export-use-values.html
             crypto/subtle/jwk-import-use-values.html
      
      1. "extractable" renamed to "ext" in JWK.
      2. New values for "use" mapping, which can now be combined into comma separated lists,
      and cover all possible WebCrypto usages.
      
      * bindings/js/JSCryptoKeySerializationJWK.cpp:
      (WebCore::JSCryptoKeySerializationJWK::reconcileUsages):
      (WebCore::JSCryptoKeySerializationJWK::reconcileExtractable):
      (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
      (WebCore::processUseValue):
      (WebCore::JSCryptoKeySerializationJWK::addJWKUseToJSON):
      (WebCore::JSCryptoKeySerializationJWK::serialize):
      
      LayoutTests: 
      
      * crypto/subtle/jwk-export-use-values-expected.txt: Added.
      * crypto/subtle/jwk-export-use-values.html: Added.
      * crypto/subtle/jwk-import-use-values-expected.txt: Added.
      * crypto/subtle/jwk-import-use-values.html: Added.
      New tests for "use" mapping.
      
      * crypto/subtle/aes-cbc-import-jwk.html:
      * crypto/subtle/aes-cbc-unwrap-rsa.html:
      * crypto/subtle/aes-cbc-wrap-rsa-non-extractable.html:
      * crypto/subtle/aes-cbc-wrap-rsa.html:
      * crypto/subtle/aes-export-key-expected.txt:
      * crypto/subtle/aes-export-key.html:
      * crypto/subtle/hmac-export-key-expected.txt:
      * crypto/subtle/hmac-export-key.html:
      * crypto/subtle/hmac-import-jwk.html:
      * crypto/subtle/import-jwk-expected.txt:
      * crypto/subtle/import-jwk.html:
      * crypto/subtle/rsa-export-key-expected.txt:
      * crypto/subtle/rsa-export-key.html:
      * crypto/subtle/rsa-export-private-key-expected.txt:
      * crypto/subtle/rsa-export-private-key.html:
      * crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
      * crypto/subtle/rsa-oaep-key-manipulation.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160061 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e6074e79
    • ap@apple.com's avatar
      Layout Test platform/mac/accessibility/search-predicate-element-count.html is flaky · 64dd899f
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125195
      
      * platform/mac/TestExpectations: Marking as such.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160049 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      64dd899f
    • samuel_white@apple.com's avatar
      AXPress event coordinates are always sent as (0, 0) · 12d5e64d
      samuel_white@apple.com authored
          https://bugs.webkit.org/show_bug.cgi?id=76677
      
          Reviewed by Simon Fraser.
      
          Make sure a press targets an element's center point.
      
          * accessibility/press-targets-center-point-expected.txt: Added.
          * accessibility/press-targets-center-point.html: Added.
      
          Set the coordinates of a simulated press equal to the center of the target
          element when the simulated press does not have a related mouse event.
      
          Test: accessibility/press-targets-center-point.html
      
          * dom/Element.cpp:
          (WebCore::Element::clientRect):
          (WebCore::Element::screenRect):
          * dom/Element.h:
          * dom/EventDispatcher.cpp:
          (WebCore::EventDispatcher::dispatchSimulatedClick):
          * dom/MouseEvent.cpp:
          (WebCore::SimulatedMouseEvent::create):
          (WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
          * dom/MouseEvent.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160032 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      12d5e64d
    • dino@apple.com's avatar
      [WebGL] Implement OES texture float linear · ae867077
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124871
      
      Reviewed by Brent Fulgham.
      
      Source/WebCore:
      
      Implement the OES_texture_float_linear extension. Generally
      we'd also enable OES_texture_half_float_linear at the same
      time, but that's blocked on webkit.org/b/110936.
      
      Test: fast/canvas/webgl/oes-texture-float-linear.html
      
      * CMakeLists.txt: Add new files.
      * DerivedSources.cpp: Ditto.
      * DerivedSources.make: Generate new file from IDL.
      * GNUmakefile.list.am: Add new files.
      * WebCore.vcxproj/WebCore.vcxproj: Ditto.
      * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
      * WebCore.xcodeproj/project.pbxproj: New files for OESTextureFloatLinear.
      
      * bindings/js/JSWebGLRenderingContextCustom.cpp:
      (WebCore::toJS): Map the new name into the appropriate type.
      
      * html/canvas/OESTextureFloatLinear.cpp: Added. This is a very simple class
      that's mostly empty.
      (WebCore::OESTextureFloatLinear::OESTextureFloatLinear):
      (WebCore::OESTextureFloatLinear::~OESTextureFloatLinear):
      (WebCore::OESTextureFloatLinear::getName):
      (WebCore::OESTextureFloatLinear::create):
      * html/canvas/OESTextureFloatLinear.h: Added.
      * html/canvas/OESTextureFloatLinear.idl: Added.
      
      * html/canvas/WebGLExtension.h: Declare the new name in the enum of extensions.
      
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore::WebGLRenderingContext::drawArrays): Call new name.
      (WebCore::WebGLRenderingContext::drawElements): Call new name.
      (WebCore::WebGLRenderingContext::getExtension): Create the new extension if asked.
      (WebCore::WebGLRenderingContext::checkTextureCompleteness): Renamed from handleNPOTTextures. Now
      checks for the type of the texture too.
      * html/canvas/WebGLRenderingContext.h: Member variable for new extension.
      
      * html/canvas/WebGLTexture.cpp:
      (WebCore::WebGLTexture::WebGLTexture):
      (WebCore::WebGLTexture::needToUseBlackTexture): Takes an extra parameter which indicates
      if it has an extension enabled.
      (WebCore::WebGLTexture::update): Note it is a float type when updating.
      * html/canvas/WebGLTexture.h: New flag to indicate float type.
      
      * platform/graphics/Extensions3D.h: New flag type.
      * platform/graphics/opengl/Extensions3DOpenGL.cpp:
      (WebCore::Extensions3DOpenGL::supportsExtension): Add a comment about the extension.
      
      LayoutTests:
      
      Add the Khronos test files for this extension.
      
      Add the JS test file for OES_texture_float_linear and OES_texture_half_float_linear
      even though it's only used for the former at the moment.
      
      * fast/canvas/webgl/oes-texture-float-linear.html: Added.
      * fast/canvas/webgl/resources/oes-texture-float-and-half-float-linear.js: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160030 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae867077
    • ap@apple.com's avatar
      Support exporting private WebCrypto RSA keys · 902a179d
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124483
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore: 
      
      Test: crypto/subtle/rsa-export-private-key.html
      
      It might be better to have our own bignum implementation in WTF, but we currently
      don't, and the need for this computation is Common Crypto specific anyway.
      
      * crypto/CommonCryptoUtilities.h:
      * crypto/CommonCryptoUtilities.cpp:
      (WebCore::CCBigNum::CCBigNum):
      (WebCore::CCBigNum::~CCBigNum):
      (WebCore::CCBigNum::operator=):
      (WebCore::CCBigNum::data):
      (WebCore::CCBigNum::operator-):
      (WebCore::CCBigNum::operator%):
      (WebCore::CCBigNum::inverse):
      Added a minimal wrapper around CommonCrypto BigNum.
      
      * crypto/mac/CryptoKeyRSAMac.cpp:
      (WebCore::getPrivateKeyComponents): Compute missing parts using CCBigNum.
      (WebCore::CryptoKeyRSA::exportData): Implemented private key case.
      
      LayoutTests: 
      
      * crypto/subtle/rsa-export-private-key-expected.txt: Added.
      * crypto/subtle/rsa-export-private-key.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160029 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      902a179d
    • ap@apple.com's avatar
      WebCrypto HMAC doesn't check key algorithm's hash · 6cfecdc0
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125114
      
      Update layout test result for a last minute change in test content.
      
      * crypto/subtle/hmac-check-algorithm-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160027 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6cfecdc0
    • rniwa@webkit.org's avatar
      XML fragment parsing algorithm doesn't use the context element's default namespace URI · 55fa369e
      rniwa@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125132
      
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      Always use the context element's namespace as the default namespace URI when one is not specified by xmlns.
      
      The new behavior matches that of Internet Explorer and the specified behavior in HTML5:
      http://www.w3.org/TR/2013/CR-html5-20130806/the-xhtml-syntax.html#parsing-xhtml-fragments
      
      "The default namespace is the namespace for which the DOM isDefaultNamespace() method on the element would
      return true."
      
      Test: fast/parser/fragment-parsing-in-document-without-xmlns.html
      
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      (WebCore::XMLDocumentParser::XMLDocumentParser):
      
      LayoutTests:
      
      Added a test for parsing a markup fragment inside a XHTML document without xmlns.
      The parsed fragment should use the context element's namespace as the default namespace.
      
      * fast/parser/fragment-parsing-in-document-without-xmlns-expected.txt: Added.
      * fast/parser/fragment-parsing-in-document-without-xmlns.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160024 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      55fa369e
    • stavila@adobe.com's avatar
      The overflow border of a relatively positioned element inside a region is not painted · e018cb5e
      stavila@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124919
      
      Source/WebCore:
      
      Relative positioned elements have self-painting layers that don't propagate the visual overflow
      so the layer's position should be used when determining the clipping rectangle for box decorations.
      
      Reviewed by Mihnea Ovidenie.
      
      Test: fast/regions/relative-borders-overflow.html
      
      * rendering/RenderFlowThread.cpp:
      (WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):
      
      LayoutTests:
      
      Added new tests for correct painting of the borders of a relatively positioned element inside a region.
      
      Reviewed by Mihnea Ovidenie.
      
      * fast/regions/relative-borders-overflow-expected.html: Added.
      * fast/regions/relative-borders-overflow.html: Added.
      * fast/regions/relative-in-absolute-borders-overflow-expected.html: Added.
      * fast/regions/relative-in-absolute-borders-overflow.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160014 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e018cb5e
    • cfleizach@apple.com's avatar
      AX: aria-hidden=false does not work as expected · 0af5841b
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=98787
      
      Reviewed by Beth Dakin.
      
      These tests were part of this patch added over a year ago, but the patch was rolled out, and when it was rolled back in
      the tests were never added. So I'm adding them back again.
      
      * accessibility/aria-hidden-negates-no-visibility.html: Added.
      * platform/mac/accessibility/aria-hidden-negates-no-visibility-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160011 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0af5841b
    • commit-queue@webkit.org's avatar
      ASSERTION FAILED: !value || (value->isPrimitiveValue()) in... · 854bbedf
      commit-queue@webkit.org authored
      ASSERTION FAILED: !value || (value->isPrimitiveValue()) in WebCore::StyleProperties::getLayeredShorthandValue.
      https://bugs.webkit.org/show_bug.cgi?id=125146
      
      Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-03
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      Do not presume that |yValue| is primitive if |value| is implicit in StylePropertySerializer.
      An implicit y-value can become explicit if specified as a separate longhand.
      At the same time, its new value can be non-primitive.
      
      Backported from Blink:
      http://src.chromium.org/viewvc/blink?view=rev&rev=153678
      
      Test: fast/css/webkit-mask-crash-implicit.html
      
      * css/StyleProperties.cpp:
      (WebCore::StyleProperties::getLayeredShorthandValue):
      
      LayoutTests:
      
      * fast/css/webkit-mask-crash-implicit-expected.txt: Added.
      * fast/css/webkit-mask-crash-implicit.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160010 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      854bbedf
    • rwlbuis@webkit.org's avatar
      [css shapes] layout for new ellipse syntax · 4f519ba0
      rwlbuis@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124621
      
      Source/WebCore:
      
      Reviewed by Dirk Schulze.
      
      Implement support for doing layout with the new ellipse shape syntax,
      including basic animation support.
      
      Test: fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html
      
      * rendering/shapes/Shape.cpp:
      (WebCore::Shape::createShape): Convert new ellipse to a layout shape.
      * rendering/style/BasicShapes.cpp:
      (WebCore::BasicShape::canBlend): Ignore ellipses with values that
          cannot be interpolated.
      (WebCore::BasicShapeEllipse::floatValueForRadiusInBox): Helper function to calculate
          either radiusX or radiusY, shared by clip-path and shape code paths.
      (WebCore::BasicShapeEllipse::path):
      * rendering/style/BasicShapes.h:
      
      LayoutTests:
      
      Add a new test for the new ellipse syntax. Also update existing shape-inside, animation, and clip-path tests to
      test the new ellipse syntax for clipping and shape-inside.
      
      Reviewed by Dirk Schulze.
      
      * animations/resources/animation-test-helpers.js:
      (parseBasicShape):
      * css3/masking/clip-path-animation-expected.txt:
      * css3/masking/clip-path-animation.html:
      * css3/masking/clip-path-ellipse.html:
      * fast/shapes/shape-inside/shape-inside-animation-expected.txt:
      * fast/shapes/shape-inside/shape-inside-animation.html:
      * fast/shapes/shape-inside/shape-inside-ellipse-padding.html:
      * fast/shapes/shape-inside/shape-inside-ellipse.html:
      * fast/shapes/shape-inside/shape-inside-empty-expected.html:
      * fast/shapes/shape-inside/shape-inside-empty.html:
      * fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
      * fast/shapes/shape-outside-floats/shape-outside-animation.html:
      * fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4f519ba0
    • commit-queue@webkit.org's avatar
      Add an MathMLSelectElement class to implement <maction> and <semantics>. · 4b77b7b4
      commit-queue@webkit.org authored
      <https://webkit.org/b/120058>
      
      Patch by Frédéric Wang <fred.wang@free.fr> on 2013-12-03
      Reviewed by Chris Fleizach.
      
      Source/WebCore:
      
      Tests: mathml/presentation/maction-dynamic.html
             mathml/presentation/maction.html
             mathml/presentation/semantics.html
      
      This adds a new MathMLSelectElement class to prepare the implementation
      of the <maction> and <semantics> elements, for which only one "selected"
      child is visible. We now simply display the first child of the
      <semantics> element instead of hiding the annotations and this allows to
      handle the use case of SVG-in-MathML as generated by Instiki when
      bug 124128 is fixed ; Gecko's selection algorithm will be implemented
      later (bug 100626). We now also rely on the @actiontype and @selection
      attributes to select the visible <maction> child ; It remains to deal
      with the user interaction (bug 85734).
      
      * CMakeLists.txt: add the new files.
      * GNUmakefile.list.am: ditto
      * Target.pri: ditto
      * WebCore.vcxproj/WebCore.vcxproj: ditto
      * WebCore.vcxproj/WebCore.vcxproj.filters: ditto
      * WebCore.xcodeproj/project.pbxproj: ditto
      * css/mathml.css: remove the CSS rule for annotation/annotation-xml.
      * mathml/MathMLAllInOne.cpp: add the new cpp file.
      * mathml/MathMLSelectElement.cpp: Added.
      (WebCore::MathMLSelectElement::MathMLSelectElement):
      (WebCore::MathMLSelectElement::create):
      (WebCore::MathMLSelectElement::createRenderer):
      (WebCore::MathMLSelectElement::childShouldCreateRenderer):
      (WebCore::MathMLSelectElement::finishParsingChildren):
      (WebCore::MathMLSelectElement::childrenChanged):
      (WebCore::MathMLSelectElement::attributeChanged):
      (WebCore::MathMLSelectElement::updateSelectedChild): basic implementation for maction, semantics, maction@actiontype and maction@selection.
      * mathml/MathMLSelectElement.h: Added.
      * mathml/mathattrs.in: add actiontype and selection attributes.
      * mathml/mathtags.in: set element classes for maction, semantics, annotation and annotation-xml.
      
      LayoutTests:
      
      New tests for the selection of the visible child in the <maction> and <semantics> elements.
      
      * mathml/presentation/maction-dynamic-expected.html: Added.
      * mathml/presentation/maction-dynamic.html: Added.
      * mathml/presentation/maction-expected.html: Added.
      * mathml/presentation/maction.html: Added.
      * mathml/presentation/semantics-expected.html: Added.
      * mathml/presentation/semantics.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160005 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4b77b7b4
  3. 02 Dec, 2013 14 commits
    • samuel_white@apple.com's avatar
      AX: Add AXUIElementCountForSearchPredicate parameterized attribute. · 8d7423c7
      samuel_white@apple.com authored
          https://bugs.webkit.org/show_bug.cgi?id=124561
      
          Reviewed by Chris Fleizach.
      
          Added test to verify that NSAccessibilityUIElementCountForSearchPredicateParameterizedAttribute
          works as it should and updated existing test that has exposes this new attribute.
      
          * platform/mac/accessibility/bounds-for-range-expected.txt:
          * platform/mac/accessibility/search-predicate-element-count-expected.txt: Added.
          * platform/mac/accessibility/search-predicate-element-count.html: Added.
      
          Added ability to fetch the number of elements that match a specific criteria. This will enable VoiceOver
          to interface with WebKit much more dynamically. We can now get an idea of how many interesting elements
          exist on a page, and then fetch them in chunks as needed.
      
          Test: platform/mac/accessibility/search-predicate-element-count.html
      
          * accessibility/AccessibilityObject.cpp:
          (WebCore::AccessibilityObject::isAccessibilityTextSearchMatch):
          * accessibility/AccessibilityObject.h:
          (WebCore::AccessibilitySearchCriteria::AccessibilitySearchCriteria):
          * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
          (accessibilitySearchCriteriaForSearchPredicateParameterizedAttribute):
          (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
          (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
      
          Added function to verify that NSAccessibilityUIElementCountForSearchPredicateParameterizedAttribute works as it should.
      
          * DumpRenderTree/AccessibilityUIElement.cpp:
          (uiElementCountForSearchPredicateCallback):
          (uiElementForSearchPredicateCallback):
          (AccessibilityUIElement::getJSClass):
          * DumpRenderTree/AccessibilityUIElement.h:
          * DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
          (AccessibilityUIElement::uiElementCountForSearchPredicate):
          * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
          (AccessibilityUIElement::uiElementCountForSearchPredicate):
          * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
          (searchPredicateParameterizedAttributeForSearchCriteria):
          (AccessibilityUIElement::uiElementCountForSearchPredicate):
          (AccessibilityUIElement::uiElementForSearchPredicate):
          * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
          (AccessibilityUIElement::uiElementCountForSearchPredicate):
          * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
          (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
          * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
          * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
          * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
          (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
          * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
          (WTR::searchPredicateParameterizedAttributeForSearchCriteria):
          (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
          (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159980 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8d7423c7
    • bjonesbe@adobe.com's avatar
      [css shapes] Layout support for new circle shape syntax · fa49c82a
      bjonesbe@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124619
      
      Reviewed by Dirk Schulze.
      
      Source/WebCore:
      
      Implement support for doing layout with the new circle shape syntax,
      inclduing basic animation support.
      
      Tests: fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html
             fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html
             fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html
             fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html
             fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html
             fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html
      
      * css/BasicShapeFunctions.cpp:
      (WebCore::floatValueForCenterCoordinate): Used by both the CSS Shapes
          layout code and the clip path code.
      * css/BasicShapeFunctions.h:
      * css/CSSBasicShapes.cpp:
      (WebCore::buildCircleString): Update to use appendLiteral, and remove
          call to reserveCapacity - if we find that it's actually slow when
          doing performance tests, we can hopefully do something smarter and
          less ugly than that.
      * css/CSSParser.cpp:
      (WebCore::CSSParser::parseShapeRadius): Fix a logic error that caused
          the radius keywords not to work properly.
      * rendering/shapes/Shape.cpp:
      (WebCore::Shape::createShape): Convert new circle to a layout shape.
      * rendering/style/BasicShapes.cpp:
      (WebCore::BasicShape::canBlend): Ignore circles with values that
          cannot be interpolated.
      (WebCore::BasicShapeCircle::floatValueForRadiusInBox): Convert circle
          radius keywords to a float value.
      (WebCore::BasicShapeCircle::path):
      (WebCore::BasicShapeCircle::blend):
      * rendering/style/BasicShapes.h:
      (WebCore::BasicShapeCenterCoordinate::canBlend):
      (WebCore::BasicShapeRadius::canBlend):
      
      LayoutTests:
      
      Add a few tests for the new circle syntax. The old tests in
      LayoutTests/csswg will be removed when the old syntax is removed.
      
      Also update existing shape-inside, animation, and clip-path tests to
      test the new syntax.
      
      * animations/resources/animation-test-helpers.js:
      (parseBasicShape):
      * LayoutTests/animations/resources/animation-test-helpers.js:
      * LayoutTests/css3/masking/clip-path-animation-expected.txt:
      * LayoutTests/css3/masking/clip-path-animation.html:
      * LayoutTests/css3/masking/clip-path-circle-filter.html:
      * LayoutTests/css3/masking/clip-path-circle-overflow-hidden.html:
      * LayoutTests/css3/masking/clip-path-circle-overflow.html:
      * LayoutTests/css3/masking/clip-path-circle-relative-overflow.html:
      * LayoutTests/css3/masking/clip-path-circle.html:
      * LayoutTests/css3/masking/clip-path-restore.html:
      * LayoutTests/fast/shapes/parsing/parsing-shape-inside-expected.txt:
      * LayoutTests/fast/shapes/parsing/parsing-shape-outside-expected.txt:
      * LayoutTests/fast/shapes/parsing/parsing-test-utils.js:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-animation-expected.txt:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-animation.html:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-calc-crash-expected.txt:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-calc-crash.html:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-circle-padding.html:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-circle.html:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-dynamic-nested.html:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-empty-expected.html:
      * LayoutTests/fast/shapes/shape-inside/shape-inside-empty.html:
      * fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
      * fast/shapes/shape-outside-floats/shape-outside-animation.html:
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-000-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-001-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-002-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-003-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-004-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-005-expected.html: Added.
      * fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159979 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fa49c82a
    • ap@apple.com's avatar
      WebCrypto HMAC doesn't check key algorithm's hash · 2cf24dad
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125114
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore: 
      
      Test: crypto/subtle/hmac-check-algorithm.html
      
      * crypto/algorithms/CryptoAlgorithmHMAC.cpp:
      (WebCore::CryptoAlgorithmHMAC::keyAlgorithmMatches): Check it.
      
      LayoutTests: 
      
      * crypto/subtle/hmac-check-algorithm-expected.txt: Added.
      * crypto/subtle/hmac-check-algorithm.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2cf24dad
    • zoltan@webkit.org's avatar
      [CSS Shapes] Support inset parsing · 37a9256b
      zoltan@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124903
      
      Reviewed by David Hyatt.
      
      Source/WebCore:
      
      In this patch I added support for inset shape parsing for CSS Shapes. Inset is defined
      by CSS Shapes Level 1 (http://dev.w3.org/csswg/css-shapes-1/#supported-basic-shapes).
      Inset is going to be used by shape-outside (bug #124905), and eventually by shape-inside.
      
      No new tests, I updated existing tests to cover the changes.
      
      * css/BasicShapeFunctions.cpp:
      (WebCore::valueForBasicShape): Add support for inset.
      (WebCore::basicShapeForValue): Add support for inset.
      * css/CSSBasicShapes.cpp:
      (WebCore::buildInsetString): Create inset css string.
      (WebCore::CSSBasicShapeInset::cssText): Convert inset shape to a CSS string.
      (WebCore::CSSBasicShapeInset::equals): Compare two inset rectangles.
      (WebCore::CSSBasicShapeInset::serializeResolvingVariables): Create an inset string, with CSS variables resolved.
      (WebCore::CSSBasicShapeInset::hasVariableReference): Determine if this inset has any CSS Variable references.
      * css/CSSBasicShapes.h: Add inset class.
      (WebCore::CSSBasicShapeInset::create):
      (WebCore::CSSBasicShapeInset::top):
      (WebCore::CSSBasicShapeInset::right):
      (WebCore::CSSBasicShapeInset::bottom):
      (WebCore::CSSBasicShapeInset::left):
      (WebCore::CSSBasicShapeInset::topLeftRadius):
      (WebCore::CSSBasicShapeInset::topRightRadius):
      (WebCore::CSSBasicShapeInset::bottomRightRadius):
      (WebCore::CSSBasicShapeInset::bottomLeftRadius):
      (WebCore::CSSBasicShapeInset::setTop):
      (WebCore::CSSBasicShapeInset::setRight):
      (WebCore::CSSBasicShapeInset::setBottom):
      (WebCore::CSSBasicShapeInset::setLeft):
      (WebCore::CSSBasicShapeInset::setTopLeftRadius):
      (WebCore::CSSBasicShapeInset::setTopRightRadius):
      (WebCore::CSSBasicShapeInset::setBottomRightRadius):
      (WebCore::CSSBasicShapeInset::setBottomLeftRadius):
      (WebCore::CSSBasicShapeInset::CSSBasicShapeInset):
      * css/CSSParser.cpp:
      (WebCore::completeBorderRadii): Move static function before parseInsetBorderRadius.
      (WebCore::CSSParser::parseInsetRoundedCorners): I added this helper function for parsing the rounded corners
      (WebCore::CSSParser::parseBasicShapeInset): Parse inset.
      (WebCore::CSSParser::parseBasicShape): Add call to parse inset.
      * css/CSSParser.h:
      * css/CSSPrimitiveValue.cpp:
      (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Add constructor for LengthSize.
      (WebCore::CSSPrimitiveValue::init): Initialize LengthSize.
      * css/CSSPrimitiveValue.h:
      (WebCore::CSSPrimitiveValue::create): Add support for creating PrimitiveValue from LengthSize.
      * css/CSSValuePool.h:
      (WebCore::CSSValuePool::createValue): Add support for LengthSize.
      * platform/LengthSize.h:
      (WebCore::LengthSize::blend): Add blend for LengthSize.
      * rendering/shapes/ShapeInsideInfo.cpp:
      (WebCore::ShapeInsideInfo::isEnabledFor): Keep inset disabled for shape-inside now.
      * rendering/style/BasicShapes.cpp:
      (WebCore::BasicShapeInset::path): Calculate path for an inset.
      (WebCore::BasicShapeInset::blend): Blend two insets.
      * rendering/style/BasicShapes.h: Add higher level inset.
      (WebCore::BasicShapeInset::create):
      (WebCore::BasicShapeInset::top):
      (WebCore::BasicShapeInset::right):
      (WebCore::BasicShapeInset::bottom):
      (WebCore::BasicShapeInset::left):
      (WebCore::BasicShapeInset::topLeftRadius):
      (WebCore::BasicShapeInset::topRightRadius):
      (WebCore::BasicShapeInset::bottomRightRadius):
      (WebCore::BasicShapeInset::bottomLeftRadius):
      (WebCore::BasicShapeInset::setTop):
      (WebCore::BasicShapeInset::setRight):
      (WebCore::BasicShapeInset::setBottom):
      (WebCore::BasicShapeInset::setLeft):
      (WebCore::BasicShapeInset::setTopLeftRadius):
      (WebCore::BasicShapeInset::setTopRightRadius):
      (WebCore::BasicShapeInset::setBottomRightRadius):
      (WebCore::BasicShapeInset::setBottomLeftRadius):
      (WebCore::BasicShapeInset::BasicShapeInset):
      
      LayoutTests:
      
      * fast/shapes/parsing/parsing-shape-inside-expected.txt:
      * fast/shapes/parsing/parsing-shape-lengths-expected.txt:
      * fast/shapes/parsing/parsing-shape-lengths.html:
      * fast/shapes/parsing/parsing-shape-outside-expected.txt:
      * fast/shapes/parsing/parsing-test-utils.js:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      37a9256b
    • ap@apple.com's avatar
      Support WebCrypto AES-KW · 24ef25bb
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125105
      
      Reviewed by Sam Weinig.
      
      Source/WebCore: 
      
      Tests: crypto/subtle/aes-kw-key-manipulation.html
             crypto/subtle/aes-kw-wrap-unwrap-aes.html
      
      * WebCore.xcodeproj/project.pbxproj: Added new files.
      
      * crypto/CryptoAlgorithmIdentifier.h: (WebCore::CryptoAlgorithmIdentifier): Added AES-KW.
      It's not standardized yet, but there appears to be a consensus that it will be specified.
      
      * bindings/js/JSCryptoAlgorithmDictionary.cpp:
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
      Added AES-KW cases everywhere.
      
      * bindings/js/JSCryptoKeySerializationJWK.cpp:
      (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
      (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
      (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
      Support importing/exporting AES-KW keys in JWK.
      
      * bindings/js/JSSubtleCryptoCustom.cpp:
      (WebCore::JSSubtleCrypto::importKey):
      (WebCore::JSSubtleCrypto::exportKey):
      (WebCore::JSSubtleCrypto::wrapKey):
      (WebCore::JSSubtleCrypto::unwrapKey):
      Added some accidentally forgotten std::moves.
      
      * crypto/algorithms/CryptoAlgorithmAES_KW.cpp: Added.
      * crypto/algorithms/CryptoAlgorithmAES_KW.h: Added.
      * crypto/mac/CryptoAlgorithmAES_KWMac.cpp: Added.
      
      * crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::CryptoKeyAES): Allow AES-KW
      as valid algorithm for AES keys.
      
      * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
      (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register AES-KW.
      
      LayoutTests: 
      
      * crypto/subtle/aes-kw-key-manipulation-expected.txt: Added.
      * crypto/subtle/aes-kw-key-manipulation.html: Added.
      * crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt: Added.
      * crypto/subtle/aes-kw-wrap-unwrap-aes.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159966 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      24ef25bb
    • commit-queue@webkit.org's avatar
      [css shapes] Parse new ellipse shape syntax · 6027c72f
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124620
      
      Patch by Rob Buis <rob.buis@samsung.com> on 2013-12-02
      Reviewed by Dirk Schulze.
      
      Source/WebCore:
      
      Implement parsing of the new ellipse shape syntax. This closely follows the patch
      for the new circle syntax (https://bugs.webkit.org/show_bug.cgi?id=124618), with
      some refactoring of functionality shared by both.
      
      Updated existing parsing tests to cover this.
      
      * css/BasicShapeFunctions.cpp:
      (WebCore::BasicShapeRadiusToCSSValue):
      (WebCore::valueForBasicShape):
      (WebCore::CSSValueToBasicShapeRadius):
      (WebCore::basicShapeForValue):
      * css/CSSBasicShapes.cpp:
      (WebCore::buildEllipseString):
      (WebCore::CSSBasicShapeEllipse::cssText):
      (WebCore::CSSBasicShapeEllipse::equals):
      (WebCore::buildDeprecatedEllipseString):
      (WebCore::CSSDeprecatedBasicShapeEllipse::cssText):
      (WebCore::CSSDeprecatedBasicShapeEllipse::equals):
      * css/CSSBasicShapes.h:
      (WebCore::CSSDeprecatedBasicShapeEllipse::create):
      (WebCore::CSSDeprecatedBasicShapeEllipse::centerX):
      (WebCore::CSSDeprecatedBasicShapeEllipse::centerY):
      (WebCore::CSSDeprecatedBasicShapeEllipse::radiusX):
      (WebCore::CSSDeprecatedBasicShapeEllipse::radiusY):
      (WebCore::CSSDeprecatedBasicShapeEllipse::setCenterX):
      (WebCore::CSSDeprecatedBasicShapeEllipse::setCenterY):
      (WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusX):
      (WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusY):
      (WebCore::CSSDeprecatedBasicShapeEllipse::CSSDeprecatedBasicShapeEllipse):
      * css/CSSParser.cpp:
      (WebCore::CSSParser::parseBasicShapeEllipse):
      (WebCore::CSSParser::parseDeprecatedBasicShapeEllipse):
      (WebCore::CSSParser::parseBasicShape):
      * css/CSSParser.h:
      * rendering/shapes/Shape.cpp:
      (WebCore::Shape::createShape):
      * rendering/style/BasicShapes.cpp:
      (WebCore::DeprecatedBasicShapeEllipse::path):
      (WebCore::DeprecatedBasicShapeEllipse::blend):
      (WebCore::BasicShapeEllipse::path):
      (WebCore::BasicShapeEllipse::blend):
      * rendering/style/BasicShapes.h:
      (WebCore::BasicShapeEllipse::centerX):
      (WebCore::BasicShapeEllipse::centerY):
      (WebCore::BasicShapeEllipse::radiusX):
      (WebCore::BasicShapeEllipse::radiusY):
      (WebCore::BasicShapeEllipse::setCenterX):
      (WebCore::BasicShapeEllipse::setCenterY):
      (WebCore::BasicShapeEllipse::setRadiusX):
      (WebCore::BasicShapeEllipse::setRadiusY):
      (WebCore::BasicShapeEllipse::BasicShapeEllipse):
      (WebCore::DeprecatedBasicShapeEllipse::create):
      (WebCore::DeprecatedBasicShapeEllipse::DeprecatedBasicShapeEllipse):
      
      LayoutTests:
      
      Test that the new ellipse syntax is properly parsed.
      
      * fast/shapes/parsing/parsing-shape-inside-expected.txt:
      * fast/shapes/parsing/parsing-shape-outside-expected.txt:
      * fast/shapes/parsing/parsing-test-utils.js:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6027c72f
    • commit-queue@webkit.org's avatar
      Use GenericEventQueue in TrackListBase and reduce code duplication with scheduleTrackEvent() · 2479cb17
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124811
      
      Patch by Brendan Long <b.long@cablelabs.com> on 2013-12-02
      Reviewed by Eric Carlson.
      
      Source/WebCore:
      
      No new tests because this is just refactoring.
      
      * html/track/TrackListBase.cpp:
      (TrackListBase::TrackListBase): Replace event code with a GenericEventQueue.
      (TrackListBase::scheduleTrackEvent): Factor out duplicate code in schedule{Add,Remove}TrackEvent functions.
      (TrackListBase::scheduleAddTrackEvent): Same.
      (TrackListBase::scheduleRemoveTrackEvent): Same.
      (TrackListBase::scheduleChangeEvent): Use GenericEventQueue.
      * html/track/TrackListBase.h: Replace event code with GenericEventQueue.
      
      LayoutTests:
      
      * platform/mac/TestExpectations: Unskip onremovetrack test which was fixed a long time ago.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159950 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2479cb17
    • ap@apple.com's avatar
      Add support for WebCrypto RSA-OAEP · a3d6e70d
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125084
      
      Reviewed by Sam Weinig.
      
      Source/WebCore: 
      
      Tests: crypto/subtle/rsa-oaep-key-manipulation.html
             crypto/subtle/rsa-oaep-plaintext-length.html
             crypto/subtle/rsa-oaep-wrap-unwrap-aes.html
      
      * WebCore.xcodeproj/project.pbxproj: Added new files.
      
      * bindings/js/JSCryptoAlgorithmDictionary.cpp:
      (WebCore::createRsaOaepParams):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
      Added RSA-OAEP parameters.
      
      * bindings/js/JSCryptoKeySerializationJWK.cpp:
      (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
      (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
      (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
      Support RSA-OAEP in JWK. It is more limited than general WebCrypto, as JWK only
      allows SHA-1 as hash.
      
      * crypto/CommonCryptoUtilities.cpp: Added. (WebCore::getCommonCryptoDigestAlgorithm):
      * crypto/CommonCryptoUtilities.h: Added.
      Extracted some shared code and forward declarations for CommonCrypto.
      
      * crypto/CryptoAlgorithmParameters.h: (WebCore::CryptoAlgorithmParameters::Class):
      * crypto/parameters/CryptoAlgorithmRsaOaepParams.h: Added.
      Added RsaOaepParams.
      
      * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp: Added.
      * crypto/algorithms/CryptoAlgorithmRSA_OAEP.h: Added.
      * crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp: Added.
      
      * crypto/mac/CryptoAlgorithmHMACMac.cpp:
      (WebCore::getCommonCryptoHMACAlgorithm):
      (WebCore::CryptoAlgorithmHMAC::platformSign):
      (WebCore::CryptoAlgorithmHMAC::platformVerify):
      * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
      * crypto/mac/CryptoKeyMac.cpp:
      * crypto/mac/CryptoKeyRSAMac.cpp:
      Use CommonCryptoUtilities.
      
      * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
      (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register RSA-OAEP.
      
      LayoutTests: 
      
      * crypto/subtle/rsa-oaep-key-manipulation-expected.txt: Added.
      * crypto/subtle/rsa-oaep-key-manipulation.html: Added.
      * crypto/subtle/rsa-oaep-plaintext-length-expected.txt: Added.
      * crypto/subtle/rsa-oaep-plaintext-length.html: Added.
      * crypto/subtle/rsa-oaep-wrap-unwrap-aes-expected.txt: Added.
      * crypto/subtle/rsa-oaep-wrap-unwrap-aes.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159944 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a3d6e70d
    • fpizlo@apple.com's avatar
      Stores to local captured variables should be intercepted · 0309686b
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124883
      
      Source/JavaScriptCore: 
      
      Reviewed by Mark Hahnenberg.
              
      Previously, in bytecode, you could assign to a captured variable just as you would
      assign to any other kind of variable. This complicates closure variable constant
      inference because we don't have any place where we can intercept stores to captured
      variables in the LLInt.
              
      This patch institutes a policy that only certain instructions can store to captured
      variables. If you interpret those instructions and you are required to notifyWrite()
      then you need to check if the relevant variable is captured. Those instructions are
      tracked in CodeBlock.cpp's VerifyCapturedDef. The main one is simply op_captured_mov.
      In the future, we'll probably modify those instructions to have a pointer directly to
      the VariableWatchpointSet; but for now we just introduce the captured instructions as
      placeholders.
              
      In order to validate that the placeholders are inserted correctly, this patch improves
      the CodeBlock validation to be able to inspect every def in the bytecode. To do that,
      this patch refactors the liveness analysis' use/def calculator to be reusable; it now
      takes a functor for each use or def.
              
      In the process of refactoring the liveness analysis, I noticed that op_enter was
      claiming to def all callee registers. That's wrong; it only defs the non-temporary
      variables. Making that change revealed preexisting bugs in the liveness analysis, since
      now the validator would pick up cases where the bytecode claimed to use a temporary and
      the def calculator never noticed the definition (or the converse - where the bytecode
      was actually not using a temporary but the liveness analysis thought that it was a
      use). This patch fixes a few of those bugs.
      
      * GNUmakefile.list.am:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * bytecode/BytecodeLivenessAnalysis.cpp:
      (JSC::stepOverInstruction):
      * bytecode/BytecodeUseDef.h: Added.
      (JSC::computeUsesForBytecodeOffset):
      (JSC::computeDefsForBytecodeOffset):
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::dumpBytecode):
      (JSC::CodeBlock::isCaptured):
      (JSC::CodeBlock::validate):
      * bytecode/CodeBlock.h:
      * bytecode/Opcode.h:
      (JSC::padOpcodeName):
      * bytecompiler/BytecodeGenerator.cpp:
      (JSC::BytecodeGenerator::BytecodeGenerator):
      (JSC::BytecodeGenerator::resolveCallee):
      (JSC::BytecodeGenerator::emitMove):
      (JSC::BytecodeGenerator::isCaptured):
      (JSC::BytecodeGenerator::local):
      (JSC::BytecodeGenerator::constLocal):
      (JSC::BytecodeGenerator::emitNewFunction):
      (JSC::BytecodeGenerator::emitLazyNewFunction):
      (JSC::BytecodeGenerator::emitNewFunctionInternal):
      * bytecompiler/BytecodeGenerator.h:
      (JSC::Local::Local):
      (JSC::Local::isCaptured):
      (JSC::Local::captureMode):
      (JSC::BytecodeGenerator::captureMode):
      (JSC::BytecodeGenerator::emitNode):
      (JSC::BytecodeGenerator::pushOptimisedForIn):
      * bytecompiler/NodesCodegen.cpp:
      (JSC::PostfixNode::emitResolve):
      (JSC::PrefixNode::emitResolve):
      (JSC::ReadModifyResolveNode::emitBytecode):
      (JSC::AssignResolveNode::emitBytecode):
      (JSC::ConstDeclNode::emitCodeSingle):
      (JSC::ForInNode::emitBytecode):
      * dfg/DFGByteCodeParser.cpp:
      (JSC::DFG::ByteCodeParser::parseBlock):
      * dfg/DFGCapabilities.cpp:
      (JSC::DFG::capabilityLevel):
      * jit/JIT.cpp:
      (JSC::JIT::privateCompileMainPass):
      * llint/LowLevelInterpreter32_64.asm:
      * llint/LowLevelInterpreter64.asm:
      * runtime/SymbolTable.h:
      (JSC::SymbolTable::isCaptured):
      
      LayoutTests: 
      
      Reviewed by Mark Hahnenberg.
      
      * js/regress/captured-assignments-expected.txt: Added.
      * js/regress/captured-assignments.html: Added.
      * js/regress/script-tests/captured-assignments.js: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159943 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0309686b
    • lauro.neto@openbossa.org's avatar
      [MediaStream] Update layout tests to newer spec. · 1aa1edc8
      lauro.neto@openbossa.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124985
      
      Reviewed by Eric Carlson.
      
      * TestExpectations:
      * fast/mediastream/MediaStream-onended-expected.txt: Removed.
      * fast/mediastream/MediaStreamTrack-onended-expected.txt: Added.
      * fast/mediastream/MediaStreamTrack-onended.html: Renamed from LayoutTests/fast/mediastream/MediaStream-onended.html.
      * fast/mediastream/RTCPeerConnection-ice-expected.txt:
      * fast/mediastream/RTCPeerConnection-state-expected.txt:
      * fast/mediastream/RTCSessionDescription-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159938 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1aa1edc8
    • cfleizach@apple.com's avatar
      AX: Crash at WebCore::commonTreeScope · 0fb724ec
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125042
      
      Reviewed by Mario Sanchez Prada.
      
      Source/WebCore:
      
      When an AX text marker that references a node in a detached document is used to create a text marker range, a crash occurs
      because the method to determine commonTreeScopes does not account for when there are no common tree scopes.
      
      Test: platform/mac/accessibility/ordered-textmarker-crash.html
      
      * accessibility/AccessibilityObject.cpp:
      (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions):
      * dom/TreeScope.cpp:
      (WebCore::commonTreeScope):
      
      LayoutTests:
      
      * platform/mac/accessibility/ordered-textmarker-crash-expected.txt: Added.
      * platform/mac/accessibility/ordered-textmarker-crash.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159932 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0fb724ec
    • zandobersek@gmail.com's avatar
      Unreviewed GTK gardening. · 5560f092
      zandobersek@gmail.com authored
      * platform/gtk/TestExpectations: Adding failure expectations for the
      fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html reftest.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159930 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5560f092
    • gyuyoung.kim@samsung.com's avatar
      Unreviewed, EFL rebaseline since r159915. · a49d17aa
      gyuyoung.kim@samsung.com authored
      Error messages are changed. So, test results need to be updated.
      
      * platform/efl/fast/forms/validation-message-appearance-expected.txt:
      * platform/efl/fast/forms/validationMessage-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159929 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a49d17aa
    • commit-queue@webkit.org's avatar
      [ATK] Support active state for listbox elements. · c4299267
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125009
      
      Patch by Andrzej Badowski <a.badowski@samsung.com> on 2013-12-02
      Reviewed by Chris Fleizach.
      
      Source/WebCore:
      
      Added support for ATK_STATE_ACTIVE for listbox elements.
      
      * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
      (setAtkStateSetFromCoreObject):
      
      Tools:
      
      Supplement WebKitTestRunner and DumpRenderTree to support isSelectedOptionActive.
      
      * DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
      (AccessibilityUIElement::isSelectedOptionActive):
      * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
      (WTR::AccessibilityUIElement::isSelectedOptionActive):
      * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
      * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
      * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
      (WTR::AccessibilityUIElement::isSelectedOptionActive):
      * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
      (WTR::AccessibilityUIElement::isSelectedOptionActive):
      
      LayoutTests:
      
      Establish expectations for the test (all PASS).
      
      * accessibility/multiselect-list-reports-active-option-expected.txt: Added.
      * platform/efl-wk1/TestExpectations:
      * platform/efl-wk2/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159925 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c4299267
  4. 29 Nov, 2013 2 commits
  5. 28 Nov, 2013 4 commits