summaryrefslogtreecommitdiffstats
path: root/content
diff options
context:
space:
mode:
authorerg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-26 03:00:22 +0000
committererg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-26 03:00:22 +0000
commitb07f8f149ca997d9d99bd48ce5abd74eb15c6d57 (patch)
tree4ae4c609ebac6af9c3077acde386900648f74058 /content
parent785565db021338a3779e6937b15b4911ce0ee6fc (diff)
downloadchromium_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.cc32
-rw-r--r--content/browser/renderer_host/gtk_window_utils.h22
-rw-r--r--content/browser/renderer_host/render_widget_host_view.cc24
-rw-r--r--content/browser/renderer_host/render_widget_host_view_gtk.cc22
-rw-r--r--content/content_browser.gypi2
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',