[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