Title: [132804] trunk
Revision
132804
Author
[email protected]
Date
2012-10-29 07:52:18 -0700 (Mon, 29 Oct 2012)

Log Message

[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 <[email protected]> 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:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (132803 => 132804)


--- trunk/LayoutTests/ChangeLog	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/LayoutTests/ChangeLog	2012-10-29 14:52:18 UTC (rev 132804)
@@ -1,3 +1,19 @@
+2012-10-29  Christophe Dumez  <[email protected]>
+
+        [WK2][WKTR] Enable Shadow DOM at runtime if compiled with SHADOW_DOM support
+        https://bugs.webkit.org/show_bug.cgi?id=100668
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        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:
+
 2012-10-29  Csaba Osztrogonác  <[email protected]>
 
         [Qt] Text with zero font size renders as X px sometimes, causing fast/text/zero-font-size-2.html to fail

Modified: trunk/LayoutTests/platform/efl-wk2/TestExpectations (132803 => 132804)


--- trunk/LayoutTests/platform/efl-wk2/TestExpectations	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/LayoutTests/platform/efl-wk2/TestExpectations	2012-10-29 14:52:18 UTC (rev 132804)
@@ -256,6 +256,9 @@
 # NPP_SetWindow is not called during plugin destruction on X11.
 webkit.org/b/63261 plugins/npp-set-window-called-during-destruction.html [ Failure ]
 
+# Focus navigation behaves differently than in DRT
+webkit.org/b/100669 fast/dom/shadow/focus-navigation.html [ Failure ]
+
 # Delete plugin failures.
 webkit.org/b/98740 plugins/npruntime/delete-plugin-within-hasProperty-return-false.html [ Failure ]
 webkit.org/b/98740 plugins/npruntime/delete-plugin-within-hasProperty-return-true.html [ Failure ]

Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (132803 => 132804)


--- trunk/LayoutTests/platform/mac-wk2/TestExpectations	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations	2012-10-29 14:52:18 UTC (rev 132804)
@@ -268,6 +268,10 @@
 # Causes next test to crash
 webkit.org/b/98960 fast/parser/document-open-in-unload.html [ Skip ]
 
+# ENABLE(SHADOW_DOM) is disabled.
+webkit.org/b/76359 editing/shadow [ Skip ]
+webkit.org/b/76359 fast/dom/shadow [ Skip ]
+
 ### END OF (1) Classified failures with bug reports
 ########################################
 

Modified: trunk/LayoutTests/platform/wk2/TestExpectations (132803 => 132804)


--- trunk/LayoutTests/platform/wk2/TestExpectations	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/LayoutTests/platform/wk2/TestExpectations	2012-10-29 14:52:18 UTC (rev 132804)
@@ -632,10 +632,6 @@
 fast/events/moving-text-should-fire-drop-and-dragend-events-2.html
 editing/pasteboard/drag-drop-url-with-style.html
 
-# ENABLE(SHADOW_DOM) is disabled.
-editing/shadow
-fast/dom/shadow
-
 # ENABLE(LINK_PRERENDER) is disabled.
 fast/dom/HTMLLinkElement/prerender-insert-after-stop.html
 fast/dom/HTMLLinkElement/prerender-remove-after-stop.html

Modified: trunk/Source/WebKit2/ChangeLog (132803 => 132804)


--- trunk/Source/WebKit2/ChangeLog	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/Source/WebKit2/ChangeLog	2012-10-29 14:52:18 UTC (rev 132804)
@@ -1,5 +1,24 @@
 2012-10-29  Christophe Dumez  <[email protected]>
 
+        [WK2][WKTR] Enable Shadow DOM at runtime if compiled with SHADOW_DOM support
+        https://bugs.webkit.org/show_bug.cgi?id=100668
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        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):
+
+2012-10-29  Christophe Dumez  <[email protected]>
+
         [EFL][WK2] Fix cursor change detection in EwkViewImpl::setCursor()
         https://bugs.webkit.org/show_bug.cgi?id=100662
 

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.cpp (132803 => 132804)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.cpp	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.cpp	2012-10-29 14:52:18 UTC (rev 132804)
@@ -329,6 +329,11 @@
     toImpl(bundleRef)->setSerialLoadingEnabled(enabled);
 }
 
