diff options
author | erg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-26 03:00:22 +0000 |
---|---|---|
committer | erg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-26 03:00:22 +0000 |
commit | b07f8f149ca997d9d99bd48ce5abd74eb15c6d57 (patch) | |
tree | 4ae4c609ebac6af9c3077acde386900648f74058 /content | |
parent | 785565db021338a3779e6937b15b4911ce0ee6fc (diff) | |
download | chromium_src-b07f8f149ca997d9d99bd48ce5abd74eb15c6d57.zip chromium_src-b07f8f149ca997d9d99bd48ce5abd74eb15c6d57.tar.gz chromium_src-b07f8f149ca997d9d99bd48ce5abd74eb15c6d57.tar.bz2 |
content: Move touchui's RenderWidgetHostView::GetDefaultScreenInfo() into a place to make things link
(Fixes trybot linkage on linux_touch)
BUG=90443
Review URL: http://codereview.chromium.org/7753013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98389 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r-- | content/browser/renderer_host/gtk_window_utils.cc | 32 | ||||
-rw-r--r-- | content/browser/renderer_host/gtk_window_utils.h | 22 | ||||
-rw-r--r-- | content/browser/renderer_host/render_widget_host_view.cc | 24 | ||||
-rw-r--r-- | content/browser/renderer_host/render_widget_host_view_gtk.cc | 22 | ||||
-rw-r--r-- | content/content_browser.gypi | 2 |
5 files changed, 82 insertions, 20 deletions
diff --git a/content/browser/renderer_host/gtk_window_utils.cc b/content/browser/renderer_host/gtk_window_utils.cc new file mode 100644 index 0000000..a574941 --- /dev/null +++ b/content/browser/renderer_host/gtk_window_utils.cc @@ -0,0 +1,32 @@ +// Copyright (c) 2011 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 "content/browser/renderer_host/gtk_window_utils.h" + +#include <gdk/gdkx.h> +#include <gtk/gtk.h> + +#include "third_party/WebKit/Source/WebKit/chromium/public/WebScreenInfo.h" +#include "third_party/WebKit/Source/WebKit/chromium/public/x11/WebScreenInfoFactory.h" + +namespace content { + +void GetScreenInfoFromNativeWindow( + GdkWindow* gdk_window, WebKit::WebScreenInfo* results) { + GdkScreen* screen = gdk_drawable_get_screen(gdk_window); + *results = WebKit::WebScreenInfoFactory::screenInfo( + gdk_x11_drawable_get_xdisplay(gdk_window), + gdk_x11_screen_get_screen_number(screen)); + + // TODO(tony): We should move this code into WebScreenInfoFactory. + int monitor_number = gdk_screen_get_monitor_at_window(screen, gdk_window); + GdkRectangle monitor_rect; + gdk_screen_get_monitor_geometry(screen, monitor_number, &monitor_rect); + results->rect = WebKit::WebRect(monitor_rect.x, monitor_rect.y, + monitor_rect.width, monitor_rect.height); + // TODO(tony): Should we query _NET_WORKAREA to get the workarea? + results->availableRect = results->rect; +} + +} // namespace content diff --git a/content/browser/renderer_host/gtk_window_utils.h b/content/browser/renderer_host/gtk_window_utils.h new file mode 100644 index 0000000..3f3cf20 --- /dev/null +++ b/content/browser/renderer_host/gtk_window_utils.h @@ -0,0 +1,22 @@ +// Copyright (c) 2011 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 CONTENT_BROWSER_RENDERER_HOST_GTK_WINDOW_UTILS_H_ +#define CONTENT_BROWSER_RENDERER_HOST_GTK_WINDOW_UTILS_H_ +#pragma once + +typedef struct _GdkDrawable GdkWindow; + +namespace WebKit { +struct WebScreenInfo; +} + +namespace content { + +void GetScreenInfoFromNativeWindow( + GdkWindow* gdk_window, WebKit::WebScreenInfo* results); + +} // namespace content + +#endif // CONTENT_BROWSER_RENDERER_HOST_GTK_WINDOW_UTILS_H_ diff --git a/content/browser/renderer_host/render_widget_host_view.cc b/content/browser/renderer_host/render_widget_host_view.cc index f96559c..6f16071 100644 --- a/content/browser/renderer_host/render_widget_host_view.cc +++ b/content/browser/renderer_host/render_widget_host_view.cc @@ -1,11 +1,21 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Copyright (c) 2011 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 "content/browser/renderer_host/render_widget_host_view.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebScreenInfo.h" + +#if defined(OS_MACOSX) #include "third_party/WebKit/Source/WebKit/chromium/public/mac/WebScreenInfoFactory.h" +#endif + +#if defined(TOUCH_UI) +#include <gdk/gdkx.h> +#include <gtk/gtk.h> + +#include "content/browser/renderer_host/gtk_window_utils.h" +#endif // TODO(jam): move this to render_widget_host_view_mac.mm when it moves to // content. @@ -17,6 +27,18 @@ void RenderWidgetHostView::GetDefaultScreenInfo( } #endif +// TODO(erg): move this to render_widget_host_view_views_gtk.cc when if it +// moves to content. +#if defined(TOUCH_UI) +// static +void RenderWidgetHostView::GetDefaultScreenInfo( + WebKit::WebScreenInfo* results) { + GdkWindow* gdk_window = + gdk_display_get_default_group(gdk_display_get_default()); + content::GetScreenInfoFromNativeWindow(gdk_window, results); +} +#endif + RenderWidgetHostView::~RenderWidgetHostView() {} void RenderWidgetHostView::SetBackground(const SkBitmap& background) { diff --git a/content/browser/renderer_host/render_widget_host_view_gtk.cc b/content/browser/renderer_host/render_widget_host_view_gtk.cc index ed63c9a..0e7733e 100644 --- a/content/browser/renderer_host/render_widget_host_view_gtk.cc +++ b/content/browser/renderer_host/render_widget_host_view_gtk.cc @@ -27,6 +27,7 @@ #include "base/utf_string_conversions.h" #include "content/browser/renderer_host/backing_store_x.h" #include "content/browser/renderer_host/gtk_im_context_wrapper.h" +#include "content/browser/renderer_host/gtk_window_utils.h" #include "content/browser/renderer_host/render_view_host.h" #include "content/browser/renderer_host/render_view_host_delegate.h" #include "content/browser/renderer_host/render_widget_host.h" @@ -94,23 +95,6 @@ GdkCursor* GetMozSpinningCursor() { return moz_spinning_cursor; } -void GetScreenInfoFromNativeWindow( - GdkWindow* gdk_window, WebKit::WebScreenInfo* results) { - GdkScreen* screen = gdk_drawable_get_screen(gdk_window); - *results = WebKit::WebScreenInfoFactory::screenInfo( - gdk_x11_drawable_get_xdisplay(gdk_window), - gdk_x11_screen_get_screen_number(screen)); - - // TODO(tony): We should move this code into WebScreenInfoFactory. - gint monitor_number = gdk_screen_get_monitor_at_window(screen, gdk_window); - GdkRectangle monitor_rect; - gdk_screen_get_monitor_geometry(screen, monitor_number, &monitor_rect); - results->rect = WebKit::WebRect(monitor_rect.x, monitor_rect.y, - monitor_rect.width, monitor_rect.height); - // TODO(tony): Should we query _NET_WORKAREA to get the workarea? - results->availableRect = results->rect; -} - } // namespace using WebKit::WebInputEventFactory; @@ -1174,7 +1158,7 @@ void RenderWidgetHostViewGtk::GetScreenInfo(WebKit::WebScreenInfo* results) { } if (!gdk_window) return; - GetScreenInfoFromNativeWindow(gdk_window, results); + content::GetScreenInfoFromNativeWindow(gdk_window, results); } gfx::Rect RenderWidgetHostViewGtk::GetRootWindowBounds() { @@ -1257,5 +1241,5 @@ void RenderWidgetHostView::GetDefaultScreenInfo( WebKit::WebScreenInfo* results) { GdkWindow* gdk_window = gdk_display_get_default_group(gdk_display_get_default()); - GetScreenInfoFromNativeWindow(gdk_window, results); + content::GetScreenInfoFromNativeWindow(gdk_window, results); } diff --git a/content/content_browser.gypi b/content/content_browser.gypi index bb24eb0..3387f86 100644 --- a/content/content_browser.gypi +++ b/content/content_browser.gypi @@ -333,6 +333,8 @@ 'browser/renderer_host/gtk_im_context_wrapper.h', 'browser/renderer_host/gtk_key_bindings_handler.cc', 'browser/renderer_host/gtk_key_bindings_handler.h', + 'browser/renderer_host/gtk_window_utils.cc', + 'browser/renderer_host/gtk_window_utils.h', 'browser/renderer_host/media/audio_common.cc', 'browser/renderer_host/media/audio_common.h', 'browser/renderer_host/media/audio_input_device_manager.cc', |