Title: [217557] trunk
Revision
217557
Author
[email protected]
Date
2017-05-30 08:41:26 -0700 (Tue, 30 May 2017)

Log Message

[Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=172709

Reviewed by Brent Fulgham.

Source/WebKit/win:

Add method to exit fullscreen mode.

* Interfaces/IWebViewPrivate.idl:
* WebView.cpp:
(WebView::exitFullscreenIfNeeded):
* WebView.h:

Tools:

Exit fullscreen mode after a fullscreen test.

* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebViewToConsistentStateBeforeTesting):

LayoutTests:

* platform/win/TestExpectations:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (217556 => 217557)


--- trunk/LayoutTests/ChangeLog	2017-05-30 15:33:02 UTC (rev 217556)
+++ trunk/LayoutTests/ChangeLog	2017-05-30 15:41:26 UTC (rev 217557)
@@ -1,3 +1,12 @@
+2017-05-30  Per Arne Vollan  <[email protected]>
+
+        [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
+        https://bugs.webkit.org/show_bug.cgi?id=172709
+
+        Reviewed by Brent Fulgham.
+
+        * platform/win/TestExpectations:
+
 2017-05-30  Adrian Perez de Castro  <[email protected]>
 
         [GTK] Test cases for typehead in form menu lists should start from known state

Modified: trunk/LayoutTests/platform/win/TestExpectations (217556 => 217557)


--- trunk/LayoutTests/platform/win/TestExpectations	2017-05-30 15:33:02 UTC (rev 217556)
+++ trunk/LayoutTests/platform/win/TestExpectations	2017-05-30 15:41:26 UTC (rev 217557)
@@ -3994,7 +3994,6 @@
 http/tests/websocket/tests/hybi/inspector/send-and-receive.html [ Skip ]
 http/tests/websocket/tests/hybi/inspector/server-close.html [ Skip ]
 # Unexpected flakiness tracked in webkit.org/b/172437.
-fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html [ Failure Pass ]
 imported/w3c/web-platform-tests/fetch/api/cors/cors-cookies.any.worker.html [ Failure Pass ]
 imported/w3c/web-platform-tests/fetch/api/credentials/cookies.any.html [ Failure Pass ]
 imported/w3c/web-platform-tests/html/semantics/embedded-content/the-area-element/area-shape.html [ Failure Pass ]

Modified: trunk/Source/WebKit/win/ChangeLog (217556 => 217557)


--- trunk/Source/WebKit/win/ChangeLog	2017-05-30 15:33:02 UTC (rev 217556)
+++ trunk/Source/WebKit/win/ChangeLog	2017-05-30 15:41:26 UTC (rev 217557)
@@ -1,3 +1,17 @@
+2017-05-30  Per Arne Vollan  <[email protected]>
+
+        [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
+        https://bugs.webkit.org/show_bug.cgi?id=172709
+
+        Reviewed by Brent Fulgham.
+
+        Add method to exit fullscreen mode.
+
+        * Interfaces/IWebViewPrivate.idl:
+        * WebView.cpp:
+        (WebView::exitFullscreenIfNeeded):
+        * WebView.h:
+
 2017-05-24  Per Arne Vollan  <[email protected]>
 
         [Win] Create unique network storage session for each DRT.

Modified: trunk/Source/WebKit/win/Interfaces/IWebViewPrivate.idl (217556 => 217557)


--- trunk/Source/WebKit/win/Interfaces/IWebViewPrivate.idl	2017-05-30 15:33:02 UTC (rev 217556)
+++ trunk/Source/WebKit/win/Interfaces/IWebViewPrivate.idl	2017-05-30 15:41:26 UTC (rev 217557)
@@ -348,3 +348,9 @@
 {
     HRESULT setVisibilityState([in] WebPageVisibilityState);
 }
+
+[uuid(05375C57-A03B-463A-A5D9-0A9F6A61C779)]
+interface IWebViewPrivate5 : IWebViewPrivate4
+{
+    HRESULT exitFullscreenIfNeeded();
+}

Modified: trunk/Source/WebKit/win/WebView.cpp (217556 => 217557)


--- trunk/Source/WebKit/win/WebView.cpp	2017-05-30 15:33:02 UTC (rev 217556)
+++ trunk/Source/WebKit/win/WebView.cpp	2017-05-30 15:41:26 UTC (rev 217557)
@@ -2890,6 +2890,8 @@
         *ppvObject = static_cast<IWebViewPrivate3*>(this);
     else if (IsEqualGUID(riid, IID_IWebViewPrivate4))
         *ppvObject = static_cast<IWebViewPrivate4*>(this);
+    else if (IsEqualGUID(riid, IID_IWebViewPrivate5))
+        *ppvObject = static_cast<IWebViewPrivate5*>(this);
     else if (IsEqualGUID(riid, IID_IWebIBActions))
         *ppvObject = static_cast<IWebIBActions*>(this);
     else if (IsEqualGUID(riid, IID_IWebViewCSS))
@@ -7833,3 +7835,10 @@
 
     return S_OK;
 }
+
+HRESULT WebView::exitFullscreenIfNeeded()
+{
+    if (fullScreenController() && fullScreenController()->isFullScreen())
+        fullScreenController()->close();
+    return S_OK;
+}

Modified: trunk/Source/WebKit/win/WebView.h (217556 => 217557)


--- trunk/Source/WebKit/win/WebView.h	2017-05-30 15:33:02 UTC (rev 217556)
+++ trunk/Source/WebKit/win/WebView.h	2017-05-30 15:41:26 UTC (rev 217557)
@@ -87,7 +87,7 @@
 
 class WebView 
     : public IWebView
-    , public IWebViewPrivate4
+    , public IWebViewPrivate5
     , public IWebIBActions
     , public IWebViewCSS
     , public IWebViewEditing
@@ -402,6 +402,9 @@
     // IWebViewPrivate4
     HRESULT STDMETHODCALLTYPE setVisibilityState(WebPageVisibilityState);
 
+    // IWebViewPrivate5
+    HRESULT STDMETHODCALLTYPE exitFullscreenIfNeeded();
+
     // WebView
     bool shouldUseEmbeddedView(const WTF::String& mimeType) const;
 

Modified: trunk/Tools/ChangeLog (217556 => 217557)


--- trunk/Tools/ChangeLog	2017-05-30 15:33:02 UTC (rev 217556)
+++ trunk/Tools/ChangeLog	2017-05-30 15:41:26 UTC (rev 217557)
@@ -1,3 +1,15 @@
+2017-05-30  Per Arne Vollan  <[email protected]>
+
+        [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
+        https://bugs.webkit.org/show_bug.cgi?id=172709
+
+        Reviewed by Brent Fulgham.
+
+        Exit fullscreen mode after a fullscreen test.
+
+        * DumpRenderTree/win/DumpRenderTree.cpp:
+        (resetWebViewToConsistentStateBeforeTesting):
+
 2017-05-30  Antti Koivisto  <[email protected]>
 
         ASSERTION FAILED: !needsLayout() in com.apple.WebCore: WebCore::FrameView::paintContents in fast/events/tabindex-focus-blur-all.html on WK1

Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (217556 => 217557)


--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2017-05-30 15:33:02 UTC (rev 217556)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2017-05-30 15:41:26 UTC (rev 217557)
@@ -1013,6 +1013,9 @@
     COMPtr<IWebFramePrivate> framePrivate;
     if (SUCCEEDED(frame->QueryInterface(&framePrivate)))
         framePrivate->clearOpener();
+
+    COMPtr<IWebViewPrivate5> webViewPrivate5(Query, webView);
+    webViewPrivate5->exitFullscreenIfNeeded();
 }
 
 static void sizeWebViewForCurrentTest()
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to