diff options
Diffstat (limited to 'webkit')
-rw-r--r-- | webkit/build/WebKit/WebKit.vcproj | 8 | ||||
-rw-r--r-- | webkit/glue/chromium_bridge_impl.cc | 42 | ||||
-rw-r--r-- | webkit/glue/glue.vcproj | 4 | ||||
-rw-r--r-- | webkit/glue/screen_info.h | 39 | ||||
-rw-r--r-- | webkit/glue/webkit_glue.h | 9 | ||||
-rw-r--r-- | webkit/glue/webkit_glue_gtk.cc | 33 | ||||
-rw-r--r-- | webkit/glue/webkit_glue_mac.mm | 69 | ||||
-rw-r--r-- | webkit/glue/webkit_glue_win.cc | 32 | ||||
-rw-r--r-- | webkit/glue/webview_impl.cc | 2 | ||||
-rw-r--r-- | webkit/glue/webwidget_delegate.h | 13 | ||||
-rw-r--r-- | webkit/glue/webwidget_impl.cc | 2 | ||||
-rw-r--r-- | webkit/tools/test_shell/mac/webwidget_host.mm | 8 | ||||
-rwxr-xr-x | webkit/tools/test_shell/test_shell.cc | 5 | ||||
-rwxr-xr-x | webkit/tools/test_shell/test_webview_delegate.cc | 12 | ||||
-rw-r--r-- | webkit/tools/test_shell/test_webview_delegate.h | 3 | ||||
-rw-r--r-- | webkit/tools/test_shell/webwidget_host.h | 6 | ||||
-rw-r--r-- | webkit/tools/test_shell/webwidget_host_gtk.cc | 8 | ||||
-rw-r--r-- | webkit/tools/test_shell/webwidget_host_win.cc | 8 | ||||
-rw-r--r-- | webkit/webkit.gyp | 4 |
19 files changed, 96 insertions, 211 deletions
diff --git a/webkit/build/WebKit/WebKit.vcproj b/webkit/build/WebKit/WebKit.vcproj index ccef31b..b225b74 100644 --- a/webkit/build/WebKit/WebKit.vcproj +++ b/webkit/build/WebKit/WebKit.vcproj @@ -211,6 +211,10 @@ > </File> <File + RelativePath="..\..\..\third_party\WebKit\WebKit\chromium\public\win\WebScreenInfoFactory.h" + > + </File> + <File RelativePath="..\..\..\third_party\WebKit\WebKit\chromium\public\win\WebThemeEngine.h" > </File> @@ -270,6 +274,10 @@ RelativePath="..\..\..\third_party\WebKit\WebKit\chromium\src\win\WebInputEventFactory.cpp" > </File> + <File + RelativePath="..\..\..\third_party\WebKit\WebKit\chromium\src\win\WebScreenInfoFactory.cpp" + > + </File> </Filter> </Filter> </Filter> diff --git a/webkit/glue/chromium_bridge_impl.cc b/webkit/glue/chromium_bridge_impl.cc index 9dc8d96..c094d94 100644 --- a/webkit/glue/chromium_bridge_impl.cc +++ b/webkit/glue/chromium_bridge_impl.cc @@ -31,14 +31,14 @@ #include "build/build_config.h" #include "googleurl/src/url_util.h" #include "skia/ext/skia_utils_win.h" +#include "third_party/WebKit/WebKit/chromium/public/WebScreenInfo.h" #include "webkit/glue/chrome_client_impl.h" #include "webkit/glue/glue_util.h" #include "webkit/glue/plugins/plugin_instance.h" -#include "webkit/glue/screen_info.h" #include "webkit/glue/webcursor.h" #include "webkit/glue/webkit_glue.h" #include "webkit/glue/webplugin_impl.h" -#include "webkit/glue/webview.h" +#include "webkit/glue/webview_impl.h" #if defined(OS_WIN) #include <windows.h> @@ -72,6 +72,17 @@ ChromeClientImpl* ToChromeClient(WebCore::Widget* widget) { return static_cast<ChromeClientImpl*>(page->chrome()->client()); } +WebViewImpl* ToWebView(WebCore::Widget* widget) { + ChromeClientImpl* chrome_client = ToChromeClient(widget); + if (!chrome_client) + return NULL; + return chrome_client->webview(); +} + +WebCore::IntRect ToIntRect(const WebKit::WebRect& input) { + return WebCore::IntRect(input.x, input.y, input.width, input.height); +} + } // namespace namespace WebCore { @@ -163,25 +174,38 @@ String ChromiumBridge::uiResourceProtocol() { // Screen --------------------------------------------------------------------- int ChromiumBridge::screenDepth(Widget* widget) { - return webkit_glue::GetScreenInfo(ToNativeId(widget)).depth; + WebViewImpl* view = ToWebView(widget); + if (!view || !view->delegate()) + return NULL; + return view->delegate()->GetScreenInfo(view).depth; } int ChromiumBridge::screenDepthPerComponent(Widget* widget) { - return webkit_glue::GetScreenInfo(ToNativeId(widget)).depth_per_component; + WebViewImpl* view = ToWebView(widget); + if (!view || !view->delegate()) + return NULL; + return view->delegate()->GetScreenInfo(view).depthPerComponent; } bool ChromiumBridge::screenIsMonochrome(Widget* widget) { - return webkit_glue::GetScreenInfo(ToNativeId(widget)).is_monochrome; + WebViewImpl* view = ToWebView(widget); + if (!view || !view->delegate()) + return NULL; + return view->delegate()->GetScreenInfo(view).isMonochrome; } IntRect ChromiumBridge::screenRect(Widget* widget) { - return webkit_glue::ToIntRect( - webkit_glue::GetScreenInfo(ToNativeId(widget)).rect); + WebViewImpl* view = ToWebView(widget); + if (!view || !view->delegate()) + return IntRect(); + return ToIntRect(view->delegate()->GetScreenInfo(view).rect); } IntRect ChromiumBridge::screenAvailableRect(Widget* widget) { - return webkit_glue::ToIntRect( - webkit_glue::GetScreenInfo(ToNativeId(widget)).available_rect); + WebViewImpl* view = ToWebView(widget); + if (!view || !view->delegate()) + return IntRect(); + return ToIntRect(view->delegate()->GetScreenInfo(view).availableRect); } // Widget --------------------------------------------------------------------- diff --git a/webkit/glue/glue.vcproj b/webkit/glue/glue.vcproj index 2db65ac..e66e415 100644 --- a/webkit/glue/glue.vcproj +++ b/webkit/glue/glue.vcproj @@ -666,10 +666,6 @@ >
</File>
<File
- RelativePath=".\webkit_glue_win.cc"
- >
- </File>
- <File
RelativePath=".\webkitclient_impl.cc"
>
</File>
diff --git a/webkit/glue/screen_info.h b/webkit/glue/screen_info.h deleted file mode 100644 index 7dbc4e5..0000000 --- a/webkit/glue/screen_info.h +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright (c) 2008 The Chromium Authors. All rights reserved. Use of this -// source code is governed by a BSD-style license that can be found in the -// LICENSE file. - -#ifndef WEBKIT_GLUE_SCREEN_INFO_H_ -#define WEBKIT_GLUE_SCREEN_INFO_H_ - -#include "base/gfx/rect.h" - -namespace webkit_glue { - -struct ScreenInfo { - // The screen depth in bits per pixel - int depth; - // The bits per colour component. This assumes that the colours are balanced - // equally. - int depth_per_component; - // This can be true for black and white printers - bool is_monochrome; - // This is set from the rcMonitor member of MONITORINFOEX, to whit: - // "A RECT structure that specifies the display monitor rectangle, - // expressed in virtual-screen coordinates. Note that if the monitor is not - // the primary display monitor, some of the rectangle's coordinates may be - // negative values." - gfx::Rect rect; - // This is set from the rcWork member of MONITORINFOEX, to whit: - // "A RECT structure that specifies the work area rectangle of the display - // monitor that can be used by applications, expressed in virtual-screen - // coordinates. Windows uses this rectangle to maximize an application on - // the monitor. The rest of the area in rcMonitor contains system windows - // such as the task bar and side bars. Note that if the monitor is not the - // primary display monitor, some of the rectangle's coordinates may be - // negative values". - gfx::Rect available_rect; -}; - -} // namespace webkit_glue - -#endif // WEBKIT_GLUE_SCREEN_INFO_H_ diff --git a/webkit/glue/webkit_glue.h b/webkit/glue/webkit_glue.h index ccaf847..db9e238 100644 --- a/webkit/glue/webkit_glue.h +++ b/webkit/glue/webkit_glue.h @@ -31,8 +31,6 @@ class WebString; namespace webkit_glue { -struct ScreenInfo; - //---- BEGIN FUNCTIONS IMPLEMENTED BY WEBKIT/GLUE ----------------------------- @@ -41,10 +39,6 @@ void SetJavaScriptFlags(const std::wstring& flags); // Turn on the logging for notImplemented() calls from WebCore. void EnableWebCoreNotImplementedLogging(); -// Returns screen information corresponding to the given window. This is the -// default implementation. -ScreenInfo GetScreenInfoHelper(gfx::NativeView window); - // Returns the text of the document element. std::wstring DumpDocumentText(WebFrame* web_frame); @@ -193,9 +187,6 @@ bool GetPlugins(bool refresh, std::vector<WebPluginInfo>* plugins); // false otherwise. bool IsPluginRunningInRendererProcess(); -// Returns screen information corresponding to the given window. -ScreenInfo GetScreenInfo(gfx::NativeViewId window); - // Returns a bool indicating if the Null plugin should be enabled or not. bool IsDefaultPluginEnabled(); diff --git a/webkit/glue/webkit_glue_gtk.cc b/webkit/glue/webkit_glue_gtk.cc deleted file mode 100644 index 8ceb35d..0000000 --- a/webkit/glue/webkit_glue_gtk.cc +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) 2008 The Chromium Authors. All rights reserved. Use of this -// source code is governed by a BSD-style license that can be found in the -// LICENSE file. - -#include "webkit/glue/webkit_glue.h" - -#include <gtk/gtk.h> - -#include "webkit/glue/screen_info.h" - -namespace webkit_glue { - -ScreenInfo GetScreenInfoHelper(gfx::NativeView window) { - ScreenInfo results; - results.depth = 32; - results.depth_per_component = 8; - results.is_monochrome = false; - - if (!window) - return results; - - GdkScreen* screen = gtk_widget_get_screen(GTK_WIDGET(window)); - results.rect.SetRect(0, 0, gdk_screen_get_width(screen), - gdk_screen_get_height(screen)); - // I don't know of a way to query the "maximise" size of the window (e.g. - // screen size less sidebars etc) since this is something which only the - // window manager knows. - results.available_rect = results.rect; - - return results; -} - -} // namespace webkit_glue diff --git a/webkit/glue/webkit_glue_mac.mm b/webkit/glue/webkit_glue_mac.mm deleted file mode 100644 index 484b6f1..0000000 --- a/webkit/glue/webkit_glue_mac.mm +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (c) 2008 The Chromium Authors. All rights reserved. Use of this -// source code is governed by a BSD-style license that can be found in the -// LICENSE file. - -#include "config.h" - -#include "webkit/glue/webkit_glue.h" - -#import <AppKit/AppKit.h> - -#include "webkit/glue/screen_info.h" - -namespace webkit_glue { - -static NSScreen *ScreenForWindow(NSWindow *window) { - NSScreen *screen = [window screen]; // nil if the window is off-screen - if (screen) - return screen; - - NSArray *screens = [NSScreen screens]; - if ([screens count] > 0) - return [screens objectAtIndex:0]; // screen containing the menubar - - return nil; -} - -static gfx::Rect ToUserSpace(const NSRect& rect, NSWindow *destination) { - CGRect user_rect = NSRectToCGRect(rect); - - user_rect.origin.y = - NSMaxY([ScreenForWindow(destination) frame]) - - (user_rect.origin.y + user_rect.size.height); // flip - - if (destination) { - CGFloat scale = 1 / [destination userSpaceScaleFactor]; // scale down - user_rect.origin.x *= scale; - user_rect.origin.y *= scale; - user_rect.size.width *= scale; - user_rect.size.height *= scale; - } - - return gfx::Rect(user_rect); -} - -ScreenInfo GetScreenInfoHelper(gfx::NativeView view) { - NSString *color_space = NSColorSpaceFromDepth([[NSScreen deepestScreen] depth]); - bool monochrome = color_space == NSCalibratedWhiteColorSpace || - color_space == NSCalibratedBlackColorSpace || - color_space == NSDeviceWhiteColorSpace || - color_space == NSDeviceBlackColorSpace; - - ScreenInfo results; - results.depth = - NSBitsPerPixelFromDepth([[NSScreen deepestScreen] depth]); - results.depth_per_component = - NSBitsPerSampleFromDepth([[NSScreen deepestScreen] depth]); - results.is_monochrome = - color_space == NSCalibratedWhiteColorSpace || - color_space == NSCalibratedBlackColorSpace || - color_space == NSDeviceWhiteColorSpace || - color_space == NSDeviceBlackColorSpace; - results.rect = - ToUserSpace([ScreenForWindow([view window]) frame], [view window]); - results.available_rect = - ToUserSpace([ScreenForWindow([view window]) visibleFrame], [view window]); - return results; -} - -} // namespace webkit_glue diff --git a/webkit/glue/webkit_glue_win.cc b/webkit/glue/webkit_glue_win.cc deleted file mode 100644 index 82242f7..0000000 --- a/webkit/glue/webkit_glue_win.cc +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) 2008 The Chromium Authors. All rights reserved. Use of this -// source code is governed by a BSD-style license that can be found in the -// LICENSE file. - -#include "webkit/glue/webkit_glue.h" - -#include "webkit/glue/screen_info.h" - -namespace webkit_glue { - -ScreenInfo GetScreenInfoHelper(gfx::NativeView window) { - HMONITOR monitor = MonitorFromWindow(window, MONITOR_DEFAULTTOPRIMARY); - - MONITORINFOEX monitor_info; - monitor_info.cbSize = sizeof(MONITORINFOEX); - GetMonitorInfo(monitor, &monitor_info); - - DEVMODE dev_mode; - dev_mode.dmSize = sizeof(dev_mode); - dev_mode.dmDriverExtra = 0; - EnumDisplaySettings(monitor_info.szDevice, ENUM_CURRENT_SETTINGS, &dev_mode); - - ScreenInfo results; - results.depth = dev_mode.dmBitsPerPel; - results.depth_per_component = dev_mode.dmBitsPerPel / 3; // Assumes RGB - results.is_monochrome = dev_mode.dmColor == DMCOLOR_MONOCHROME; - results.rect = gfx::Rect(monitor_info.rcMonitor); - results.available_rect = gfx::Rect(monitor_info.rcWork); - return results; -} - -} // namespace webkit_glue diff --git a/webkit/glue/webview_impl.cc b/webkit/glue/webview_impl.cc index 492d0c3..b2792b8 100644 --- a/webkit/glue/webview_impl.cc +++ b/webkit/glue/webview_impl.cc @@ -1742,7 +1742,7 @@ bool WebViewImpl::isHidden() { if (!delegate_) return true; - return delegate_->IsHidden(); + return delegate_->IsHidden(this); } #endif diff --git a/webkit/glue/webwidget_delegate.h b/webkit/glue/webwidget_delegate.h index 05ed760..37f3ff3 100644 --- a/webkit/glue/webwidget_delegate.h +++ b/webkit/glue/webwidget_delegate.h @@ -13,8 +13,12 @@ #include "webkit/glue/window_open_disposition.h" namespace gfx { - class Point; - class Rect; +class Point; +class Rect; +} + +namespace WebKit { +struct WebScreenInfo; } class WebWidget; @@ -121,7 +125,10 @@ class WebWidgetDelegate { virtual void Release() = 0; // Returns true if the widget is in a background tab. - virtual bool IsHidden() = 0; + virtual bool IsHidden(WebWidget* webwidget) = 0; + + // Returns information about the screen associated with this widget. + virtual WebKit::WebScreenInfo GetScreenInfo(WebWidget* webwidget) = 0; WebWidgetDelegate() { } virtual ~WebWidgetDelegate() { } diff --git a/webkit/glue/webwidget_impl.cc b/webkit/glue/webwidget_impl.cc index 1ea7c1c..0c5f062 100644 --- a/webkit/glue/webwidget_impl.cc +++ b/webkit/glue/webwidget_impl.cc @@ -300,6 +300,6 @@ bool WebWidgetImpl::isHidden() { if (!delegate_) return true; - return delegate_->IsHidden(); + return delegate_->IsHidden(this); } #endif diff --git a/webkit/tools/test_shell/mac/webwidget_host.mm b/webkit/tools/test_shell/mac/webwidget_host.mm index f992141..bccb584 100644 --- a/webkit/tools/test_shell/mac/webwidget_host.mm +++ b/webkit/tools/test_shell/mac/webwidget_host.mm @@ -11,7 +11,9 @@ #include "base/gfx/size.h" #include "base/logging.h" #include "third_party/WebKit/WebKit/chromium/public/mac/WebInputEventFactory.h" +#include "third_party/WebKit/WebKit/chromium/public/mac/WebScreenInfoFactory.h" #include "third_party/WebKit/WebKit/chromium/public/WebInputEvent.h" +#include "third_party/WebKit/WebKit/chromium/public/WebScreenInfo.h" #include "webkit/glue/webwidget.h" #include "webkit/tools/test_shell/test_shell.h" @@ -20,6 +22,8 @@ using WebKit::WebInputEventFactory; using WebKit::WebKeyboardEvent; using WebKit::WebMouseEvent; using WebKit::WebMouseWheelEvent; +using WebKit::WebScreenInfo; +using WebKit::WebScreenInfoFactory; /*static*/ WebWidgetHost* WebWidgetHost::Create(NSView* parent_view, @@ -214,6 +218,10 @@ void WebWidgetHost::Paint() { } } +WebScreenInfo WebWidgetHost::GetScreenInfo() { + return WebScreenInfoFactory::screenInfo(view_); +} + void WebWidgetHost::Resize(const gfx::Rect& rect) { // Force an entire re-paint. TODO(darin): Maybe reuse this memory buffer. DiscardBackingStore(); diff --git a/webkit/tools/test_shell/test_shell.cc b/webkit/tools/test_shell/test_shell.cc index 089ef9d..42193e8 100755 --- a/webkit/tools/test_shell/test_shell.cc +++ b/webkit/tools/test_shell/test_shell.cc @@ -31,7 +31,6 @@ #include "net/url_request/url_request_filter.h" #include "skia/ext/bitmap_platform_device.h" #include "testing/gtest/include/gtest/gtest.h" -#include "webkit/glue/screen_info.h" #include "webkit/glue/webdatasource.h" #include "webkit/glue/webframe.h" #include "webkit/glue/webkit_glue.h" @@ -589,10 +588,6 @@ bool SpellCheckWord(const wchar_t* word, int word_len, return true; } -ScreenInfo GetScreenInfo(gfx::NativeViewId window) { - return GetScreenInfoHelper(gfx::NativeViewFromId(window)); -} - bool IsPluginRunningInRendererProcess() { return true; } diff --git a/webkit/tools/test_shell/test_webview_delegate.cc b/webkit/tools/test_shell/test_webview_delegate.cc index a2cf6c0..40c1c89 100755 --- a/webkit/tools/test_shell/test_webview_delegate.cc +++ b/webkit/tools/test_shell/test_webview_delegate.cc @@ -18,6 +18,7 @@ #include "base/trace_event.h" #include "net/base/net_errors.h" #include "third_party/WebKit/WebKit/chromium/public/WebKit.h" +#include "third_party/WebKit/WebKit/chromium/public/WebScreenInfo.h" #include "webkit/glue/webdatasource.h" #include "webkit/glue/webdropdata.h" #include "webkit/glue/weberror.h" @@ -39,6 +40,8 @@ #include "webkit/tools/test_shell/drop_delegate.h" #endif +using WebKit::WebScreenInfo; + namespace { // WebNavigationType debugging strings taken from PolicyDelegate.mm. @@ -724,10 +727,17 @@ void TestWebViewDelegate::Blur(WebWidget* webwidget) { shell_->SetFocus(host, false); } -bool TestWebViewDelegate::IsHidden() { +bool TestWebViewDelegate::IsHidden(WebWidget* webwidget) { return false; } +WebScreenInfo TestWebViewDelegate::GetScreenInfo(WebWidget* webwidget) { + if (WebWidgetHost* host = GetHostForWidget(webwidget)) + return host->GetScreenInfo(); + + return WebScreenInfo(); +} + void TestWebViewDelegate::RegisterDragDrop() { #if defined(OS_WIN) // TODO(port): add me once drag and drop works. diff --git a/webkit/tools/test_shell/test_webview_delegate.h b/webkit/tools/test_shell/test_webview_delegate.h index 1204ded..c11186f 100644 --- a/webkit/tools/test_shell/test_webview_delegate.h +++ b/webkit/tools/test_shell/test_webview_delegate.h @@ -231,7 +231,8 @@ class TestWebViewDelegate : public base::RefCounted<TestWebViewDelegate>, virtual void GetRootWindowResizerRect(WebWidget* webwidget, gfx::Rect* rect); virtual void DidMove(WebWidget* webwidget, const WebPluginGeometry& move); virtual void RunModal(WebWidget* webwidget); - virtual bool IsHidden(); + virtual bool IsHidden(WebWidget* webwidget); + virtual WebKit::WebScreenInfo GetScreenInfo(WebWidget* webwidget); virtual void AddRef() { base::RefCounted<TestWebViewDelegate>::AddRef(); } diff --git a/webkit/tools/test_shell/webwidget_host.h b/webkit/tools/test_shell/webwidget_host.h index c35661b..1fd02c1 100644 --- a/webkit/tools/test_shell/webwidget_host.h +++ b/webkit/tools/test_shell/webwidget_host.h @@ -18,6 +18,10 @@ namespace gfx { class Size; } +namespace WebKit { +struct WebScreenInfo; +} + #if defined(OS_MACOSX) #ifdef __OBJC__ @class NSEvent; @@ -54,6 +58,8 @@ class WebWidgetHost { void UpdatePaintRect(const gfx::Rect& rect); void Paint(); + WebKit::WebScreenInfo GetScreenInfo(); + protected: WebWidgetHost(); ~WebWidgetHost(); diff --git a/webkit/tools/test_shell/webwidget_host_gtk.cc b/webkit/tools/test_shell/webwidget_host_gtk.cc index 599d580..08dd9bc 100644 --- a/webkit/tools/test_shell/webwidget_host_gtk.cc +++ b/webkit/tools/test_shell/webwidget_host_gtk.cc @@ -13,7 +13,9 @@ #include "skia/ext/platform_canvas_linux.h" #include "skia/ext/platform_device_linux.h" #include "third_party/WebKit/WebKit/chromium/public/gtk/WebInputEventFactory.h" +#include "third_party/WebKit/WebKit/chromium/public/gtk/WebScreenInfoFactory.h" #include "third_party/WebKit/WebKit/chromium/public/WebInputEvent.h" +#include "third_party/WebKit/WebKit/chromium/public/WebScreenInfo.h" #include "webkit/glue/webwidget.h" #include "webkit/tools/test_shell/test_shell.h" @@ -21,6 +23,8 @@ using WebKit::WebInputEventFactory; using WebKit::WebKeyboardEvent; using WebKit::WebMouseEvent; using WebKit::WebMouseWheelEvent; +using WebKit::WebScreenInfo; +using WebKit::WebScreenInfoFactory; namespace { @@ -361,6 +365,10 @@ void WebWidgetHost::Paint() { gdk_window_end_paint(window); } +WebScreenInfo WebWidgetHost::GetScreenInfo() { + return WebScreenInfoFactory::screenInfo(view_); +} + void WebWidgetHost::ResetScrollRect() { // This method is only needed for optimized scroll painting, which we don't // care about in the test shell, yet. diff --git a/webkit/tools/test_shell/webwidget_host_win.cc b/webkit/tools/test_shell/webwidget_host_win.cc index 8ea5ca0..9db06c0 100644 --- a/webkit/tools/test_shell/webwidget_host_win.cc +++ b/webkit/tools/test_shell/webwidget_host_win.cc @@ -10,7 +10,9 @@ #include "skia/ext/platform_canvas.h" #include "skia/ext/platform_canvas_win.h" #include "third_party/WebKit/WebKit/chromium/public/WebInputEvent.h" +#include "third_party/WebKit/WebKit/chromium/public/WebScreenInfo.h" #include "third_party/WebKit/WebKit/chromium/public/win/WebInputEventFactory.h" +#include "third_party/WebKit/WebKit/chromium/public/win/WebScreenInfoFactory.h" #include "webkit/glue/webwidget.h" #include "webkit/tools/test_shell/test_shell.h" @@ -19,6 +21,8 @@ using WebKit::WebInputEventFactory; using WebKit::WebKeyboardEvent; using WebKit::WebMouseEvent; using WebKit::WebMouseWheelEvent; +using WebKit::WebScreenInfo; +using WebKit::WebScreenInfoFactory; static const wchar_t kWindowClassName[] = L"WebWidgetHost"; @@ -273,6 +277,10 @@ void WebWidgetHost::Paint() { UpdateWindow(view_); } +WebScreenInfo WebWidgetHost::GetScreenInfo() { + return WebScreenInfoFactory::screenInfo(view_); +} + void WebWidgetHost::Resize(LPARAM lparam) { // Force an entire re-paint. TODO(darin): Maybe reuse this memory buffer. DiscardBackingStore(); diff --git a/webkit/webkit.gyp b/webkit/webkit.gyp index 7a16249..06c0809 100644 --- a/webkit/webkit.gyp +++ b/webkit/webkit.gyp @@ -4342,7 +4342,6 @@ 'glue/resource_loader_bridge.h', 'glue/resource_type.h', 'glue/scoped_clipboard_writer_glue.h', - 'glue/screen_info.h', 'glue/searchable_form_data.cc', 'glue/searchable_form_data.h', 'glue/simple_clipboard_impl.cc', @@ -4384,9 +4383,6 @@ 'glue/webhistoryitem_impl.h', 'glue/webkit_glue.cc', 'glue/webkit_glue.h', - 'glue/webkit_glue_gtk.cc', - 'glue/webkit_glue_mac.mm', - 'glue/webkit_glue_win.cc', 'glue/webkitclient_impl.cc', 'glue/webkitclient_impl.h', 'glue/webmediaplayer.h', |