[MSE][Mac] Report the intrinsic size of the media element
https://bugs.webkit.org/show_bug.cgi?id=125156

Reviewed by Eric Carlson.

* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::naturalSize): Pass to MediaSourcePrivateAVFObjC.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::sizeChanged): Added; Pass to MediaPlayer.
* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::naturalSize): Return the union of the naturalSizes of all active buffers.
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset): Notify the media player that the size changed.
(WebCore::SourceBufferPrivateAVFObjC::naturalSize): Return the size of the selected video track.
* platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.mm: Renamed from Source/WebCore/platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.cpp.
(WebCore::VideoTrackPrivateMediaSourceAVFObjC::assetTrack): Made const.
(WebCore::VideoTrackPrivateMediaSourceAVFObjC::naturalSize): Return the size of the AVAssetTrack.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161612 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Mac] Scrubbing performance of HD content with software decoding is poor.
https://bugs.webkit.org/show_bug.cgi?id=126705

Reviewed by Eric Carlson.

Instead of issuing a new seek before the previous one completes, wait until that seek's
completion handler is called, and then issue the new seek. This has the added benefit of
coalescing multiple incoming seeks so that only the last one is acted upon.

Save the parameters passed into seekToTime and bind them together in a std::function
to be replayed once the in-flight seek completes. To handle the case where a completion
handler fires after the media player is destroyed, add a weakPtrFactory and pass a
WeakPtr into the completion handler.

Clean up some ivars which are no longer necessary: remove m_seekCount and m_seekTime.

* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation): Initialize the
    WeakPtrFactory.
(WebCore::MediaPlayerPrivateAVFoundation::seekWithTolerance):
(WebCore::MediaPlayerPrivateAVFoundation::seeking): m_seekTime -> m_seeking.
(WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
(WebCore::MediaPlayerPrivateAVFoundationObjC::createWeakPtr):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::seekToTime):
(WebCore::MediaPlayerPrivateAVFoundationObjC::finishSeek):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161613 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Revert r161611, incorrect fix, will fix better.

* bindings/js/ScriptGlobalObject.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161614 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Marking should be generational
https://bugs.webkit.org/show_bug.cgi?id=126552

Reviewed by Geoffrey Garen.

Source/JavaScriptCore: 

Re-marking the same objects over and over is a waste of effort. This patch implements 
the sticky mark bit algorithm (along with our already-present write barriers) to reduce 
overhead during garbage collection caused by rescanning objects.

There are now two collection modes, EdenCollection and FullCollection. EdenCollections
only visit new objects or objects that were added to the remembered set by a write barrier.
FullCollections are normal collections that visit all objects regardless of their 
generation.

