SVG root element accepts background color but fails to repaint it
https://bugs.webkit.org/show_bug.cgi?id=63153

Reviewed by Dean Jackson.

Source/WebCore:
This is back ported from Blink. Don't know the exact commit though.
The patch checks if the SVGSVGElement is an outermost root element.
If it is, mark the whole element for repaint.

Test: svg/custom/svg-root-background.html

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateHasBoxDecorations):
(WebCore::RenderBoxModelObject::updateFromStyle):
* rendering/RenderBoxModelObject.h:
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::RenderSVGRoot):
(WebCore::RenderSVGRoot::layout):
(WebCore::RenderSVGRoot::paintReplaced):
(WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
    This is a simple optimization by taking the necessary parts
    from RenderReplaced and SVGRenderSupport.
* rendering/svg/RenderSVGRoot.h:

LayoutTests:
Check that background color updates if the size of an outermost
root SVG element changes.

* svg/custom/svg-root-background-expected.png: Added.
* svg/custom/svg-root-background-expected.txt: Added.
* svg/custom/svg-root-background.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168674 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Fix ewk_view_navigation test in EWK2ViewTest
https://bugs.webkit.org/show_bug.cgi?id=132817

Reviewed by Dirk Schulze.

To load test html pages, call ewk_view_uri_set() instead of EWK2UnitTestServer.
Besides this patch adds test html page for ewk_view_navigation unit test.

* UIProcess/API/efl/tests/resources/Page1.html: Added.
* UIProcess/API/efl/tests/resources/Page2.html: Added.
* UIProcess/API/efl/tests/resources/Page3.html: Added.
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebKit2 on iOS needs to capture the main thread's floating point environment.
<https://webkit.org/b/132755>

Reviewed by Geoffrey Garen.


Source/WebCore: 
For iOS, WorkerThread::workerThread() expects to be able to initialize the
worker thread's floating point environment to be the same as the one in the
main thread.  The FP env of the main thread is expected to have been captured
in the mainThreadFEnv global.  On WebKit2 for iOS, we neglected to initialize
mainThreadFEnv.

We now introduce a FloatingPointEnvironment class that will encapsulate the main
thread (aka "UIThread") fenv, and we'll call FloatingPointEnv::saveMainThreadEnvironment()
from ChildProcess::platformInitialize() to ensure that the FloatingPointEnvironment
singleton instance is initialized properly for WebKit2.

In the ChildProcess::platformInitialize(), we also need to initialize the ARMv7
FP env to support denormalized numbers.  We'll do this before calling
saveMainThreadEnvironment().

Tests: fast/workers/worker-floating-point.html
       js/floating-point-denormalized.html

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* platform/ios/wak/FloatingPointEnvironment.cpp: Added.
(WebCore::FloatingPointEnvironment::env):
(WebCore::FloatingPointEnvironment::FloatingPointEnvironment):
(WebCore::FloatingPointEnvironment::enableDenormalSupport):
(WebCore::FloatingPointEnvironment::saveMainThreadEnvironment):
(WebCore::FloatingPointEnvironment::propagateMainThreadEnvironment):
* platform/ios/wak/FloatingPointEnvironment.h: Added.
* platform/ios/wak/WebCoreThread.h:
* platform/ios/wak/WebCoreThread.mm:
(RunWebThread):
(StartWebThread):
* workers/WorkerThread.cpp:
(WebCore::WorkerThread::workerThread):

Source/WebKit2: 
* Shared/mac/ChildProcessMac.mm:
(WebKit::ChildProcess::platformInitialize):
- Call FloatingPointEnv::enableNeededFloatingPointModes() to initialize
  the ARMv7 FP env to support denormalized numbers.
- Call FloatingPointEnv::saveMainThreadEnvironment() to capture the main thread
  fp env.

LayoutTests: 
* fast/workers/resources/worker-floating-point.js: Added.
(runTest1):
(doDiv):
(runTest2):
* fast/workers/worker-floating-point-expected.txt: Added.
* fast/workers/worker-floating-point.html: Added.
* js/floating-point-denormalized-expected.txt: Added.
* js/floating-point-denormalized.html: Added.
* js/script-tests/floating-point-denormalized.js: Added.



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