- 16 Aug, 2013 9 commits
-
-
jer.noble@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=105988 Unreviewed gardening. Mark tests as flakey (crashing) in WK1 expectations as well as WK2. * platform/mac-wk2/TestExpectations: * platform/mac/TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154189 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
allan.jensen@digia.com authored
https://bugs.webkit.org/show_bug.cgi?id=119838 Reviewed by Jocelyn Turcotte. Source/WebCore: Mark fonts with both kerning and letter-spacing as unsupported by the simple font-path. Test: fast/text/letter-spacing-kerned.html * platform/graphics/WidthIterator.h: (WebCore::WidthIterator::supportsTypesettingFeatures): LayoutTests: Test that kerning does not break letter spacing. * fast/text/letter-spacing-kerned-expected.html: Added. * fast/text/letter-spacing-kerned.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154186 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
bfulgham@apple.com authored
* platform/win/TestExpectations: Reactivate fast/text/split-text-crash.xhtml git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154185 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
bfulgham@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=119818 Reviewed by Darin Adler. Covered by existing: compositing/tiling/empty-to-tiled.html * platform/graphics/ca/win/PlatformCALayerWin.cpp: (PlatformCALayer::~PlatformCALayer): Remove deleted layer from its parent layer LayoutTests: [Windows] Enable previously-failing compositing/tiling/empty-to-tiled.html https://bugs.webkit.org/show_bug.cgi?id=119818 Reviewed by Darin Adler. * platform/win/TestExpectations: Re-enable empty-to-tiled.html git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154180 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
zarvai@inf.u-szeged.hu authored
Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2013-08-16 * platform/qt/fast/js/constructor-length-expected.txt: * platform/qt/fast/js/global-constructors-attributes-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154179 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
commit-queue@webkit.org authored
Unreviewed EFL gardening. unskip LayoutTests/fast/forms/datalist/input-list.html test. Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-08-16 * platform/efl/TestExpectations: * platform/efl/fast/forms/datalist/input-list-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154177 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
commit-queue@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=119614 Source/WebCore: Added the -webkit-mask-source-type property, which can have a value of auto, alpha or luminance. The default value is auto. This patch contains only the parsing of the property, not the actual implementation of the types of masks. The parsing of mask-source-type in the -webkit-mask property will be handled in a separate patch. Patch by Andrei Parvu <parvu@adobe.com> on 2013-08-16 Reviewed by Dirk Schulze. Test: fast/masking/parsing-mask-source-type.html * css/CSSComputedStyleDeclaration.cpp: Added case for CSSPropertyWebkitMaskType. (WebCore::ComputedStyleExtractor::propertyValue): * css/CSSParser.cpp: Parsed the values for CSSPropertyWebkitMaskType. (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFillProperty): * css/CSSProperty.cpp: (WebCore::CSSProperty::isInheritedProperty): * css/CSSPropertyNames.in: Added -webkit-mask-type property. * css/CSSToStyleMap.cpp: map the provided mask type to the FillLayer class. (WebCore::CSSToStyleMap::mapFillMaskType): * css/CSSToStyleMap.h: * css/DeprecatedStyleBuilder.cpp: (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): * css/StyleResolver.cpp: (WebCore::StyleResolver::applyProperty): * rendering/style/FillLayer.cpp: Added the m_maskType property to the FillLayer class. (WebCore::FillLayer::FillLayer): (WebCore::FillLayer::operator=): (WebCore::FillLayer::operator==): * rendering/style/FillLayer.h: Added methods for working with m_maskType. (WebCore::FillLayer::maskType): (WebCore::FillLayer::isMaskTypeSet): (WebCore::FillLayer::setMaskType): (WebCore::FillLayer::clearMaskType): (WebCore::FillLayer::initialMaskType): * rendering/style/RenderStyleConstants.h: Added the EMaskSourceType enum. LayoutTests: Added tests for the parsing of the -webkit-mask-source-type property Patch by Andrei Parvu <parvu@adobe.com> on 2013-08-16 Reviewed by Dirk Schulze. * fast/masking/parsing-mask-expected.txt: * fast/masking/parsing-mask-source-type-expected.txt: Added. * fast/masking/parsing-mask-source-type.html: Added. * fast/masking/parsing-mask.html: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154174 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
simon.pena@samsung.com authored
* platform/gtk-wk1/TestExpectations: x-frame-options-deny-meta-tag-in-body.html fails in Release and Debug. * platform/gtk/TestExpectations: CSS Image filter is not enabled in GTK bots. Also remove entry for deleted test. * platform/gtk/fast/forms/search/search-size-with-decorations-expected.png: Added. * platform/gtk/fast/forms/search/search-size-with-decorations-expected.txt: Added. * platform/gtk/fast/js/constructor-length-expected.txt: Rebaselined after r154127. * platform/gtk/fast/js/global-constructors-attributes-dedicated-worker-expected.txt: ditto. * platform/gtk/fast/js/global-constructors-attributes-expected.txt: ditto. * platform/gtk/fast/js/global-constructors-attributes-shared-worker-expected.txt: ditto. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154171 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
allan.jensen@digia.com authored
Unreviewed gardening. * platform/qt/TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154169 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 15 Aug, 2013 23 commits
-
-
bfulgham@apple.com authored
* platform/win/editing/selection/caret-ltr-right-expected.txt: * platform/win/editing/selection/caret-rtl-2-left-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154163 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hmuller@adobe.com authored
https://bugs.webkit.org/show_bug.cgi?id=119809 Source/WebCore: Added minimal support for shape-outside image values. A new method that computes the excluded intervals for a horizontal line segment was added to the RasterIntervals class. The stub RasterShape getExcludedIntervals() method has been replaced by one that uses the new method. Image shapes are represented by a RasterIntervals object, which just encapsulates a Region object. The new getExcludedIntervals() method computes the excluded intervals for a horizontal line segment between y1 and y2. To find the excluded intervals we vertically expand each of the image shape Region's rectangles that fall within the line segment, so that they begin at y1 and have height = y2 - y1. The union of the expanded rectangles produces a new Region whose horizontal projection defines the excluded intervals. Reviewed by Alexandru Chiculita. Tests: fast/shapes/shape-outside-floats/shape-outside-floats-image-001.html fast/shapes/shape-outside-floats/shape-outside-floats-image-002.html * rendering/shapes/RasterShape.cpp: (WebCore::RasterShapeIntervals::getExcludedIntervals): See above. (WebCore::RasterShape::getExcludedIntervals): Stub method has been replaced by one that uses RasterShapeIntervals::getExcludedIntervals(). * rendering/shapes/RasterShape.h: * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::isEnabledFor): Enable Image valued shapes. LayoutTests: Two tests to verify that the initial implementation of shape valued images is working for shape-outside. Reviewed by Alexandru Chiculita. * fast/shapes/shape-outside-floats/shape-outside-floats-image-001-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-image-001.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-image-002-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-image-002.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154152 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
rniwa@webkit.org authored
* TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154150 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
https://webkit.org/b/119873rniwa@webkit.org authored
<https://webkit.org/b/119873> REGRESSION(r154057): platform/mac/accessibility/role-subrole-roledescription.html fails Add a test expectation. * TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154149 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
commit-queue@webkit.org authored
<https://webkit.org/b/119821> Updating our layout test now that accessibleElementById is able to fetch the math element correctly. Patch by Sam White <samuel_white@apple.com> on 2013-08-15 Reviewed by Chris Fleizach. * platform/mac/accessibility/role-subrole-roledescription-expected.txt: * platform/mac/accessibility/role-subrole-roledescription.html: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154148 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
https://webkit.org/b/119871simon.fraser@apple.com authored
Source/WebCore: Reviewed by Tim Horton. When starting a show on Hulu, there's a layer that gets marked as opaque because it has a child RenderLayer whose background fills the compositing layer. That child RenderLayer was recently position:fixed but outside the viewport, so its viewportConstrainedNotCompositedReason was set to a non-zero value. However, we failed to clear the viewportConstrainedNotCompositedReason when the layer became non-fixed. This caused painting the opaque layer to bail in RenderLayer::paintLayer(), leaving garbage. Test: compositing/contents-opaque/fixed-to-nonfixed.html * rendering/RenderLayer.cpp: (WebCore::RenderLayer::paintLayer): Add an assertion to catch this error in future. * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::updateBacking): Make sure we clear the ViewportConstrainedNotCompositedReason if the layer is no longer fixed. LayoutTests: Reviewed by Tim Horton. Test that would hit the newly added assertion in case of failure. Was unable to create a ref test that worked reliably. * compositing/contents-opaque/fixed-to-nonfixed.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154147 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
fpizlo@apple.com authored
Rubber stamped by Mark Hahnenberg. This test times out for me, every time. It tests code that has since been rewritten and has had new tests added to cover it. It's not clear that this test would be useful anymore even if we made it not timeout. * fast/js/array-sort-modifying-tostring-expected.txt: Removed. * fast/js/array-sort-modifying-tostring.html: Removed. * fast/js/script-tests/array-sort-modifying-tostring.js: Removed. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154135 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
krit@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=119845 Reviewed by Dean Jackson. Source/WebCore: The Filter Effects specification defines a new CSS Image function called filter(). This function takes another CSS Image as well as a filter function list as input and can be used by various CSS properties. Example: background-image: -webkit-filter(url(image.png), brightness(0.5)) This patch implements the current definition of filter() based on other image generation classes like CSSCrossfadeValue. A new class called CSSFilterImageValue was added together with an image observer. The function is implemented prefixed and behind the compiler flag CSS_FILTERS. Tests: fast/filter-image/filter-image.html fast/filter-image/parse-filter-image.html * CMakeLists.txt: Added new files to build systems. * GNUmakefile.list.am: * Target.pri: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.xcodeproj/project.pbxproj: * css/CSSAllInOne.cpp: * css/CSSCrossfadeValue.cpp: Share code together with CSSFilterImageValue in CSSImageGeneratorValue.cpp. (WebCore::CSSCrossfadeValue::isPending): (WebCore::CSSCrossfadeValue::loadSubimages): * css/CSSFilterImageValue.cpp: Added. (WebCore::CSSFilterImageValue::~CSSFilterImageValue): (WebCore::CSSFilterImageValue::customCssText): (WebCore::CSSFilterImageValue::fixedSize): (WebCore::CSSFilterImageValue::isPending): (WebCore::CSSFilterImageValue::knownToBeOpaque): (WebCore::CSSFilterImageValue::loadSubimages): (WebCore::CSSFilterImageValue::image): (WebCore::CSSFilterImageValue::filterImageChanged): (WebCore::CSSFilterImageValue::createFilterOperations): (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::imageChanged): (WebCore::CSSFilterImageValue::hasFailedOrCanceledSubresources): (WebCore::CSSFilterImageValue::equals): * css/CSSFilterImageValue.h: Added. (WebCore::CSSFilterImageValue::create): (WebCore::CSSFilterImageValue::isFixedSize): (WebCore::CSSFilterImageValue::CSSFilterImageValue): (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::FilterSubimageObserverProxy): (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::~FilterSubimageObserverProxy): (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::setReady): * css/CSSImageGeneratorValue.cpp: Shared code between CSSCrossfadeValue and CSSFilterImageValue. (WebCore::CSSImageGeneratorValue::image): (WebCore::CSSImageGeneratorValue::isFixedSize): (WebCore::CSSImageGeneratorValue::fixedSize): (WebCore::CSSImageGeneratorValue::isPending): (WebCore::CSSImageGeneratorValue::knownToBeOpaque): (WebCore::CSSImageGeneratorValue::loadSubimages): (WebCore::CSSImageGeneratorValue::subimageIsPending): (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue): * css/CSSImageGeneratorValue.h: * css/CSSParser.cpp: Added parsing information for new image function. (WebCore::CSSParser::parseValue): (WebCore::CSSParser::isGeneratedImageValue): (WebCore::CSSParser::parseGeneratedImage): (WebCore::CSSParser::parseFilterImage): (WebCore::CSSParser::parseFilter): * css/CSSParser.h: * css/CSSValue.cpp: (WebCore::CSSValue::hasFailedOrCanceledSubresources): (WebCore::CSSValue::equals): (WebCore::CSSValue::cssText): (WebCore::CSSValue::destroy): * css/CSSValue.h: (WebCore::CSSValue::isFilterImageValue): * css/StyleResolver.cpp: (WebCore::StyleResolver::applyProperty): (WebCore::StyleResolver::generatedOrPendingFromValue): (WebCore::StyleResolver::createFilterOperations): * css/StyleResolver.h: StyleResolver needs to be passed to CSSFilterImageValue in order to resolve blur() and drop-shadow() function. Both needs to be resolved together with all other properties and can't be done earlier or later. * rendering/FilterEffectRenderer.cpp: (WebCore::FilterEffectRenderer::build): Pass an argument whether the intermediate filter results should be clipped or not. The filter property for instance doesn't clip but scales the intermediate image sizes. * rendering/FilterEffectRenderer.h: LayoutTests: Test parsing, style resolving, computed style and behavior of new CSS image function filter(). * fast/filter-image/filter-image-expected.html: Added. * fast/filter-image/filter-image.html: Added. * fast/filter-image/parse-filter-image-expected.txt: Added. * fast/filter-image/parse-filter-image.html: Added. * fast/filter-image/resources/image.svg: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154133 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
fpizlo@apple.com authored
* runtime/JSDataViewPrototype.cpp: (JSC::getData): (JSC::setData): LayoutTests: Unreviewed, rebase the test now that we throw different exceptions. * fast/canvas/webgl/data-view-test-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154132 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
fpizlo@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=119064 .: Reviewed by Oliver Hunt. Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>. * Source/autotools/symbols.filter: Source/JavaScriptCore: Reviewed by Oliver Hunt. Typed arrays were previously deficient in several major ways: - They were defined separately in WebCore and in the jsc shell. The two implementations were different, and the jsc shell one was basically wrong. The WebCore one was quite awful, also. - Typed arrays were not visible to the JIT except through some weird hooks. For example, the JIT could not ask "what is the Structure that this typed array would have if I just allocated it from this global object". Also, it was difficult to wire any of the typed array intrinsics, because most of the functionality wasn't visible anywhere in JSC. - Typed array allocation was brain-dead. Allocating a typed array involved two JS objects, two GC weak handles, and three malloc allocations. - Neutering. It involved keeping tabs on all native views but not the view wrappers, even though the native views can autoneuter just by asking the buffer if it was neutered anytime you touch them; while the JS view wrappers are the ones that you really want to reach out to. - Common case-ing. Most typed arrays have one buffer and one view, and usually nobody touches the buffer. Yet we created all of that stuff anyway, using data structures optimized for the case where you had a lot of views. - Semantic goofs. Typed arrays should, in the future, behave like ES features rather than DOM features, for example when it comes to exceptions. Firefox already does this and I agree with them. This patch cleanses our codebase of these sins: - Typed arrays are almost entirely defined in JSC. Only the lifecycle management of native references to buffers is left to WebCore. - Allocating a typed array requires either two GC allocations (a cell and a copied storage vector) or one GC allocation, a malloc allocation, and a weak handle (a cell and a malloc'd storage vector, plus a finalizer for the latter). The latter is only used for oversize arrays. Remember that before it was 7 allocations no matter what. - Typed arrays require just 4 words of overhead: Structure*, Butterfly*, mode/length, void* vector. Before it was a lot more than that - remember, there were five additional objects that did absolutely nothing for anybody. - Native views aren't tracked by the buffer, or by the wrappers. They are transient. In the future we'll probably switch to not even having them be malloc'd. - Native array buffers have an efficient way of tracking all of their JS view wrappers, both for neutering, and for lifecycle management. The GC special-cases native array buffers. This saves a bunch of grief; for example it means that a JS view wrapper can refer to its buffer via the butterfly, which would be dead by the time we went to finalize. - Typed array semantics now match Firefox, which also happens to be where the standards are going. The discussion on webkit-dev seemed to confirm that Chrome is also heading in this direction. This includes making Uint8ClampedArray not a subtype of Uint8Array, and getting rid of ArrayBufferView as a JS-visible construct. This is up to a 10x speed-up on programs that allocate a lot of typed arrays. It's a 1% speed-up on Octane. It also opens up a bunch of possibilities for further typed array optimizations in the JSC JITs, including inlining typed array allocation, inlining more of the accessors, reducing the cost of type checks, etc. An additional property of this patch is that typed arrays are mostly implemented using templates. This deduplicates a bunch of code, but does mean that we need some hacks for exporting s_info's of template classes. See JSGenericTypedArrayView.h and JSTypedArrays.cpp. Those hacks are fairly low-impact compared to code duplication. Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>. * CMakeLists.txt: * DerivedSources.make: * GNUmakefile.list.am: * JSCTypedArrayStubs.h: Removed. * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: * JavaScriptCore.xcodeproj/project.pbxproj: * Target.pri: * bytecode/ByValInfo.h: (JSC::hasOptimizableIndexingForClassInfo): (JSC::jitArrayModeForClassInfo): (JSC::typedArrayTypeForJITArrayMode): * bytecode/SpeculatedType.cpp: (JSC::speculationFromClassInfo): * dfg/DFGArrayMode.cpp: (JSC::DFG::toTypedArrayType): * dfg/DFGArrayMode.h: (JSC::DFG::ArrayMode::typedArrayType): * dfg/DFGSpeculativeJIT.cpp: (JSC::DFG::SpeculativeJIT::checkArray): (JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray): (JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray): (JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray): (JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray): (JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage): (JSC::DFG::SpeculativeJIT::compileGetArrayLength): * dfg/DFGSpeculativeJIT.h: * dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::compile): * dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::compile): * heap/CopyToken.h: * heap/DeferGC.h: (JSC::DeferGCForAWhile::DeferGCForAWhile): (JSC::DeferGCForAWhile::~DeferGCForAWhile): * heap/GCIncomingRefCounted.h: Added. (JSC::GCIncomingRefCounted::GCIncomingRefCounted): (JSC::GCIncomingRefCounted::~GCIncomingRefCounted): (JSC::GCIncomingRefCounted::numberOfIncomingReferences): (JSC::GCIncomingRefCounted::incomingReferenceAt): (JSC::GCIncomingRefCounted::singletonFlag): (JSC::GCIncomingRefCounted::hasVectorOfCells): (JSC::GCIncomingRefCounted::hasAnyIncoming): (JSC::GCIncomingRefCounted::hasSingleton): (JSC::GCIncomingRefCounted::singleton): (JSC::GCIncomingRefCounted::vectorOfCells): * heap/GCIncomingRefCountedInlines.h: Added. (JSC::::addIncomingReference): (JSC::::filterIncomingReferences): * heap/GCIncomingRefCountedSet.h: Added. (JSC::GCIncomingRefCountedSet::size): * heap/GCIncomingRefCountedSetInlines.h: Added. (JSC::::GCIncomingRefCountedSet): (JSC::::~GCIncomingRefCountedSet): (JSC::::addReference): (JSC::::sweep): (JSC::::removeAll): (JSC::::removeDead): * heap/Heap.cpp: (JSC::Heap::addReference): (JSC::Heap::extraSize): (JSC::Heap::size): (JSC::Heap::capacity): (JSC::Heap::collect): (JSC::Heap::decrementDeferralDepth): (JSC::Heap::decrementDeferralDepthAndGCIfNeeded): * heap/Heap.h: * interpreter/CallFrame.h: (JSC::ExecState::dataViewTable): * jit/JIT.h: * jit/JITPropertyAccess.cpp: (JSC::JIT::privateCompileGetByVal): (JSC::JIT::privateCompilePutByVal): (JSC::JIT::emitIntTypedArrayGetByVal): (JSC::JIT::emitFloatTypedArrayGetByVal): (JSC::JIT::emitIntTypedArrayPutByVal): (JSC::JIT::emitFloatTypedArrayPutByVal): * jsc.cpp: (GlobalObject::finishCreation): * runtime/ArrayBuffer.cpp: (JSC::ArrayBuffer::transfer): * runtime/ArrayBuffer.h: (JSC::ArrayBuffer::createAdopted): (JSC::ArrayBuffer::ArrayBuffer): (JSC::ArrayBuffer::gcSizeEstimateInBytes): (JSC::ArrayBuffer::pin): (JSC::ArrayBuffer::unpin): (JSC::ArrayBufferContents::tryAllocate): * runtime/ArrayBufferView.cpp: (JSC::ArrayBufferView::ArrayBufferView): (JSC::ArrayBufferView::~ArrayBufferView): (JSC::ArrayBufferView::setNeuterable): * runtime/ArrayBufferView.h: (JSC::ArrayBufferView::isNeutered): (JSC::ArrayBufferView::buffer): (JSC::ArrayBufferView::baseAddress): (JSC::ArrayBufferView::byteOffset): (JSC::ArrayBufferView::verifySubRange): (JSC::ArrayBufferView::clampOffsetAndNumElements): (JSC::ArrayBufferView::calculateOffsetAndLength): * runtime/ClassInfo.h: * runtime/CommonIdentifiers.h: * runtime/DataView.cpp: Added. (JSC::DataView::DataView): (JSC::DataView::create): (JSC::DataView::wrap): * runtime/DataView.h: Added. (JSC::DataView::byteLength): (JSC::DataView::getType): (JSC::DataView::get): (JSC::DataView::set): * runtime/Float32Array.h: * runtime/Float64Array.h: * runtime/GenericTypedArrayView.h: Added. (JSC::GenericTypedArrayView::data): (JSC::GenericTypedArrayView::set): (JSC::GenericTypedArrayView::setRange): (JSC::GenericTypedArrayView::zeroRange): (JSC::GenericTypedArrayView::zeroFill): (JSC::GenericTypedArrayView::length): (JSC::GenericTypedArrayView::byteLength): (JSC::GenericTypedArrayView::item): (JSC::GenericTypedArrayView::checkInboundData): (JSC::GenericTypedArrayView::getType): * runtime/GenericTypedArrayViewInlines.h: Added. (JSC::::GenericTypedArrayView): (JSC::::create): (JSC::::createUninitialized): (JSC::::subarray): (JSC::::wrap): * runtime/IndexingHeader.h: (JSC::IndexingHeader::arrayBuffer): (JSC::IndexingHeader::setArrayBuffer): * runtime/Int16Array.h: * runtime/Int32Array.h: * runtime/Int8Array.h: * runtime/JSArrayBuffer.cpp: Added. (JSC::JSArrayBuffer::JSArrayBuffer): (JSC::JSArrayBuffer::finishCreation): (JSC::JSArrayBuffer::create): (JSC::JSArrayBuffer::createStructure): (JSC::JSArrayBuffer::getOwnPropertySlot): (JSC::JSArrayBuffer::getOwnPropertyDescriptor): (JSC::JSArrayBuffer::put): (JSC::JSArrayBuffer::defineOwnProperty): (JSC::JSArrayBuffer::deleteProperty): (JSC::JSArrayBuffer::getOwnNonIndexPropertyNames): * runtime/JSArrayBuffer.h: Added. (JSC::JSArrayBuffer::impl): (JSC::toArrayBuffer): * runtime/JSArrayBufferConstructor.cpp: Added. (JSC::JSArrayBufferConstructor::JSArrayBufferConstructor): (JSC::JSArrayBufferConstructor::finishCreation): (JSC::JSArrayBufferConstructor::create): (JSC::JSArrayBufferConstructor::createStructure): (JSC::constructArrayBuffer): (JSC::JSArrayBufferConstructor::getConstructData): (JSC::JSArrayBufferConstructor::getCallData): * runtime/JSArrayBufferConstructor.h: Added. * runtime/JSArrayBufferPrototype.cpp: Added. (JSC::arrayBufferProtoFuncSlice): (JSC::JSArrayBufferPrototype::JSArrayBufferPrototype): (JSC::JSArrayBufferPrototype::finishCreation): (JSC::JSArrayBufferPrototype::create): (JSC::JSArrayBufferPrototype::createStructure): * runtime/JSArrayBufferPrototype.h: Added. * runtime/JSArrayBufferView.cpp: Added. (JSC::JSArrayBufferView::ConstructionContext::ConstructionContext): (JSC::JSArrayBufferView::JSArrayBufferView): (JSC::JSArrayBufferView::finishCreation): (JSC::JSArrayBufferView::getOwnPropertySlot): (JSC::JSArrayBufferView::getOwnPropertyDescriptor): (JSC::JSArrayBufferView::put): (JSC::JSArrayBufferView::defineOwnProperty): (JSC::JSArrayBufferView::deleteProperty): (JSC::JSArrayBufferView::getOwnNonIndexPropertyNames): (JSC::JSArrayBufferView::finalize): * runtime/JSArrayBufferView.h: Added. (JSC::JSArrayBufferView::sizeOf): (JSC::JSArrayBufferView::ConstructionContext::operator!): (JSC::JSArrayBufferView::ConstructionContext::structure): (JSC::JSArrayBufferView::ConstructionContext::vector): (JSC::JSArrayBufferView::ConstructionContext::length): (JSC::JSArrayBufferView::ConstructionContext::mode): (JSC::JSArrayBufferView::ConstructionContext::butterfly): (JSC::JSArrayBufferView::mode): (JSC::JSArrayBufferView::vector): (JSC::JSArrayBufferView::length): (JSC::JSArrayBufferView::offsetOfVector): (JSC::JSArrayBufferView::offsetOfLength): (JSC::JSArrayBufferView::offsetOfMode): * runtime/JSArrayBufferViewInlines.h: Added. (JSC::JSArrayBufferView::slowDownAndWasteMemoryIfNecessary): (JSC::JSArrayBufferView::buffer): (JSC::JSArrayBufferView::impl): (JSC::JSArrayBufferView::neuter): (JSC::JSArrayBufferView::byteOffset): * runtime/JSCell.cpp: (JSC::JSCell::slowDownAndWasteMemory): (JSC::JSCell::getTypedArrayImpl): * runtime/JSCell.h: * runtime/JSDataView.cpp: Added. (JSC::JSDataView::JSDataView): (JSC::JSDataView::create): (JSC::JSDataView::createUninitialized): (JSC::JSDataView::set): (JSC::JSDataView::typedImpl): (JSC::JSDataView::getOwnPropertySlot): (JSC::JSDataView::getOwnPropertyDescriptor): (JSC::JSDataView::slowDownAndWasteMemory): (JSC::JSDataView::getTypedArrayImpl): (JSC::JSDataView::createStructure): * runtime/JSDataView.h: Added. * runtime/JSDataViewPrototype.cpp: Added. (JSC::JSDataViewPrototype::JSDataViewPrototype): (JSC::JSDataViewPrototype::create): (JSC::JSDataViewPrototype::createStructure): (JSC::JSDataViewPrototype::getOwnPropertySlot): (JSC::JSDataViewPrototype::getOwnPropertyDescriptor): (JSC::getData): (JSC::setData): (JSC::dataViewProtoFuncGetInt8): (JSC::dataViewProtoFuncGetInt16): (JSC::dataViewProtoFuncGetInt32): (JSC::dataViewProtoFuncGetUint8): (JSC::dataViewProtoFuncGetUint16): (JSC::dataViewProtoFuncGetUint32): (JSC::dataViewProtoFuncGetFloat32): (JSC::dataViewProtoFuncGetFloat64): (JSC::dataViewProtoFuncSetInt8): (JSC::dataViewProtoFuncSetInt16): (JSC::dataViewProtoFuncSetInt32): (JSC::dataViewProtoFuncSetUint8): (JSC::dataViewProtoFuncSetUint16): (JSC::dataViewProtoFuncSetUint32): (JSC::dataViewProtoFuncSetFloat32): (JSC::dataViewProtoFuncSetFloat64): * runtime/JSDataViewPrototype.h: Added. * runtime/JSFloat32Array.h: Added. * runtime/JSFloat64Array.h: Added. * runtime/JSGenericTypedArrayView.h: Added. (JSC::JSGenericTypedArrayView::byteLength): (JSC::JSGenericTypedArrayView::byteSize): (JSC::JSGenericTypedArrayView::typedVector): (JSC::JSGenericTypedArrayView::canGetIndexQuickly): (JSC::JSGenericTypedArrayView::canSetIndexQuickly): (JSC::JSGenericTypedArrayView::getIndexQuicklyAsNativeValue): (JSC::JSGenericTypedArrayView::getIndexQuicklyAsDouble): (JSC::JSGenericTypedArrayView::getIndexQuickly): (JSC::JSGenericTypedArrayView::setIndexQuicklyToNativeValue): (JSC::JSGenericTypedArrayView::setIndexQuicklyToDouble): (JSC::JSGenericTypedArrayView::setIndexQuickly): (JSC::JSGenericTypedArrayView::canAccessRangeQuickly): (JSC::JSGenericTypedArrayView::typedImpl): (JSC::JSGenericTypedArrayView::createStructure): (JSC::JSGenericTypedArrayView::info): (JSC::toNativeTypedView): * runtime/JSGenericTypedArrayViewConstructor.h: Added. * runtime/JSGenericTypedArrayViewConstructorInlines.h: Added. (JSC::::JSGenericTypedArrayViewConstructor): (JSC::::finishCreation): (JSC::::create): (JSC::::createStructure): (JSC::constructGenericTypedArrayView): (JSC::::getConstructData): (JSC::::getCallData): * runtime/JSGenericTypedArrayViewInlines.h: Added. (JSC::::JSGenericTypedArrayView): (JSC::::create): (JSC::::createUninitialized): (JSC::::validateRange): (JSC::::setWithSpecificType): (JSC::::set): (JSC::::getOwnPropertySlot): (JSC::::getOwnPropertyDescriptor): (JSC::::put): (JSC::::defineOwnProperty): (JSC::::deleteProperty): (JSC::::getOwnPropertySlotByIndex): (JSC::::putByIndex): (JSC::::deletePropertyByIndex): (JSC::::getOwnNonIndexPropertyNames): (JSC::::getOwnPropertyNames): (JSC::::visitChildren): (JSC::::copyBackingStore): (JSC::::slowDownAndWasteMemory): (JSC::::getTypedArrayImpl): * runtime/JSGenericTypedArrayViewPrototype.h: Added. * runtime/JSGenericTypedArrayViewPrototypeInlines.h: Added. (JSC::genericTypedArrayViewProtoFuncSet): (JSC::genericTypedArrayViewProtoFuncSubarray): (JSC::::JSGenericTypedArrayViewPrototype): (JSC::::finishCreation): (JSC::::create): (JSC::::createStructure): * runtime/JSGlobalObject.cpp: (JSC::JSGlobalObject::reset): (JSC::JSGlobalObject::visitChildren): * runtime/JSGlobalObject.h: (JSC::JSGlobalObject::arrayBufferPrototype): (JSC::JSGlobalObject::arrayBufferStructure): (JSC::JSGlobalObject::typedArrayStructure): * runtime/JSInt16Array.h: Added. * runtime/JSInt32Array.h: Added. * runtime/JSInt8Array.h: Added. * runtime/JSTypedArrayConstructors.cpp: Added. * runtime/JSTypedArrayConstructors.h: Added. * runtime/JSTypedArrayPrototypes.cpp: Added. * runtime/JSTypedArrayPrototypes.h: Added. * runtime/JSTypedArrays.cpp: Added. * runtime/JSTypedArrays.h: Added. * runtime/JSUint16Array.h: Added. * runtime/JSUint32Array.h: Added. * runtime/JSUint8Array.h: Added. * runtime/JSUint8ClampedArray.h: Added. * runtime/Operations.h: * runtime/Options.h: * runtime/SimpleTypedArrayController.cpp: Added. (JSC::SimpleTypedArrayController::SimpleTypedArrayController): (JSC::SimpleTypedArrayController::~SimpleTypedArrayController): (JSC::SimpleTypedArrayController::toJS): * runtime/SimpleTypedArrayController.h: Added. * runtime/Structure.h: (JSC::Structure::couldHaveIndexingHeader): * runtime/StructureInlines.h: (JSC::Structure::hasIndexingHeader): * runtime/TypedArrayAdaptors.h: Added. (JSC::IntegralTypedArrayAdaptor::toNative): (JSC::IntegralTypedArrayAdaptor::toJSValue): (JSC::IntegralTypedArrayAdaptor::toDouble): (JSC::FloatTypedArrayAdaptor::toNative): (JSC::FloatTypedArrayAdaptor::toJSValue): (JSC::FloatTypedArrayAdaptor::toDouble): (JSC::Uint8ClampedAdaptor::toNative): (JSC::Uint8ClampedAdaptor::toJSValue): (JSC::Uint8ClampedAdaptor::toDouble): (JSC::Uint8ClampedAdaptor::clamp): * runtime/TypedArrayController.cpp: Added. (JSC::TypedArrayController::TypedArrayController): (JSC::TypedArrayController::~TypedArrayController): * runtime/TypedArrayController.h: Added. * runtime/TypedArrayDescriptor.h: Removed. * runtime/TypedArrayInlines.h: Added. * runtime/TypedArrayType.cpp: Added. (JSC::classInfoForType): (WTF::printInternal): * runtime/TypedArrayType.h: Added. (JSC::toIndex): (JSC::isTypedView): (JSC::elementSize): (JSC::isInt): (JSC::isFloat): (JSC::isSigned): (JSC::isClamped): * runtime/TypedArrays.h: Added. * runtime/Uint16Array.h: * runtime/Uint32Array.h: * runtime/Uint8Array.h: * runtime/Uint8ClampedArray.h: * runtime/VM.cpp: (JSC::VM::VM): (JSC::VM::~VM): * runtime/VM.h: Source/WebCore: Reviewed by Oliver Hunt. Typed arrays are now implemented in JavaScriptCore, and WebCore is merely a client of them. There is only one layering violation: WebCore installs a WebCoreTypedArrayController on VM, which makes the ArrayBuffer<->JSArrayBuffer relationship resemble DOM wrappers. By default, JSC makes the ownership go one way; the JSArrayBuffer keeps the ArrayBuffer alive but if ArrayBuffer is kept alive from native code then the JSArrayByffer may die. WebCoreTypedArrayController will keep the JSArrayBuffer alive if the ArrayBuffer is in the opaque root set. To make non-JSDOMWrappers behave like DOM wrappers, a bunch of code is changed to make most references to wrappers refer to JSObject* rather than JSDOMWrapper*. Array buffer views are now transient; the JS array buffer view wrappers don't own them or keep them alive. This required a bunch of changes to make bindings code use RefPtr<ArrayBufferView> to hold onto their views. Also there is a bunch of new code to make JSC-provided array buffers and views obey the toJS/to<ClassName> idiom for wrapping and unwrapping. Finally, the DataView API is now completely different: the JSDataView provides the same user-visible JS API but using its own internal magic; the C++ code that uses DataView now uses a rather different API that is not aware of usual DOM semantics, since it's in JSC and not WebCore. It's equally useful for all of WebCore's purposes, but some code had to change to adapt the new conventions. Some tests have been changed or rebased due to changes in behavior, that bring us into conformance with where the standards are going and allow us to match Firefox behavior. Automake work and some additional GTK changes courtesy of Zan Dobersek <zdobersek@igalia.com>. Additional Qt changes courtesy of Arunprasad Rajkumar <arurajku@cisco.com>. * CMakeLists.txt: * DerivedSources.make: * ForwardingHeaders/runtime/DataView.h: Added. * ForwardingHeaders/runtime/JSArrayBuffer.h: Added. * ForwardingHeaders/runtime/JSArrayBufferView.h: Added. * ForwardingHeaders/runtime/JSDataView.h: Added. * ForwardingHeaders/runtime/JSTypedArrays.h: Added. * ForwardingHeaders/runtime/TypedArrayController.h: Added. * ForwardingHeaders/runtime/TypedArrayInlines.h: Added. * ForwardingHeaders/runtime/TypedArrays.h: Added. * GNUmakefile.list.am: * Modules/webaudio/RealtimeAnalyser.h: * Target.pri: * UseJSC.cmake: * WebCore.exp.in: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.xcodeproj/project.pbxproj: * bindings/js/DOMWrapperWorld.h: * bindings/js/JSArrayBufferCustom.cpp: Removed. * bindings/js/JSArrayBufferViewHelper.h: Removed. * bindings/js/JSAudioContextCustom.cpp: * bindings/js/JSBindingsAllInOne.cpp: * bindings/js/JSBlobCustom.cpp: * bindings/js/JSCSSRuleCustom.cpp: (WebCore::toJS): * bindings/js/JSCSSValueCustom.cpp: (WebCore::toJS): * bindings/js/JSCryptoCustom.cpp: (WebCore::JSCrypto::getRandomValues): * bindings/js/JSDOMBinding.h: (WebCore::wrapperOwner): (WebCore::wrapperContext): (WebCore::getInlineCachedWrapper): (WebCore::setInlineCachedWrapper): (WebCore::clearInlineCachedWrapper): (WebCore::getCachedWrapper): (WebCore::cacheWrapper): (WebCore::uncacheWrapper): (WebCore::wrap): (WebCore::toJS): (WebCore::toArrayBufferView): (WebCore::toInt8Array): (WebCore::toInt16Array): (WebCore::toInt32Array): (WebCore::toUint8Array): (WebCore::toUint8ClampedArray): (WebCore::toUint16Array): (WebCore::toUint32Array): (WebCore::toFloat32Array): (WebCore::toFloat64Array): (WebCore::toDataView): * bindings/js/JSDataViewCustom.cpp: Removed. * bindings/js/JSDictionary.cpp: * bindings/js/JSDictionary.h: * bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::location): (WebCore::toJS): * bindings/js/JSEventCustom.cpp: (WebCore::toJS): * bindings/js/JSFileReaderCustom.cpp: * bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::toJS): * bindings/js/JSHTMLTemplateElementCustom.cpp: (WebCore::JSHTMLTemplateElement::content): * bindings/js/JSImageDataCustom.cpp: (WebCore::toJS): * bindings/js/JSInjectedScriptHostCustom.cpp: * bindings/js/JSMessageEventCustom.cpp: * bindings/js/JSMessagePortCustom.cpp: * bindings/js/JSSVGPathSegCustom.cpp: (WebCore::toJS): * bindings/js/JSStyleSheetCustom.cpp: (WebCore::toJS): * bindings/js/JSTrackCustom.cpp: (WebCore::toJS): * bindings/js/JSWebGLRenderingContextCustom.cpp: * bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::send): * bindings/js/SerializedScriptValue.cpp: (WebCore::SerializedScriptValue::transferArrayBuffers): * bindings/js/WebCoreJSClientData.h: (WebCore::initNormalWorldClientData): * bindings/js/WebCoreTypedArrayController.cpp: Added. (WebCore::WebCoreTypedArrayController::WebCoreTypedArrayController): (WebCore::WebCoreTypedArrayController::~WebCoreTypedArrayController): (WebCore::WebCoreTypedArrayController::toJS): (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots): (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize): * bindings/js/WebCoreTypedArrayController.h: Added. (WebCore::WebCoreTypedArrayController::wrapperOwner): * bindings/scripts/CodeGenerator.pm: (ForAllParents): (ParseInterface): (SkipIncludeHeader): (IsTypedArrayType): (IsWrapperType): * bindings/scripts/CodeGeneratorJS.pm: (AddIncludesForType): (GenerateHeader): (GenerateImplementation): (GenerateParametersCheck): (GetNativeType): (JSValueToNative): (NativeToJSValue): (GenerateConstructorDefinition): (GenerateConstructorHelperMethods): * fileapi/WebKitBlobBuilder.cpp: (WebCore::BlobBuilder::append): * fileapi/WebKitBlobBuilder.h: * html/canvas/ArrayBuffer.idl: Removed. * html/canvas/ArrayBufferView.idl: Removed. * html/canvas/DataView.cpp: Removed. * html/canvas/DataView.h: Removed. * html/canvas/DataView.idl: Removed. * html/canvas/Float32Array.idl: Removed. * html/canvas/Float64Array.idl: Removed. * html/canvas/Int16Array.idl: Removed. * html/canvas/Int32Array.idl: Removed. * html/canvas/Int8Array.idl: Removed. * html/canvas/Uint16Array.idl: Removed. * html/canvas/Uint32Array.idl: Removed. * html/canvas/Uint8Array.idl: Removed. * html/canvas/Uint8ClampedArray.idl: Removed. * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::readPixels): (WebCore::WebGLRenderingContext::validateTexFuncData): * page/Crypto.cpp: * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: (WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForLoadingOfResource): (WebCore::MediaPlayerPrivateAVFoundationObjC::extractKeyURIKeyIDAndCertificateFromInitData): * platform/graphics/filters/FECustomFilter.h: * platform/graphics/filters/FEGaussianBlur.cpp: * platform/graphics/filters/FilterEffect.cpp: * testing/MockCDM.cpp: Source/WebKit2: Reviewed by Oliver Hunt. You don't need to include JSUint8Array anymore if you just want to unwrap one; JSDOMBinding gives you all of the things you need. * WebProcess/InjectedBundle/InjectedBundle.cpp: Source/WTF: Reviewed by Oliver Hunt. - Added the notion of a reference counted object that can be marked Deferred, which is like a special-purpose upref. - Added a common byte flipper. Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>. * GNUmakefile.list.am: * WTF.xcodeproj/project.pbxproj: * wtf/DeferrableRefCounted.h: Added. (WTF::DeferrableRefCountedBase::ref): (WTF::DeferrableRefCountedBase::hasOneRef): (WTF::DeferrableRefCountedBase::refCount): (WTF::DeferrableRefCountedBase::isDeferred): (WTF::DeferrableRefCountedBase::DeferrableRefCountedBase): (WTF::DeferrableRefCountedBase::~DeferrableRefCountedBase): (WTF::DeferrableRefCountedBase::derefBase): (WTF::DeferrableRefCountedBase::setIsDeferredBase): (WTF::DeferrableRefCounted::deref): (WTF::DeferrableRefCounted::setIsDeferred): (WTF::DeferrableRefCounted::DeferrableRefCounted): (WTF::DeferrableRefCounted::~DeferrableRefCounted): * wtf/FlipBytes.h: Added. (WTF::needToFlipBytesIfLittleEndian): (WTF::flipBytes): (WTF::flipBytesIfLittleEndian): LayoutTests: Reviewed by Oliver Hunt. * fast/canvas/webgl/array-set-invalid-arguments-expected.txt: * fast/canvas/webgl/array-set-out-of-bounds-expected.txt: * fast/canvas/webgl/array-unit-tests-expected.txt: * fast/canvas/webgl/array-unit-tests.html: * fast/canvas/webgl/data-view-crash-expected.txt: * fast/canvas/webgl/script-tests/arraybuffer-transfer-of-control.js: (checkView): * fast/dom/call-a-constructor-as-a-function-expected.txt: * fast/dom/call-a-constructor-as-a-function.html: * fast/js/constructor-length.html: * fast/js/global-constructors-attributes-dedicated-worker-expected.txt: * fast/js/global-constructors-attributes-expected.txt: * fast/js/global-constructors-attributes-shared-worker-expected.txt: * fast/js/regress/ArrayBuffer-Int8Array-alloc-expected.txt: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-expected.txt: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived.html: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-buffer-expected.txt: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-buffer.html: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-expected.txt: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived.html: Added. * fast/js/regress/ArrayBuffer-Int8Array-alloc.html: Added. * fast/js/regress/Int32Array-Int8Array-view-alloc-expected.txt: Added. * fast/js/regress/Int32Array-Int8Array-view-alloc.html: Added. * fast/js/regress/Int32Array-alloc-expected.txt: Added. * fast/js/regress/Int32Array-alloc-huge-expected.txt: Added. * fast/js/regress/Int32Array-alloc-huge-long-lived-expected.txt: Added. * fast/js/regress/Int32Array-alloc-huge-long-lived.html: Added. * fast/js/regress/Int32Array-alloc-huge.html: Added. * fast/js/regress/Int32Array-alloc-large-expected.txt: Added. * fast/js/regress/Int32Array-alloc-large-long-lived-expected.txt: Added. * fast/js/regress/Int32Array-alloc-large-long-lived.html: Added. * fast/js/regress/Int32Array-alloc-large.html: Added. * fast/js/regress/Int32Array-alloc-long-lived-expected.txt: Added. * fast/js/regress/Int32Array-alloc-long-lived.html: Added. * fast/js/regress/Int32Array-alloc.html: Added. * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js: Added. * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived.js: Added. * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-long-lived-buffer.js: Added. * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-long-lived.js: Added. * fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc.js: Added. * fast/js/regress/script-tests/Int32Array-Int8Array-view-alloc.js: Added. * fast/js/regress/script-tests/Int32Array-alloc-huge-long-lived.js: Added. * fast/js/regress/script-tests/Int32Array-alloc-huge.js: Added. * fast/js/regress/script-tests/Int32Array-alloc-large-long-lived.js: Added. * fast/js/regress/script-tests/Int32Array-alloc-large.js: Added. * fast/js/regress/script-tests/Int32Array-alloc-long-lived.js: Added. * fast/js/regress/script-tests/Int32Array-alloc.js: Added. * platform/mac/fast/js/constructor-length-expected.txt: * webgl/resources/webgl_test_files/conformance/typedarrays/array-unit-tests.html: * webgl/resources/webgl_test_files/conformance/typedarrays/data-view-test.html: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154127 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
https://webkit.org/b/119830oliver@apple.com authored
Reviewed by Filip Pizlo. Source/JavaScriptCore: Make sure dfgCapabilities doesn't report a Dynamic put as being compilable when we don't actually support it. * bytecode/CodeBlock.cpp: (JSC::CodeBlock::dumpBytecode): * dfg/DFGCapabilities.cpp: (JSC::DFG::capabilityLevel): LayoutTests: Add a test * fast/js/dfg-put-to-readonly-property-expected.txt: Added. * fast/js/dfg-put-to-readonly-property.html: Added. * fast/js/script-tests/dfg-put-to-readonly-property.js: Added. (foo): (bar): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154120 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mario@webkit.org authored
accessibility test to the cross platform directory, as the result it's shared with GTK and EFL ports. * accessibility/heading-title-includes-links-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/heading-title-includes-links-expected.txt. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154105 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
allan.jensen@digia.com authored
Unreviewed gardening. * platform/qt-5.0/TestExpectations: * platform/qt-5.0/editing/selection/editable-html-element-expected.txt: Removed. * platform/qt-5.0/editing/selection/extend-by-word-001-expected.txt: Removed. * platform/qt-5.0/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt: Removed. * platform/qt-5.0/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt: Removed. * platform/qt-5.0/fast/dom/Orientation/create-event-orientationchange-expected.txt: Removed. * platform/qt-5.0/fast/dom/Window/window-properties-device-orientation-expected.txt: Removed. * platform/qt-5.0/fast/events/onload-re-entry-expected.txt: Removed. * platform/qt-5.0/fast/forms/input-disabled-color-expected.png: Removed. * platform/qt-5.0/fast/forms/input-disabled-color-expected.txt: Removed. * platform/qt-5.0/fast/forms/menulist-separator-painting-expected.png: Removed. * platform/qt-5.0/fast/forms/menulist-separator-painting-expected.txt: Removed. * platform/qt-5.0/fast/forms/select-background-none-expected.png: Removed. * platform/qt-5.0/fast/forms/select-background-none-expected.txt: Removed. * platform/qt-5.0/fast/images/embed-image-expected.txt: Removed. * platform/qt-5.0/fast/images/object-image-expected.txt: Removed. * platform/qt-5.0/fast/text/backslash-to-yen-sign-expected.txt: Removed. * platform/qt-5.0/fast/text/basic/003-expected.png: Removed. * platform/qt-5.0/fast/text/basic/003-expected.txt: Removed. * platform/qt-5.0/fast/text/fallback-traits-fixup-expected.txt: Removed. * platform/qt-5.0/fast/text/international/hindi-whitespace-expected.txt: Removed. * platform/qt-5.0/fast/text/international/text-spliced-font-expected.txt: Removed. * platform/qt-5.0/fast/text/letter-spacing-negative-opacity-expected.png: Removed. * platform/qt-5.0/fast/text/letter-spacing-negative-opacity-expected.txt: Removed. * platform/qt-5.0/fast/text/soft-hyphen-3-expected.txt: Removed. * platform/qt-5.0/http/tests/misc/location-replace-crossdomain-expected.png: Removed. * platform/qt-5.0/http/tests/misc/location-replace-crossdomain-expected.txt: Removed. * platform/qt-5.0/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png: Removed. * platform/qt-5.0/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png: Removed. * platform/qt-5.0/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png: Removed. * platform/qt-5.0/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Removed. * platform/qt-5.0/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: Removed. * platform/qt-5.0/svg/as-image/img-preserveAspectRatio-support-1-expected.png: Removed. * platform/qt-5.0/svg/as-image/img-preserveAspectRatio-support-1-expected.txt: Removed. * platform/qt-5.0/svg/as-object/object-box-sizing-no-width-height-expected.png: Removed. * platform/qt-5.0/svg/as-object/object-box-sizing-no-width-height-expected.txt: Removed. * platform/qt-5.0/svg/batik/text/longTextOnPath-expected.png: Removed. * platform/qt-5.0/svg/batik/text/longTextOnPath-expected.txt: Removed. * platform/qt-5.0/svg/carto.net/tabgroup-expected.txt: Removed. * platform/qt-5.0/svg/foreignObject/text-tref-02-b-expected.png: Removed. * platform/qt-5.0/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Removed. * platform/qt-5.0/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: Removed. * platform/qt/TestExpectations: * platform/qt/editing/execCommand/findString-diacriticals-expected.txt: Renamed from LayoutTests/platform/qt-5.0/editing/execCommand/findString-diacriticals-expected.txt. * platform/qt/editing/selection/click-left-of-rtl-wrapping-text-expected.txt: Renamed from LayoutTests/platform/qt-5.0/editing/selection/click-left-of-rtl-wrapping-text-expected.txt. * platform/qt/fast/events/onload-re-entry-expected.png: Renamed from LayoutTests/platform/qt-5.0/fast/events/onload-re-entry-expected.png. * platform/qt/fast/events/onload-re-entry-expected.txt: * platform/qt/fast/events/touch/touch-slider-expected.txt: Renamed from LayoutTests/platform/qt-5.0/fast/events/touch/touch-slider-expected.txt. * platform/qt/fast/events/touch/touch-slider-no-js-touch-listener-expected.txt: Renamed from LayoutTests/platform/qt-5.0/fast/events/touch/touch-slider-no-js-touch-listener-expected.txt. * platform/qt/fast/forms/input-disabled-color-expected.png: * platform/qt/fast/forms/input-disabled-color-expected.txt: * platform/qt/fast/forms/menulist-separator-painting-expected.png: * platform/qt/fast/forms/menulist-separator-painting-expected.txt: * platform/qt/fast/forms/select-background-none-expected.png: * platform/qt/fast/forms/select-background-none-expected.txt: * platform/qt/fast/images/embed-image-expected.txt: * platform/qt/fast/images/object-image-expected.txt: * platform/qt/fast/text/basic/003-expected.png: * platform/qt/fast/text/international/text-spliced-font-expected.png: Renamed from LayoutTests/platform/qt-5.0/fast/text/international/text-spliced-font-expected.png. * platform/qt/fast/text/soft-hyphen-3-expected.txt: * platform/qt/http/tests/cookies/double-quoted-value-with-semi-colon-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/cookies/double-quoted-value-with-semi-colon-expected.txt. * platform/qt/http/tests/misc/location-replace-crossdomain-expected.png: * platform/qt/http/tests/misc/location-replace-crossdomain-expected.txt: * platform/qt/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt. * platform/qt/http/tests/xmlhttprequest/methods-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/xmlhttprequest/methods-expected.txt. * platform/qt/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/xmlhttprequest/workers/methods-async-expected.txt. * platform/qt/http/tests/xmlhttprequest/workers/methods-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/xmlhttprequest/workers/methods-expected.txt. * platform/qt/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt. * platform/qt/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png: * platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png: * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png: * platform/qt/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: * platform/qt/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: * platform/qt/svg/as-image/img-preserveAspectRatio-support-1-expected.png: * platform/qt/svg/as-object/object-box-sizing-no-width-height-expected.png: * platform/qt/svg/as-object/object-box-sizing-no-width-height-expected.txt: * platform/qt/svg/batik/text/longTextOnPath-expected.png: * platform/qt/svg/batik/text/longTextOnPath-expected.txt: * platform/qt/svg/carto.net/tabgroup-expected.png: Renamed from LayoutTests/platform/qt-5.0/svg/carto.net/tabgroup-expected.png. * platform/qt/svg/carto.net/tabgroup-expected.txt: * platform/qt/svg/foreignObject/text-tref-02-b-expected.png: * platform/qt/svg/transforms/text-with-pattern-with-svg-transform-expected.png: * platform/qt/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154101 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
simon.pena@samsung.com authored
* platform/gtk-wk1/TestExpectations: Unskip tests no longer failing. * platform/gtk-wk1/loader/go-back-cached-main-resource-expected.txt: Rebaseline after r153852. * platform/gtk/TestExpectations: * platform/gtk/fast/regions/region-dynamic-after-before-expected.txt: Rebaseline after r154072. * platform/gtk/fast/regions/region-generated-content-before-after-expected.txt: Rebaseline after r154072. * platform/gtk/security/block-test-no-port-expected.txt: Rebaseline after r153852. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154100 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
rwlbuis@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=116979 Reviewed by Antti Koivisto. Source/WebCore: Make sure adoptRef is called before calling setPseudo, for all progress shadow elements. * html/shadow/ProgressShadowElement.cpp: (WebCore::ProgressInnerElement::ProgressInnerElement): (WebCore::ProgressBarElement::ProgressBarElement): (WebCore::ProgressValueElement::ProgressValueElement): * html/shadow/ProgressShadowElement.h: (WebCore::ProgressInnerElement::create): (WebCore::ProgressBarElement::create): (WebCore::ProgressValueElement::create): LayoutTests: Add testcase from bug with small adjustments. * svg/custom/tref-with-progress-tag-setpseudo-assert-expected.txt: Added. * svg/custom/tref-with-progress-tag-setpseudo-assert.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
simon.pena@samsung.com authored
* platform/gtk-wk1/TestExpectations: http/tests/loading/unfinished-main-resource-back-to-cached-page-callbacks.html is failing. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154097 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
allan.jensen@digia.com authored
https://bugs.webkit.org/show_bug.cgi?id=119792 Unreviewed gardening. Speculative unskip after r154095. * platform/qt/TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154096 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
allan.jensen@digia.com authored
https://bugs.webkit.org/show_bug.cgi?id=114913 Reviewed by Filip Pizlo. Source/JavaScriptCore: The X87 register was not freed before some calls. Instead of inserting resetX87Registers to the last call sites, the two X87 registers are now freed in every call. * llint/LowLevelInterpreter32_64.asm: * llint/LowLevelInterpreter64.asm: * offlineasm/instructions.rb: * offlineasm/x86.rb: LayoutTests: Unskip the five tests now passsing again. * platform/qt/TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
simon.pena@samsung.com authored
* platform/gtk/fast/js/dom-static-property-for-in-iteration-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154094 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
ryuan.choi@samsung.com authored
Skipped some failures. * platform/efl-wk2/TestExpectations: * platform/efl/TestExpectations: * platform/efl/fast/forms/datalist/input-list-expected.txt: Removed. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154093 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
simon.pena@samsung.com authored
* platform/gtk/fast/regions/autoheight-regions-mark-expected.txt: * platform/gtk/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: * platform/gtk/fast/regions/overflow-in-variable-width-regions-expected.txt: * platform/gtk/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: * platform/gtk/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: * platform/gtk/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt: * platform/gtk/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: * platform/gtk/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: * platform/gtk/fast/repaint/line-flow-with-floats-in-regions-expected.txt: * platform/gtk/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: * platform/gtk/fast/repaint/region-painting-via-layout-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154092 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
kadam@inf.u-szeged.hu authored
Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2013-08-15 * platform/qt-5.0-wk2/fast/repaint/region-painting-via-layout-expected.txt: Removed. * platform/qt/fast/regions/autoheight-regions-mark-expected.txt: * platform/qt/fast/regions/overflow-in-uniform-regions-dynamic-expected.png: * platform/qt/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: * platform/qt/fast/regions/overflow-in-variable-width-regions-expected.png: * platform/qt/fast/regions/overflow-in-variable-width-regions-expected.txt: * platform/qt/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.png: * platform/qt/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: * platform/qt/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.png: * platform/qt/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: * platform/qt/fast/regions/overflow-rtl-in-variable-width-regions-expected.png: * platform/qt/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt: * platform/qt/fast/regions/overflow-size-change-in-variable-width-regions-expected.png: * platform/qt/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: * platform/qt/fast/repaint/line-flow-with-floats-in-regions-expected.png: * platform/qt/fast/repaint/line-flow-with-floats-in-regions-expected.txt: * platform/qt/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: * platform/qt/fast/repaint/region-painting-via-layout-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154091 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
ap@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=119802 Reviewed by Sam Weinig. * http/tests/cookies/resources/cookies-test-post.js: * http/tests/cookies/resources/cookies-test-pre.js: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154090 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 14 Aug, 2013 8 commits
-
-
https://webkit.org/b/119786ryuan.choi@samsung.com authored
Reviewed by Gyuyoung Kim. Source/WebCore: Other platforms except EFL port draw a magnifying icon for -webkit-search-results-button and -webkit-search-results-decoration in search field, but Efl port draws it for -webkit-search-decoration. This patch makes Efl port draw icon in first two cases like other ports. Tests: fast/css/input-search-padding.html fast/css/text-input-with-webkit-border-radius.html fast/css/text-overflow-input.html fast/forms/box-shadow-override.html fast/forms/control-restrict-line-height.html fast/forms/input-appearance-height.html fast/forms/placeholder-position.html fast/forms/placeholder-pseudo-style.html fast/forms/search-cancel-button-style-sharing.html fast/forms/search-display-none-cancel-button.html fast/forms/search-rtl.html fast/forms/search-vertical-alignment.html fast/forms/searchfield-heights.html fast/repaint/search-field-cancel.html * platform/efl/DefaultTheme/widget/search/cancel/search_cancel.edc: Moved results_button alias to search_decoration.edc * platform/efl/DefaultTheme/widget/search/decoration/search_decoration.edc: * platform/efl/RenderThemeEfl.cpp: Updated size of ResultsButtonStyle and ResultsDecorationStyle to show icon. In addition, removed adjustSearchFieldResultsButtonStyle and paintSearchFieldDecoration. (WebCore::toEdjeGroup): Removed decoration group. (WebCore::RenderThemeEfl::adjustSearchFieldResultsButtonStyle): (WebCore::RenderThemeEfl::adjustSearchFieldResultsDecorationStyle): * platform/efl/RenderThemeEfl.h: LayoutTests: Rebaseline related to input search field. * platform/efl/fast/css/input-search-padding-expected.png: * platform/efl/fast/css/input-search-padding-expected.txt: * platform/efl/fast/css/text-input-with-webkit-border-radius-expected.png: * platform/efl/fast/css/text-input-with-webkit-border-radius-expected.txt: * platform/efl/fast/css/text-overflow-input-expected.png: * platform/efl/fast/css/text-overflow-input-expected.txt: * platform/efl/fast/forms/box-shadow-override-expected.png: * platform/efl/fast/forms/box-shadow-override-expected.txt: * platform/efl/fast/forms/control-restrict-line-height-expected.png: * platform/efl/fast/forms/control-restrict-line-height-expected.txt: * platform/efl/fast/forms/input-appearance-height-expected.png: * platform/efl/fast/forms/input-appearance-height-expected.txt: * platform/efl/fast/forms/placeholder-position-expected.png: * platform/efl/fast/forms/placeholder-position-expected.txt: * platform/efl/fast/forms/placeholder-pseudo-style-expected.png: * platform/efl/fast/forms/placeholder-pseudo-style-expected.txt: * platform/efl/fast/forms/search-cancel-button-style-sharing-expected.png: * platform/efl/fast/forms/search-cancel-button-style-sharing-expected.txt: * platform/efl/fast/forms/search-display-none-cancel-button-expected.png: * platform/efl/fast/forms/search-display-none-cancel-button-expected.txt: * platform/efl/fast/forms/search-rtl-expected.png: * platform/efl/fast/forms/search-rtl-expected.txt: * platform/efl/fast/forms/search-vertical-alignment-expected.png: * platform/efl/fast/forms/search-vertical-alignment-expected.txt: * platform/efl/fast/forms/searchfield-heights-expected.png: * platform/efl/fast/forms/searchfield-heights-expected.txt: * platform/efl/fast/repaint/search-field-cancel-expected.png: * platform/efl/fast/repaint/search-field-cancel-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154089 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
https://webkit.org/b/119817cfleizach@apple.com authored
<https://webkit.org/b/119817> AX: Integrate layout tests from overflow bounding boxes are way too big; prevents VoiceOver taps from activating the right elements Reviewed by Simon Fraser. Add a layout test to ensure that transformed elements do not get offset twice when calculating their accessibility bounds. * accessibility/transformed-bounds-expected.txt: Added. * accessibility/transformed-bounds.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154082 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hmuller@adobe.com authored
https://bugs.webkit.org/show_bug.cgi?id=116643 Source/WebCore: Reviewed by Alexandru Chiculita. This is a first small step towards supporting CSS shapes defined by an image URL and a alpha channel threshold. To keep the patch as small as possible, there are many limitations and remaining work items. For example images are currently restricted to same-origin, although CORS should be supported. See https://bugs.webkit.org/show_bug.cgi?id=116348 for the current list. Test: fast/exclusions/shape-inside/shape-inside-image-001.html Test: fast/exclusions/shape-inside/shape-inside-image-002.html * CMakeLists.txt: * GNUmakefile.list.am: * Target.pri: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.xcodeproj/project.pbxproj: * rendering/RenderBlock.cpp: (WebCore::RenderBlock::imageChanged): When the image has finished loading, request a layout. * rendering/RenderBlock.h: * rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle): Add notify clients for shape images. (WebCore::RenderObject::updateShapeImage): (WebCore::removeShapeImageClient): (WebCore::RenderObject::arenaDelete): Remove notify clients for shape images. * rendering/RenderObject.h: * rendering/shapes/RasterShape.cpp: Added. A Shape defined by thresholding an image's alpha channel. (WebCore::RasterShapeIntervals::bounds): (WebCore::RasterShapeIntervals::addInterval): Add a single run to the shape. (WebCore::alignedRect): (WebCore::RasterShapeIntervals::getIntervals): Return the shape's runs that fall within a horizonal box. (WebCore::RasterShape::marginIntervals): Internal representation of the shape with shape-margin factored in. Currently only a stub. (WebCore::RasterShape::paddingIntervals): Internal representation of the shape with shape-padding factored in. Currently only a stub. (WebCore::RasterShape::getExcludedIntervals): (WebCore::RasterShape::getIncludedIntervals): (WebCore::RasterShape::firstIncludedIntervalLogicalTop): * rendering/shapes/RasterShape.h: (WebCore::RasterShapeIntervals::RasterShapeIntervals): Internal run length encoded representation of a RasterShape. (WebCore::RasterShapeIntervals::isEmpty): (WebCore::RasterShape::RasterShape): * rendering/shapes/Shape.cpp: (WebCore::Shape::createShape): Support for creating a Shape based on a RasterShapeIntervals object. * rendering/shapes/Shape.h: * rendering/shapes/ShapeInfo.cpp: (WebCore::::computedShape): Added support for the Image ShapeValue type. * rendering/shapes/ShapeInsideInfo.cpp: (WebCore::ShapeInsideInfo::isEnabledFor): Added support for the Image ShapeValue type. * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::isEnabledFor): Added support for the Image ShapeValue type. * rendering/style/ShapeValue.h: (WebCore::ShapeValue::isImageValid): True if the shape's image is ready to be be processed. LayoutTests: Two tests to verify that the initial implementation of shape valued images is working for shape-inside. Reviewed by Alexandru Chiculita. * fast/exclusions/shape-inside/shape-inside-image-001-expected.html: Added. * fast/exclusions/shape-inside/shape-inside-image-001.html: Added. * fast/exclusions/shape-inside/shape-inside-image-002-expected.html: Added. * fast/exclusions/shape-inside/shape-inside-image-002.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154081 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
bfulgham@apple.com authored
* platform/win/TestExpectations: Clean up a lint warning, and reactivate four tiling tests that pass and had been turned off previously. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154076 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
achicu@adobe.com authored
[CSS Regions] RenderRegions should have a RenderLayer+Backing when they contain a Composited RenderLayer https://bugs.webkit.org/show_bug.cgi?id=117365 Reviewed by David Hyatt. Source/WebCore: After the RenderFlowThread has a new layout we need to check if any of the children layers had been moved to a new render region. We are only checking for the first level of layers, as they are the only ones supported right now. Also, added code to make Regions require a layer based on the layers that fit in their clipping area. Tests: fast/regions/layers/dynamic-layer-added-with-no-layout.html fast/regions/layers/dynamic-layer-removed-with-no-layout.html fast/regions/layers/float-region-promoted-to-layer.html fast/regions/layers/regions-promoted-to-layers-horizontal-bt.html fast/regions/layers/regions-promoted-to-layers-vertical-lr.html fast/regions/layers/regions-promoted-to-layers-vertical-rl.html fast/regions/layers/regions-promoted-to-layers.html * rendering/FlowThreadController.cpp: (WebCore::FlowThreadController::updateRenderFlowThreadLayersIfNeeded): Iterate on all the flow threads and updateLayerToRegionMappings if needed. * rendering/FlowThreadController.h: * rendering/RenderBlock.cpp: (WebCore::RenderBlock::updateLocalFloatingObjectsForPaintingContainer): Checks if the FloatingObject needs to be painted by the current block or not. (WebCore::RenderBlock::updateFloatingObjectsPaintingContainer): Helper function to lookup what is the right container that would need to paint a FloatingObject. (WebCore::RenderBlock::updateAllDescendantsFloatingObjectsPaintingContainer): * rendering/RenderBlock.h: * rendering/RenderBox.cpp: (WebCore::RenderBox::outermostBlockContainingFloatingObject): Looks up the ancestor RenderBlock that contains all the FloatingObjects of a float. (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists): Extracted the code for outermostBlockContainingFloatingObject into its own method. (WebCore::RenderBox::updatePaintingContainerForFloatingObject): Helper method to update the "m_shouldPaint" flag of all the FloatingObjects created for a floating RenderObject. Normally, that flag is maintained during layout, but we need to patch it for the floating RenderRegions after the layout is already finished. (WebCore::RenderBox::updateLayerIfNeeded): Overwrite of the RenderLayerModelObject::updateLayerIfNeeded that is also calling updatePaintingContainerForFloatingObject if a new layer was created or destroyed. * rendering/RenderBox.h: * rendering/RenderFlowThread.cpp: (WebCore::RenderFlowThread::layout): Added code to call updateLayerToRegionMappings when needed. (WebCore::RenderFlowThread::regionForCompositedLayer): Looks up the first RenderRegion to display a specific layer. It only cares about the top most point of the element and ignores transforms. (WebCore::RenderFlowThread::updateRegionForRenderLayer): Helper method to update the mapped region of a layer. (WebCore::RenderFlowThread::updateLayerToRegionMappings): Iterates all the first level layers of the flow thread and updates the region. Will return true if there was any change. * rendering/RenderFlowThread.h: * rendering/RenderLayer.cpp: (WebCore::RenderLayer::dirtyZOrderLists): When new layers are added or removed we need to update the layer map in the flow thread. (WebCore::RenderLayer::dirtyNormalFlowList): (WebCore::RenderLayer::shouldBeNormalFlowOnly): CSS Regions might become layers because they contain RenderLayers, but they should not become stacking contexts for that reason. This will prevent the RenderRegions from rendering in front of other layers. (WebCore::RenderLayer::shouldBeSelfPaintingLayer): * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::updateCompositingLayers): Call updateRenderFlowThreadLayersIfNeeded when there's a layer hierarchy update. (WebCore::RenderLayerCompositor::updateRenderFlowThreadLayersIfNeeded): Update the render flow thread layer maps when they are dirty. * rendering/RenderLayerCompositor.h: * rendering/RenderLayer.h: (WebCore::RenderLayer::isDirtyRenderFlowThread): Used to check if the RenderLayers had changed their order, so that we can update the list of layers associated with a region. In a following patch we will need to rebuild the composited layers. * rendering/RenderLayerModelObject.cpp: (WebCore::RenderLayerModelObject::updateLayerIfNeeded): Adds or removes a layer when the "requiresLayer" changes after the styleDidChange already happened. This is needed for Regions as we only know if they still require a layer, only after the content of the flow thread is computed. * rendering/RenderLayerModelObject.h: * rendering/RenderRegion.cpp: (WebCore::RenderRegion::RenderRegion): (WebCore::RenderRegion::setRequiresLayerForCompositing): * rendering/RenderRegion.h: (WebCore::RenderRegion::requiresLayer): * rendering/RenderTreeAsText.cpp: (WebCore::writeRenderRegionList): Updated the output to print the fact that the layer has a layer. LayoutTests: Added new tests for cases when CSS Regions are promoted to RenderLayers because they contain elements that might need to become composited. * fast/regions/layers/dynamic-layer-added-with-no-layout-expected.png: Added. * fast/regions/layers/dynamic-layer-added-with-no-layout-expected.txt: Added. * fast/regions/layers/dynamic-layer-added-with-no-layout.html: Added. * fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.png: Added. * fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.txt: Added. * fast/regions/layers/dynamic-layer-removed-with-no-layout.html: Added. * fast/regions/layers/float-region-promoted-to-layer-expected.html: Added. * fast/regions/layers/float-region-promoted-to-layer.html: Added. * fast/regions/layers/regions-promoted-to-layers-expected.txt: Added. * fast/regions/layers/regions-promoted-to-layers-horizontal-bt-expected.txt: Added. * fast/regions/layers/regions-promoted-to-layers-horizontal-bt.html: Added. * fast/regions/layers/regions-promoted-to-layers-vertical-lr-expected.txt: Added. * fast/regions/layers/regions-promoted-to-layers-vertical-lr.html: Added. * fast/regions/layers/regions-promoted-to-layers-vertical-rl-expected.txt: Added. * fast/regions/layers/regions-promoted-to-layers-vertical-rl.html: Added. * fast/regions/layers/regions-promoted-to-layers.html: Added. Updated existing tests that now have CSS Regions that require a RenderLayer. * fast/regions/autoheight-regions-mark-expected.txt: * fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: * fast/repaint/region-painting-via-layout-expected.txt: * platform/mac/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: * platform/mac/fast/regions/overflow-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt: * platform/mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: * platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: * platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154072 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
http://webkit.org/b/119520akling@apple.com authored
<http://webkit.org/b/119520> REGRESSION(154062): fast/repaint/caret-jump-between-nodes.html flakes on bots. Unreviewed. This isn't working out. I can't get it to blink the caret a consistent number of times. Removing the test for now to stop making bots red. * fast/repaint/caret-jump-between-nodes-expected.txt: Removed. * fast/repaint/caret-jump-between-nodes.html: Removed. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154065 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
rwlbuis@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=108187 Reviewed by David Hyatt. Source/WebCore: Don't draw the outline if the rectangle to draw is empty. Test: fast/css/outline-negative.html * rendering/RenderInline.cpp: (WebCore::RenderInline::paintOutlineForLine): LayoutTests: Add testcase from bug with small adjustments. * fast/css/outline-negative-expected.txt: Added. * fast/css/outline-negative.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154064 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
akling@apple.com authored
<http://webkit.org/b/119520> Unreviewed, remove the description text from this repaint test in an attempt to get consistent cross-platform results. * fast/repaint/caret-jump-between-nodes-expected.txt: * fast/repaint/caret-jump-between-nodes.html: * platform/gtk/fast/repaint/caret-jump-between-nodes-expected.txt: Removed. * platform/qt-5.0-wk2/fast/repaint/caret-jump-between-nodes-expected.txt: Removed. * platform/qt/fast/repaint/caret-jump-between-nodes-expected.txt: Removed. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154062 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-