In this patch EdenCollections do not do anything in CopiedSpace. This will be fixed in 
https://bugs.webkit.org/show_bug.cgi?id=126555.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::visitAggregate):
* bytecode/CodeBlock.h:
(JSC::CodeBlockSet::mark):
* dfg/DFGOperations.cpp:
* heap/CodeBlockSet.cpp:
(JSC::CodeBlockSet::add):
(JSC::CodeBlockSet::traceMarked):
(JSC::CodeBlockSet::rememberCurrentlyExecutingCodeBlocks):
* heap/CodeBlockSet.h:
* heap/CopiedBlockInlines.h:
(JSC::CopiedBlock::reportLiveBytes):
* heap/CopiedSpace.cpp:
(JSC::CopiedSpace::didStartFullCollection):
* heap/CopiedSpace.h:
(JSC::CopiedSpace::heap):
* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::didAbandon):
(JSC::Heap::markRoots):
(JSC::Heap::copyBackingStores):
(JSC::Heap::addToRememberedSet):
(JSC::Heap::collectAllGarbage):
(JSC::Heap::collect):
(JSC::Heap::didAllocate):
(JSC::Heap::writeBarrier):
* heap/Heap.h:
(JSC::Heap::isInRememberedSet):
(JSC::Heap::operationInProgress):
(JSC::Heap::shouldCollect):
(JSC::Heap::isCollecting):
(JSC::Heap::isWriteBarrierEnabled):
(JSC::Heap::writeBarrier):
* heap/HeapOperation.h:
* heap/MarkStack.cpp:
(JSC::MarkStackArray::~MarkStackArray):
(JSC::MarkStackArray::clear):
(JSC::MarkStackArray::fillVector):
* heap/MarkStack.h:
* heap/MarkedAllocator.cpp:
(JSC::isListPagedOut):
(JSC::MarkedAllocator::isPagedOut):
(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::addBlock):
(JSC::MarkedAllocator::removeBlock):
(JSC::MarkedAllocator::reset):
* heap/MarkedAllocator.h:
(JSC::MarkedAllocator::MarkedAllocator):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::clearMarks):
(JSC::MarkedBlock::clearRememberedSet):
(JSC::MarkedBlock::clearMarksWithCollectionType):
(JSC::MarkedBlock::lastChanceToFinalize):
* heap/MarkedBlock.h: Changed atomSize to 16 bytes because we have no objects smaller
than 16 bytes. This is also to pay for the additional Bitmap for the remembered set.
(JSC::MarkedBlock::didConsumeEmptyFreeList):
(JSC::MarkedBlock::setRemembered):
(JSC::MarkedBlock::clearRemembered):
(JSC::MarkedBlock::atomicClearRemembered):
(JSC::MarkedBlock::isRemembered):
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::~MarkedSpace):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::visitWeakSets):
(JSC::MarkedSpace::reapWeakSets):
(JSC::VerifyMarked::operator()):
(JSC::MarkedSpace::clearMarks):
* heap/MarkedSpace.h:
(JSC::ClearMarks::operator()):
(JSC::ClearRememberedSet::operator()):
(JSC::MarkedSpace::didAllocateInBlock):
(JSC::MarkedSpace::clearRememberedSet):
* heap/SlotVisitor.cpp:
(JSC::SlotVisitor::~SlotVisitor):
(JSC::SlotVisitor::clearMarkStack):
* heap/SlotVisitor.h:
(JSC::SlotVisitor::markStack):
(JSC::SlotVisitor::sharedData):
* heap/SlotVisitorInlines.h:
(JSC::SlotVisitor::internalAppend):
(JSC::SlotVisitor::unconditionallyAppend):
(JSC::SlotVisitor::copyLater):
(JSC::SlotVisitor::reportExtraMemoryUsage):
(JSC::SlotVisitor::heap):
* jit/Repatch.cpp:
* runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::visitChildren):
* runtime/JSPropertyNameIterator.h:
(JSC::StructureRareData::setEnumerationCache):
* runtime/JSString.cpp:
(JSC::JSString::visitChildren):
* runtime/StructureRareDataInlines.h:
(JSC::StructureRareData::setPreviousID):
(JSC::StructureRareData::setObjectToStringValue):
* runtime/WeakMapData.cpp:
(JSC::WeakMapData::visitChildren):

Source/WTF: 

* wtf/Bitmap.h:
(WTF::WordType>::count): Added a cast that became necessary when Bitmap
is used with smaller types than int32_t.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161615 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WebGL] Expose texture_float_linear and texture_half_float to getSupportedExtensions
https://bugs.webkit.org/show_bug.cgi?id=126732

Reviewed by Tim Horton.

When I added support for these two extensions, I forgot to add their
names to the list in getSupportedExtensions.

Covered by the Khronos test: conformance/extensions/get-extension.html

* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::getSupportedExtensions): Add OES_texture_float_linear
and OES_texture_half_float if the WebGL context supports them.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161616 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed Windows build fix for r161563.

Remove stale forward declaration causing namespace ambiguity
later on in a Windows AllInOne file that picked it up. Also
remove a few stale functions that are not used and accidentally
got added back in when the file changed names.

* bindings/js/ScriptGlobalObject.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161617 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update the LLINT CLoop bot infrastructure.  
This will require a build master restart.
        
Unreviewed. 
        
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(CompileLLINTCLoop):
(RunLLINTCloopTests):
(BuildAndTestLLINTCLoopFactory):
(BuildAndTestLLINTCLoopFactory.__init__):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161618 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rollout 161618.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161619 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove unused FrameLoader member functions
https://bugs.webkit.org/show_bug.cgi?id=126734