+void WKBundleSetShadowDOMEnabled(WKBundleRef bundleRef, bool enabled)
+{
+    toImpl(bundleRef)->setShadowDOMEnabled(enabled);
+}
+
 void WKBundleDispatchPendingLoadRequests(WKBundleRef bundleRef)
 {
     toImpl(bundleRef)->dispatchPendingLoadRequests();

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h (132803 => 132804)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h	2012-10-29 14:52:18 UTC (rev 132804)
@@ -102,6 +102,7 @@
 
 WK_EXPORT void WKBundleSetTabKeyCyclesThroughElements(WKBundleRef bundle, WKBundlePageRef page, bool enabled);
 WK_EXPORT void WKBundleSetSerialLoadingEnabled(WKBundleRef bundle, bool enabled);
+WK_EXPORT void WKBundleSetShadowDOMEnabled(WKBundleRef bundle, bool enabled);
 WK_EXPORT void WKBundleDispatchPendingLoadRequests(WKBundleRef bundle);
 
 #ifdef __cplusplus

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp (132803 => 132804)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp	2012-10-29 14:52:18 UTC (rev 132804)
@@ -70,6 +70,10 @@
 #include <wtf/OwnArrayPtr.h>
 #include <wtf/PassOwnArrayPtr.h>
 
+#if ENABLE(SHADOW_DOM)
+#include <WebCore/RuntimeEnabledFeatures.h>
+#endif
+
 using namespace WebCore;
 using namespace JSC;
 
@@ -622,6 +626,15 @@
     resourceLoadScheduler()->setSerialLoadingEnabled(enabled);
 }
 
+void InjectedBundle::setShadowDOMEnabled(bool enabled)
+{
+#if ENABLE(SHADOW_DOM)
+    RuntimeEnabledFeatures::setShadowDOMEnabled(enabled);
+#else
+    UNUSED_PARAM(enabled);
+#endif
+}
+
 void InjectedBundle::dispatchPendingLoadRequests()
 {
     resourceLoadScheduler()->servePendingRequests();

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.h (132803 => 132804)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.h	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.h	2012-10-29 14:52:18 UTC (rev 132804)
@@ -178,6 +178,7 @@
 
     void setTabKeyCyclesThroughElements(WebPage*, bool enabled);
     void setSerialLoadingEnabled(bool);
+    void setShadowDOMEnabled(bool);
     void dispatchPendingLoadRequests();
 
 private:

Modified: trunk/Tools/ChangeLog (132803 => 132804)


--- trunk/Tools/ChangeLog	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/Tools/ChangeLog	2012-10-29 14:52:18 UTC (rev 132804)
@@ -1,3 +1,17 @@
+2012-10-29  Christophe Dumez  <[email protected]>
+
+        [WK2][WKTR] Enable Shadow DOM at runtime if compiled with SHADOW_DOM support
+        https://bugs.webkit.org/show_bug.cgi?id=100668
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        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):
+
 2012-10-29  Yael Aharon  <[email protected]>
 
         [EFL][AC] Fix bugs preventing us from running layout tests with AC turned on

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp (132803 => 132804)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp	2012-10-29 14:50:24 UTC (rev 132803)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp	2012-10-29 14:52:18 UTC (rev 132804)
@@ -253,6 +253,7 @@
     WKBundleSetPopupBlockingEnabled(m_bundle, m_pageGroup, false);
     WKBundleSetAlwaysAcceptCookies(m_bundle, false);
     WKBundleSetSerialLoadingEnabled(m_bundle, false);
+    WKBundleSetShadowDOMEnabled(m_bundle, true);
 
     WKBundleRemoveAllUserContent(m_bundle, m_pageGroup);
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to