[EFL][WK2] Avoid useless assignment in EwkViewImpl::setCustomTextEncodingName()
https://bugs.webkit.org/show_bug.cgi?id=100667

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-10-29
Reviewed by Kenneth Rohde Christiansen.

Remove useless m_customEncoding assignment in EwkViewImpl::setCustomTextEncodingName()
since the member is anyway assigned in EwkViewImpl::customTextEncodingName().

Have EwkViewImpl::setCustomTextEncodingName() take a String in argument instead
of a const char* to make the API more C++ and since we don't need a const char*
to assign to m_customEncoding anymore.

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::setCustomTextEncodingName):
* UIProcess/API/efl/EwkViewImpl.h:
(EwkViewImpl):
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_setting_encoding_custom_set):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132800 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Coordinated Graphics: Make sure that we release images immediately when purging resources
https://bugs.webkit.org/show_bug.cgi?id=100661

Reviewed by Noam Rosenthal.

When we purge, we do both on the UI and web process at the same time,
both are expected to release references of the other process.
This creates problem when delaying the release of directly composited
images.

Release them immediately in that case.

Fixes the tst_QQuickWebView::removeFromCanvas API test.

* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
(WebKit::LayerTreeCoordinator::purgeReleasedImages):
(WebKit):
(WebKit::LayerTreeCoordinator::purgeBackingStores):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132801 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Text with zero font size renders as X px sometimes, causing fast/text/zero-font-size-2.html to fail
https://bugs.webkit.org/show_bug.cgi?id=100115

Reviewed by Noam Rosenthal.

Source/WebCore:

* platform/graphics/qt/FontQt.cpp:
(WebCore::Font::drawGlyphs):

LayoutTests:

* platform/qt/TestExpectations: Unskip fast/text/zero-font-size-2.html.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132802 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Fix cursor change detection in EwkViewImpl::setCursor()
https://bugs.webkit.org/show_bug.cgi?id=100662

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-10-29
Reviewed by Kenneth Rohde Christiansen.

Cursor change detection in EwkViewImpl::setCursor() relies on
addresses returned by Cursor::platformCursor(). However, the
value returned is currently assigned to a WKEinaSharedString
instead of a raw pointer. Therefore, the address is always
different and we keep recreating Evas Objects for the same
cursor.

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::EwkViewImpl):
(EwkViewImpl::setCursor): Call smartData() after same cursor
detection since it is not needed if the cursor has not changed
and it may affect performance.
* UIProcess/API/efl/EwkViewImpl.h:
(EwkViewImpl):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132803 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2][WKTR] Enable Shadow DOM at runtime if compiled with SHADOW_DOM support
https://bugs.webkit.org/show_bug.cgi?id=100668

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-10-29
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle API to enable Shadow DOM functionality. This is
now needed by WebKitTestRunner.

* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetShadowDOMEnabled):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setShadowDOMEnabled):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):

Tools:

Enable Shadow DOM functionality at run time in WebKitTestRunner
if compiled with SHADOW_DOM flag set. This is needed to run
the Shadow DOM layout tests.

* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):

LayoutTests:

Remove Shadow DOM layout tests from the global wk2 TestExpectations
and add it to the mac-wk2 one. EFL and GTK ports have Shadow DOM
enabled so they don't need to be skipped for those ports. The Qt port
is already skipping those tests in its global TestExpectations file.

* platform/efl-wk2/TestExpectations:
* platform/mac-wk2/TestExpectations:
* platform/wk2/TestExpectations:

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