| 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 |