Reviewed by Andreas Kling.

* loader/FrameLoader.cpp:
* loader/FrameLoader.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161620 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix a build break on EFL debug build
https://bugs.webkit.org/show_bug.cgi?id=126735

Reviewed by Anders Carlsson.

No new tests, just build fix.

* platform/ThreadTimers.cpp:
(WebCore::ThreadTimers::sharedTimerFiredInternal):  Add parentheses.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161621 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Clean up ProgressTracker a little
https://bugs.webkit.org/show_bug.cgi?id=126738

Reviewed by Dan Bernstein.

Use Frame& where the frame can never be null, avoid an extra hash lookup and
switch the m_progressItems map over to std::unique_ptr.

* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::frameStartedLoading):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::FrameProgressTracker::~FrameProgressTracker):
(WebCore::FrameLoader::FrameProgressTracker::progressStarted):
(WebCore::FrameLoader::FrameProgressTracker::progressCompleted):
* loader/ProgressTracker.cpp:
(WebCore::ProgressTracker::progressStarted):
(WebCore::ProgressTracker::progressCompleted):
(WebCore::ProgressTracker::incrementProgress):
* loader/ProgressTracker.h:
* loader/ResourceLoadNotifier.cpp:
(WebCore::ResourceLoadNotifier::didReceiveData):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161622 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Mac] .mp3 media document controls missing their background
https://bugs.webkit.org/show_bug.cgi?id=126683

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-document-audio-controls-visible.html

<video> elements in a media document are created with an intrinsic size of 300x1,
with the expectation that either the size will be updated if the media has a video
track, or the controls will visibly overflow if the media is audio-only. Since the
shadow root is a flex-box, the panel was being collapsed to 1px high, so give the panel
a minimum height to prevent that. Also, disable "fading out" the controls in a
media document for an audio-only file by adding a "no-video" class to the panel
and adding a media document-only rule to force the controls to always be visible.

* Modules/mediacontrols/mediaControlsApple.css:
(video:-webkit-full-page-media::-webkit-media-controls-panel.no-video):
(audio::-webkit-media-controls-panel):
* Modules/mediacontrols/mediaControlsApple.js:
(Controller): Call updateHasVideo().
(Controller.prototype.addVideoListeners): Add video track listeners.
(Controller.prototype.removeVideoListeners): Remove same.
(Controller.prototype.updateHasVideo): Add a 'no-video' class to the panel if
    the video element has no video tracks.

LayoutTests:

* media/media-document-audio-controls-visible-expected.txt: Added.
* media/media-document-audio-controls-visible.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161623 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Add APIs for setting and getting the default text encoding name
https://bugs.webkit.org/show_bug.cgi?id=126736

Reviewed by Gyuyoung Kim.

Add APIs to set and get the default text encoding name.

* UIProcess/API/efl/ewk_settings.cpp:
(ewk_settings_default_text_encoding_name_get):
(ewk_settings_default_text_encoding_name_set):
* UIProcess/API/efl/ewk_settings.h:
* UIProcess/API/efl/tests/test_ewk2_settings.cpp:
(TEST_F):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161624 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Implement NetworkResourceLoader::receivedCancellation
https://bugs.webkit.org/show_bug.cgi?id=126129

Reviewed Alexey Proskuryakov.

Implement ResourceHandleClient::receivedCancellation() in the
network process to cancel the load when cancellation is received
from the authentication manager like the web process does.

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::receivedCancellation): Cancel the load.
* NetworkProcess/NetworkResourceLoader.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161625 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] Implement visual overflow computation for inline elements
https://bugs.webkit.org/show_bug.cgi?id=125291

Reviewed by David Hyatt.

Source/WebCore:

The patch implements visual overflow computation for inline elements per region. The algorithm
uses the container region of each root line box to determine the lines in a region generated by
a RenderInline. The overflow of a RenderInline inside a region is the smallest rectangle that fits
all the line boxes belonging to that region.

