OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "webkit/tools/test_shell/webview_host.h" | 5 #include "webkit/tools/test_shell/webview_host.h" |
6 | 6 |
7 #include "base/win_util.h" | 7 #include "base/win_util.h" |
8 #include "gfx/rect.h" | 8 #include "gfx/rect.h" |
9 #include "gfx/size.h" | 9 #include "gfx/size.h" |
10 #include "skia/ext/platform_canvas.h" | 10 #include "skia/ext/platform_canvas.h" |
11 #include "third_party/WebKit/WebKit/chromium/public/WebView.h" | 11 #include "third_party/WebKit/WebKit/chromium/public/WebView.h" |
12 #include "webkit/glue/webpreferences.h" | 12 #include "webkit/glue/webpreferences.h" |
13 #include "webkit/tools/test_shell/test_webview_delegate.h" | 13 #include "webkit/tools/test_shell/test_webview_delegate.h" |
14 | 14 |
15 using namespace WebKit; | 15 using namespace WebKit; |
16 | 16 |
17 static const wchar_t kWindowClassName[] = L"WebViewHost"; | 17 static const wchar_t kWindowClassName[] = L"WebViewHost"; |
18 | 18 |
19 /*static*/ | 19 /*static*/ |
20 WebViewHost* WebViewHost::Create(HWND parent_view, | 20 WebViewHost* WebViewHost::Create(HWND parent_view, |
21 TestWebViewDelegate* delegate, | 21 TestWebViewDelegate* delegate, |
| 22 WebDevToolsAgentClient* devToolsClient, |
22 const WebPreferences& prefs) { | 23 const WebPreferences& prefs) { |
23 WebViewHost* host = new WebViewHost(); | 24 WebViewHost* host = new WebViewHost(); |
24 | 25 |
25 static bool registered_class = false; | 26 static bool registered_class = false; |
26 if (!registered_class) { | 27 if (!registered_class) { |
27 WNDCLASSEX wcex = {0}; | 28 WNDCLASSEX wcex = {0}; |
28 wcex.cbSize = sizeof(wcex); | 29 wcex.cbSize = sizeof(wcex); |
29 wcex.style = CS_DBLCLKS; | 30 wcex.style = CS_DBLCLKS; |
30 wcex.lpfnWndProc = WebWidgetHost::WndProc; | 31 wcex.lpfnWndProc = WebWidgetHost::WndProc; |
31 wcex.hInstance = GetModuleHandle(NULL); | 32 wcex.hInstance = GetModuleHandle(NULL); |
32 wcex.hCursor = LoadCursor(NULL, IDC_ARROW); | 33 wcex.hCursor = LoadCursor(NULL, IDC_ARROW); |
33 wcex.lpszClassName = kWindowClassName; | 34 wcex.lpszClassName = kWindowClassName; |
34 RegisterClassEx(&wcex); | 35 RegisterClassEx(&wcex); |
35 registered_class = true; | 36 registered_class = true; |
36 } | 37 } |
37 | 38 |
38 host->view_ = CreateWindow(kWindowClassName, NULL, | 39 host->view_ = CreateWindow(kWindowClassName, NULL, |
39 WS_CHILD|WS_CLIPCHILDREN|WS_CLIPSIBLINGS, 0, 0, | 40 WS_CHILD|WS_CLIPCHILDREN|WS_CLIPSIBLINGS, 0, 0, |
40 0, 0, parent_view, NULL, | 41 0, 0, parent_view, NULL, |
41 GetModuleHandle(NULL), NULL); | 42 GetModuleHandle(NULL), NULL); |
42 win_util::SetWindowUserData(host->view_, host); | 43 win_util::SetWindowUserData(host->view_, host); |
43 | 44 |
44 host->webwidget_ = WebView::create(delegate); | 45 host->webwidget_ = WebView::create(delegate, devToolsClient); |
45 prefs.Apply(host->webview()); | 46 prefs.Apply(host->webview()); |
46 host->webview()->initializeMainFrame(delegate); | 47 host->webview()->initializeMainFrame(delegate); |
47 | 48 |
48 return host; | 49 return host; |
49 } | 50 } |
50 | 51 |
51 WebView* WebViewHost::webview() const { | 52 WebView* WebViewHost::webview() const { |
52 return static_cast<WebView*>(webwidget_); | 53 return static_cast<WebView*>(webwidget_); |
53 } | 54 } |
OLD | NEW |