summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--base/base.gyp4
-rw-r--r--build/common.gypi2
-rw-r--r--chrome/app/chromium_strings.grd2
-rw-r--r--chrome/app/generated_resources.grd2
-rw-r--r--chrome/app/google_chrome_strings.grd2
-rw-r--r--chrome/app/theme/theme_resources.grd8
-rw-r--r--chrome/browser/views/frame/browser_view.h3
-rw-r--r--chrome/browser/views/tabs/tab_overview_message_listener.cc34
-rw-r--r--chrome/browser/views/tabs/tab_overview_message_listener.h8
-rwxr-xr-xchrome/chrome.gyp10
-rw-r--r--chrome/installer/installer.gyp2
11 files changed, 59 insertions, 18 deletions
diff --git a/base/base.gyp b/base/base.gyp
index 45c85e0..b9d8e95 100644
--- a/base/base.gyp
+++ b/base/base.gyp
@@ -379,7 +379,7 @@
'sources/': [ ['exclude', '_(mac|win|chromeos)\\.cc$'],
['exclude', '\\.mm?$' ] ],
'conditions': [
- [ 'chromeos==1', {
+ [ 'chromeos==1 or toolkit_views==1', {
'sources/': [ ['include', '_chromeos\\.cc$'] ]
},
],
@@ -713,7 +713,7 @@
'sources/': [ ['exclude', '_(mac|win|chromeos)\\.cc$'],
['exclude', '\\.mm?$' ] ],
'conditions': [
- [ 'chromeos==1', {
+ [ 'chromeos==1 or toolkit_views==1', {
'sources/': [ ['include', '_chromeos\\.cc$'] ]
},
],
diff --git a/build/common.gypi b/build/common.gypi
index 2e12840..b7ea034 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -269,7 +269,7 @@
['toolkit_views==1', {
'defines': ['TOOLKIT_VIEWS=1'],
}],
- ['chromeos==1', {
+ ['chromeos==1 or toolkit_views==1', {
'defines': ['OS_CHROMEOS=1'],
}],
['fastbuild!=0', {
diff --git a/chrome/app/chromium_strings.grd b/chrome/app/chromium_strings.grd
index da38b89..9bd0485 100644
--- a/chrome/app/chromium_strings.grd
+++ b/chrome/app/chromium_strings.grd
@@ -127,7 +127,7 @@ be available for now. -->
<message name="IDS_PRODUCT_NAME" desc="The Chrome application name">
Chromium
</message>
- <if expr="pp_ifdef('chromeos')">
+ <if expr="pp_ifdef('chromeos') or pp_ifdef('toolkit_views')">
<message name="IDS_PRODUCT_OS_NAME" desc="The Chrome OS application name">
Chromium OS
</message>
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd
index 8015426..912e464 100644
--- a/chrome/app/generated_resources.grd
+++ b/chrome/app/generated_resources.grd
@@ -5646,7 +5646,7 @@ Keep your key file in a safe place. You will need it to create new versions of y
</if>
<!-- Chrome OS Strings -->
- <if expr="pp_ifdef('chromeos')">
+ <if expr="pp_ifdef('chromeos') or pp_ifdef('toolkit_views')">
<message name="IDS_OPTIONS_SETTINGS_SECTION_TITLE_NETWORK">
Network
</message>
diff --git a/chrome/app/google_chrome_strings.grd b/chrome/app/google_chrome_strings.grd
index dc702c8..f71d7cf 100644
--- a/chrome/app/google_chrome_strings.grd
+++ b/chrome/app/google_chrome_strings.grd
@@ -177,7 +177,7 @@ Chrome supports. -->
<message name="IDS_PRODUCT_NAME" desc="The Chrome application name">
Google Chrome
</message>
- <if expr="pp_ifdef('chromeos')">
+ <if expr="pp_ifdef('chromeos') or pp_ifdef('toolkit_views')">
<message name="IDS_PRODUCT_OS_NAME" desc="The Chrome OS application name">
Google Chrome OS
</message>
diff --git a/chrome/app/theme/theme_resources.grd b/chrome/app/theme/theme_resources.grd
index 4e077e5..a444c21 100644
--- a/chrome/app/theme/theme_resources.grd
+++ b/chrome/app/theme/theme_resources.grd
@@ -341,7 +341,7 @@
<include name="IDR_PRODUCT_ICON_32" file="chromium/chromium_icon_32.png" type="BINDATA" />
</if>
- <if expr="pp_ifdef('chromeos')">
+ <if expr="pp_ifdef('chromeos') or pp_ifdef('toolkit_views')">
<include name="IDR_NEW_BROWSER_WINDOW_ICON" file="new_browser_window.png" type="BINDATA" />
<include name="IDR_TAB_OVERVIEW_BUTTON_ICON" file="tab_overview.png" type="BINDATA" />
@@ -387,17 +387,17 @@
<include name="IDR_STATUSBAR_WIRED" file="statusbar_wired.png" type="BINDATA" />
</if>
- <if expr="pp_ifdef('chromeos') and pp_ifdef('_google_chrome')">
+ <if expr="(pp_ifdef('chromeos') or pp_ifdef('toolkit_views')) and pp_ifdef('_google_chrome')">
<include name="IDR_MAIN_MENU_BUTTON" file="google_chrome/button_menu.png" type="BINDATA" />
<include name="IDR_MAIN_MENU_BUTTON_DROP_DOWN" file="google_chrome/button_menu_drop_down.png" type="BINDATA" />
</if>
- <if expr="pp_ifdef('chromeos') and not pp_ifdef('_google_chrome')">
+ <if expr="(pp_ifdef('chromeos') or pp_ifdef('toolkit_views')) and not pp_ifdef('_google_chrome')">
<include name="IDR_MAIN_MENU_BUTTON" file="chromium/button_menu.png" type="BINDATA" />
<include name="IDR_MAIN_MENU_BUTTON_DROP_DOWN" file="chromium/button_menu_drop_down.png" type="BINDATA" />
</if>
- <if expr="not pp_ifdef('chromeos')">
+ <if expr="not pp_ifdef('chromeos') and not pp_ifdef('toolkit_views')">
<include name="IDR_THEME_FRAME" file="theme_frame_default.png" type="BINDATA" />
<include name="IDR_THEME_TAB_BACKGROUND" file="theme_tab_background.png" type="BINDATA" />
<include name="IDR_THEME_FRAME_INCOGNITO_INACTIVE" file="theme_frame_default_incognito_inactive.png" type="BINDATA" />
diff --git a/chrome/browser/views/frame/browser_view.h b/chrome/browser/views/frame/browser_view.h
index c7e8d77..90d989e 100644
--- a/chrome/browser/views/frame/browser_view.h
+++ b/chrome/browser/views/frame/browser_view.h
@@ -86,6 +86,9 @@ class BrowserView : public BrowserWindow,
// there is no such association.
static BrowserView* GetBrowserViewForNativeWindow(gfx::NativeWindow window);
+ // Returns a Browser instance of this view.
+ Browser* browser() const { return browser_.get(); }
+
// Returns the show flag that should be used to show the frame containing
// this view.
int GetShowState() const;
diff --git a/chrome/browser/views/tabs/tab_overview_message_listener.cc b/chrome/browser/views/tabs/tab_overview_message_listener.cc
index e063f5c..126e605 100644
--- a/chrome/browser/views/tabs/tab_overview_message_listener.cc
+++ b/chrome/browser/views/tabs/tab_overview_message_listener.cc
@@ -6,7 +6,11 @@
#include "chrome/browser/browser.h"
#include "chrome/browser/browser_list.h"
+#if defined(TOOLKIT_VIEWS)
+#include "chrome/browser/views/frame/browser_view.h"
+#else
#include "chrome/browser/gtk/browser_window_gtk.h"
+#endif
#include "chrome/browser/metrics/system_metrics_logger_impl.h"
#include "chrome/browser/metrics/system_metrics.pb.h"
#include "chrome/browser/metrics/user_metrics.h"
@@ -24,6 +28,22 @@ TabOverviewMessageListener* TabOverviewMessageListener::instance() {
return instance;
}
+#if defined(TOOLKIT_VIEWS)
+// static
+BrowserView* TabOverviewMessageListener::GetBrowserViewForGdkWindow(
+ GdkWindow* gdk_window) {
+ gpointer data = NULL;
+ gdk_window_get_user_data(gdk_window, &data);
+ GtkWidget* widget = reinterpret_cast<GtkWidget*>(data);
+ if (widget) {
+ GtkWindow* gtk_window = GTK_WINDOW(widget);
+ return BrowserView::GetBrowserViewForNativeWindow(gtk_window);
+ } else {
+ return NULL;
+ }
+}
+#endif
+
void TabOverviewMessageListener::WillProcessEvent(GdkEvent* event) {
}
@@ -72,10 +92,14 @@ void TabOverviewMessageListener::ProcessMessage(
if (message.param(0) == 0) {
HideOverview();
} else {
- BrowserWindowGtk* browser_window =
+#if defined(TOOLKIT_VIEWS)
+ BrowserView* browser_window = GetBrowserViewForGdkWindow(window);
+#else
+ BrowerWindowGtk* browser_window =
BrowserWindowGtk::GetBrowserWindowForNativeWindow(
BrowserWindowGtk::GetBrowserWindowForXID(
x11_util::GetX11WindowFromGdkWindow(window)));
+#endif
if (browser_window)
ShowOverview(browser_window->browser(), message.param(1));
else
@@ -109,7 +133,12 @@ void TabOverviewMessageListener::ProcessMessage(
// Over a mini-window, make sure the controller is showing the contents
// of the browser the mouse is over.
- BrowserWindowGtk* browser_window =
+#if defined(TOOLKIT_VIEWS)
+ NOTIMPLEMENTED();
+ // TODO(oshima): Figure out how to get BrowserView from XID
+ // in message.param(0).
+#else
+ BrowerWindowGtk* browser_window =
BrowserWindowGtk::GetBrowserWindowForNativeWindow(
BrowserWindowGtk::GetBrowserWindowForXID(message.param(0)));
if (!browser_window)
@@ -125,6 +154,7 @@ void TabOverviewMessageListener::ProcessMessage(
UserMetrics::RecordAction(L"TabOverview_DragOverMiniWindow",
browser_window->browser()->profile());
+#endif
}
default:
diff --git a/chrome/browser/views/tabs/tab_overview_message_listener.h b/chrome/browser/views/tabs/tab_overview_message_listener.h
index 2456de1..4075222 100644
--- a/chrome/browser/views/tabs/tab_overview_message_listener.h
+++ b/chrome/browser/views/tabs/tab_overview_message_listener.h
@@ -13,6 +13,9 @@
#include "chrome/browser/views/tabs/tab_overview_types.h"
class Browser;
+#if defined(TOOLKIT_VIEWS)
+class BrowserView;
+#endif
class NewBrowserWindowWidget;
class TabOverviewController;
@@ -30,6 +33,11 @@ class TabOverviewMessageListener : public MessageLoopForUI::Observer {
private:
friend struct DefaultSingletonTraits<TabOverviewMessageListener>;
+#if defined(TOOLKIT_VIEWS)
+ // Returns a BrowserView that corresponds to given gdk_window.
+ static BrowserView* GetBrowserViewForGdkWindow(GdkWindow* gdk_window);
+#endif
+
TabOverviewMessageListener();
~TabOverviewMessageListener();
diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp
index 78ba44c..8c3a234 100755
--- a/chrome/chrome.gyp
+++ b/chrome/chrome.gyp
@@ -342,7 +342,7 @@
'build', '-o', '<(grit_out_dir)',
'-D', '<(chrome_build)'],
'conditions': [
- ['chromeos==1', {
+ ['chromeos==1 or toolkit_views==1', {
'action': ['-D', 'chromeos'],
}],
['use_titlecase_in_grd_files==1', {
@@ -399,7 +399,7 @@
'-D', '<(chrome_build)'
],
'conditions': [
- ['chromeos==1', {
+ ['chromeos==1 or toolkit_views==1', {
'action': ['-D', 'chromeos'],
}],
['use_titlecase_in_grd_files==1', {
@@ -2363,7 +2363,7 @@
'CHROME_V8',
],
}],
- ['chromeos==0', {
+ ['chromeos==0 and toolkit_views==0', {
'sources/': [
['exclude', '^browser/chromeos'],
],
@@ -2811,7 +2811,7 @@
['include', '^browser/printing/print_dialog_gtk.h'],
],
}],
- ['chromeos==1',{
+ ['chromeos==1 or toolkit_views==1',{
'dependencies': [
'../third_party/protobuf2/protobuf.gyp:protobuf_lite',
'../third_party/protobuf2/protobuf.gyp:protoc',
@@ -4429,7 +4429,7 @@
'../third_party/cld/bar/toolbar/cld/i18n/encodings/compact_lang_det/compact_lang_det_unittest_small.cc',
],
'conditions': [
- ['chromeos==0', {
+ ['chromeos==0 and toolkit_views==0', {
'sources/': [
['exclude', '^browser/chromeos'],
],
diff --git a/chrome/installer/installer.gyp b/chrome/installer/installer.gyp
index 2c7ddcf..cc76dab 100644
--- a/chrome/installer/installer.gyp
+++ b/chrome/installer/installer.gyp
@@ -551,7 +551,7 @@
},
],
'conditions': [
- ['chromeos==0', {
+ ['chromeos==0 and toolkit_views==0', {
'actions': [
{
'variables': {