The patch also correctly flips for writing mode the overflow of a renderer before clipping with it.

Tests: fast/regions/overflow-in-variable-width-regions-inline-bt.html
       fast/regions/overflow-in-variable-width-regions-inline-continuation.html
       fast/regions/overflow-in-variable-width-regions-inline-lr.html
       fast/regions/overflow-in-variable-width-regions-inline-rl.html
       fast/regions/overflow-in-variable-width-regions-inline.html

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::objectShouldPaintInFlowRegion):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::updateAlwaysCreateLineBoxes): Always create line boxes for RenderInline
(WebCore::RenderInline::linesVisualOverflowBoundingBoxInRegion):
* rendering/RenderInline.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::visualOverflowRectForBox):
(WebCore::RenderRegion::visualOverflowRectForBoxForPropagation):
* rendering/RenderRegion.h:

LayoutTests:

Tests for inline elements overflow correct painting inside regions.

* fast/regions/overflow-in-variable-width-regions-inline-bt-expected.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline-bt.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline-continuation-expected.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline-continuation.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline-expected.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline-lr-expected.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline-lr.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline-rl-expected.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline-rl.html: Added.
* fast/regions/overflow-in-variable-width-regions-inline.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161626 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Enable the DFG_JIT on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=126742

Patch by Hunseop Jeong <hs85.jeong@samsung.com> on 2014-01-10
Reviewed by Gyuyoung Kim.

Turn on ENABLE_DFG_JIT on ARMv7 for EFL.

* wtf/Platform.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161627 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add support for blendmode to Core Animation layer.
Patch by Rik Cabanier, Dean Jackson and Mihai Tica.

https://bugs.webkit.org/show_bug.cgi?id=99200

Patch by Mihai Tica <mitica@adobe.com> on 2014-01-10
Reviewed by Dirk Schulze.

Source/WebCore:

Tests: css3/compositing/blend-mode-layers.html
       css3/compositing/blend-mode-overflow.html
       css3/compositing/blend-mode-reflection.html
       css3/compositing/blend-mode-should-not-have-compositing-layer.html
       css3/compositing/blend-mode-simple.html

* WebCore.exp.in: export PlatformCALayer::setBlendMode for WebKit::PlatformCALayerRemote
* WebCore.xcodeproj/project.pbxproj: Add PlatformCAFiltersMac.h
* platform/graphics/GraphicsLayer.cpp: add blendMode member
(WebCore::GraphicsLayer::GraphicsLayer):
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::blendMode):
(WebCore::GraphicsLayer::setBlendMode):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setBlendMode):
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): add call to updateBlendMode()
(WebCore::GraphicsLayerCA::updateBlendMode):
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/ca/PlatformCAFilters.h:
* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/mac/PlatformCAFiltersMac.h: Added.
* platform/graphics/ca/mac/PlatformCAFiltersMac.mm:
(PlatformCAFilters::setBlendingFiltersOnLayer): set a compositing CAFilter on CALayer
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayer::setBlendMode): call to PlatformCAFilters::setBlendingFiltersOnLayer
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::updateBlendMode):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::setBlendMode):
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::CompositingState::CompositingState): add m_subtreeHasBlending member
(WebCore::RenderLayerCompositor::computeCompositingRequirements): promote layer if subtree has blending
(WebCore::RenderLayerCompositor::reasonsForCompositing):
(WebCore::RenderLayerCompositor::logReasonsForCompositing): log blending reason
(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason): add blending reason
* rendering/RenderLayerCompositor.h:

LayoutTests:

