[Win] Implement the "--show-webview" option for Windows
authorbfulgham@apple.com <bfulgham@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 4 May 2015 20:46:09 +0000 (20:46 +0000)
committerbfulgham@apple.com <bfulgham@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 4 May 2015 20:46:09 +0000 (20:46 +0000)
https://bugs.webkit.org/show_bug.cgi?id=144589

Reviewed by Alex Christensen.

Add another runtime flag (--show-webview) that causes DumpRenderTree
to draw its view on-screen, rather than the standard offscreen mode.

* DumpRenderTree/win/DumpRenderTree.cpp:
(createWebViewAndOffscreenWindow): Honor the 'showWebView' flag.
(initializeGlobalsFromCommandLineOptions): Recognize the new
command-line argument, and set the global 'showWebView' state if
appropriate.

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

Tools/ChangeLog
Tools/DumpRenderTree/win/DumpRenderTree.cpp

index 74975bd..0986bfd 100644 (file)
@@ -1,3 +1,19 @@
+2015-05-04  Brent Fulgham  <bfulgham@apple.com>
+
+        [Win] Implement the "--show-webview" option for Windows
+        https://bugs.webkit.org/show_bug.cgi?id=144589
+
+        Reviewed by Alex Christensen.
+
+        Add another runtime flag (--show-webview) that causes DumpRenderTree
+        to draw its view on-screen, rather than the standard offscreen mode.
+
+        * DumpRenderTree/win/DumpRenderTree.cpp:
+        (createWebViewAndOffscreenWindow): Honor the 'showWebView' flag.
+        (initializeGlobalsFromCommandLineOptions): Recognize the new
+        command-line argument, and set the global 'showWebView' state if
+        appropriate.
+
 2015-05-04  Csaba Osztrogon√°c  <ossy@webkit.org>
 
         Remove dead code from TestInvocationCairo.cpp
 2015-05-04  Csaba Osztrogon√°c  <ossy@webkit.org>
 
         Remove dead code from TestInvocationCairo.cpp
index a48a6a4..d986cbf 100644 (file)
@@ -96,6 +96,7 @@ static bool gcBetweenTests = false;
 static bool printSeparators = false;
 static bool leakChecking = false;
 static bool printSupportedFeatures = false;
 static bool printSeparators = false;
 static bool leakChecking = false;
 static bool printSupportedFeatures = false;
+static bool showWebView = false;
 static RetainPtr<CFStringRef> persistentUserStyleSheetLocation;
 
 volatile bool done;
 static RetainPtr<CFStringRef> persistentUserStyleSheetLocation;
 
 volatile bool done;
@@ -1204,8 +1205,8 @@ IWebView* createWebViewAndOffscreenWindow(HWND* webViewWindow)
 {
     int maxViewWidth = TestRunner::viewWidth;
     int maxViewHeight = TestRunner::viewHeight;
 {
     int maxViewWidth = TestRunner::viewWidth;
     int maxViewHeight = TestRunner::viewHeight;
-    HWND hostWindow = CreateWindowEx(WS_EX_TOOLWINDOW, kDumpRenderTreeClassName, TEXT("DumpRenderTree"), WS_POPUP,
-      -maxViewWidth, -maxViewHeight, maxViewWidth, maxViewHeight, 0, 0, GetModuleHandle(0), 0);
+    HWND hostWindow = (showWebView) ? CreateWindowEx(WS_EX_TOOLWINDOW, kDumpRenderTreeClassName, TEXT("DumpRenderTree"), WS_POPUP, 100, 100, maxViewWidth, maxViewHeight, 0, 0, ::GetModuleHandle(0), nullptr)
+        : CreateWindowEx(WS_EX_TOOLWINDOW, kDumpRenderTreeClassName, TEXT("DumpRenderTree"), WS_POPUP, -maxViewWidth, -maxViewHeight, maxViewWidth, maxViewHeight, 0, 0, ::GetModuleHandle(0), nullptr);
 
     IWebView* webView = nullptr;
     HRESULT hr = WebKitCreateInstance(CLSID_WebView, 0, IID_IWebView, (void**)&webView);
 
     IWebView* webView = nullptr;
     HRESULT hr = WebKitCreateInstance(CLSID_WebView, 0, IID_IWebView, (void**)&webView);
@@ -1354,6 +1355,11 @@ static Vector<const char*> initializeGlobalsFromCommandLineOptions(int argc, con
             continue;
         }
 
             continue;
         }
 
+        if (!stricmp(argv[i], "--show-webview")) {
+            showWebView = true;
+            continue;
+        }
+
         tests.append(argv[i]);
     }
 
         tests.append(argv[i]);
     }