* css3/compositing/blend-mode-layers.html: Added.
* css3/compositing/blend-mode-overflow-expected.txt: Added.
* css3/compositing/blend-mode-overflow.html: Added.
* css3/compositing/blend-mode-reflection.html: Added.
* css3/compositing/blend-mode-should-not-have-compositing-layer-expected.txt: Added.
* css3/compositing/blend-mode-should-not-have-compositing-layer.html: Added.
* css3/compositing/blend-mode-simple.html: Added.
* css3/compositing/should-have-compositing-layer-expected.txt:
* platform/efl/TestExpectations: Efl doesn't support blend modes at the moment.
* platform/mac/css3/compositing/blend-mode-layers-expected.png: Added.
* platform/mac/css3/compositing/blend-mode-layers-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-overflow-expected.png: Added.
* platform/mac/css3/compositing/blend-mode-reflection-expected.png: Added.
* platform/mac/css3/compositing/blend-mode-reflection-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-simple-expected.png: Added.
* platform/mac/css3/compositing/blend-mode-simple-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161628 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[SVG] Accept HTML and MathML namespaces as valid requiredExtensions
https://bugs.webkit.org/show_bug.cgi?id=88188

Patch by Frédéric Wang <fred.wang@free.fr> on 2014-01-10
Reviewed by Dirk Schulze.

Source/WebCore:

When HTML and MathML are used as foreign objects of an SVG image, it is
important for Web authors to be able to specify a fallback content for
SVG-only readers or browsers without MathML support. We rely on the
requiredExtensions for that purpose and we use the XHTML/MathML
namespaces as suggested in SVG Tiny 1.2 and implemented in Gecko.

Tests: svg/custom/conditional-processing-1.svg
       svg/custom/conditional-processing-2.html
       svg/dom/SVGTests.html

* svg/SVGSwitchElement.cpp: Remove an incorrect FIXME comment and replace it with a reference to bug 74749.
(WebCore::SVGSwitchElement::childShouldCreateRenderer):
* svg/SVGTests.cpp: Check if the list of required extensions contains only the XHTML/MathML namespaces.
(WebCore::SVGTests::hasExtension):
(WebCore::SVGTests::isValid):

LayoutTests:

conditional-processing-1 verifies that indeed a renderer object is only
created for the first "valid" SVG element of a <switch>, contrary to
what an incorrect FIXME comment said. conditional-processing-2 verifies
that the <switch> takes into account XHTML and MathML namespaces in the
requiredExtensions attribute to decide which SVG element is "valid".
SVGTests.html verifies the SVGTests interface of SVG DOM: three
SVGStringList attributes (already tested in svg/dom/SVGStringList.html)
and the hasExtension() function.

* svg/custom/conditional-processing-1-expected.txt: Added.
* svg/custom/conditional-processing-1.svg: Added.
* svg/custom/conditional-processing-2-expected.txt: Added.
* svg/custom/conditional-processing-2.html: Added.
* svg/dom/SVGTests-expected.txt: Added.
* svg/dom/SVGTests.html: Added.
* svg/dom/script-tests/SVGTests.js: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161629 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Crash when mutating SVG text with transform
https://bugs.webkit.org/show_bug.cgi?id=126744

Reviewed by Dirk Schulze.

Source/WebCore: 

Test: svg/custom/mutation-text-transform-crash.html
        
Text-transform property triggers subtreeTextDidChange when an SVG text renderer is
being added to the render tree. The function assumes the child is already fully in the tree
but in this case we are still in middle of adding it.

* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::subtreeTextDidChange):
        
    Bail out if the changed RenderSVGInlineText can't be found from m_layoutAttributes.
    This means that subtreeChildWasAdded hasn't been invoked yet for it and there is nothing
    to update. The required updates will happen in subtreeChildWasAdded.

LayoutTests: 

* svg/custom/mutation-text-transform-crash-expected.txt: Added.
* svg/custom/mutation-text-transform-crash.html: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161630 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSSRegions] Disable accelerated compositing for fixed elements in regions tests
https://bugs.webkit.org/show_bug.cgi?id=126743

Reviewed by Dirk Schulze.

Once we enable the support of accelerated compositing for fixed positioned elements in regions
in https://bugs.webkit.org/show_bug.cgi?id=125144, those tests will be added into compositing/regions as well.

* fast/regions/fixed-inside-fixed-in-named-flow-expected.html:
* fast/regions/fixed-inside-fixed-in-named-flow.html:
* fast/regions/fixed-pos-elem-in-region-expected.html:
* fast/regions/fixed-pos-elem-in-region.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161631 268f45cc-cd09-0410-ab3c-d52691b4dbfc