summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-26 21:32:29 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-26 21:32:29 +0000
commit0c19b9e8caecd61c4652d6f71b2282c908eaac6d (patch)
tree6010f7f19a1bc3a27f1af7a5ad62280e054799e8 /chrome
parentd44051f5465679cce10a36dfbba58f9a75e27258 (diff)
downloadchromium_src-0c19b9e8caecd61c4652d6f71b2282c908eaac6d.zip
chromium_src-0c19b9e8caecd61c4652d6f71b2282c908eaac6d.tar.gz
chromium_src-0c19b9e8caecd61c4652d6f71b2282c908eaac6d.tar.bz2
Make most of browser_view compile on Linux.
Review URL: http://codereview.chromium.org/115786 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16918 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/views/frame/browser_view.cc31
1 files changed, 26 insertions, 5 deletions
diff --git a/chrome/browser/views/frame/browser_view.cc b/chrome/browser/views/frame/browser_view.cc
index 17720d9..d83cc4e 100644
--- a/chrome/browser/views/frame/browser_view.cc
+++ b/chrome/browser/views/frame/browser_view.cc
@@ -15,6 +15,7 @@
#include "app/resource_bundle.h"
#include "base/command_line.h"
#include "base/time.h"
+#include "build/build_config.h"
#include "chrome/app/chrome_dll_resource.h"
#include "chrome/browser/app_modal_dialog_queue.h"
#include "chrome/browser/bookmarks/bookmark_utils.h"
@@ -100,7 +101,7 @@ static int explicit_show_state = -1;
// Returned from BrowserView::GetClassName.
static const char kBrowserViewClassName[] = "browser/views/BrowserView";
-static const struct {
+static const struct MenuLayout {
bool separator;
int command;
int label;
@@ -284,8 +285,10 @@ BrowserView::BrowserView(Browser* browser)
contents_container_(NULL),
initialized_(false),
ignore_layout_(false),
+#if defined(OS_WIN)
hung_window_detector_(&hung_plugin_action_),
ticker_(0),
+#endif
extension_shelf_(NULL) {
InitClass();
browser_->tabstrip_model()->AddObserver(this);
@@ -294,9 +297,11 @@ BrowserView::BrowserView(Browser* browser)
BrowserView::~BrowserView() {
browser_->tabstrip_model()->RemoveObserver(this);
+#if defined(OS_WIN)
// Stop hung plugin monitoring.
ticker_.Stop();
ticker_.UnregisterTickHandler(&hung_window_detector_);
+#endif
}
// static
@@ -320,11 +325,16 @@ int BrowserView::GetShowState() const {
if (explicit_show_state != -1)
return explicit_show_state;
+#if defined(OS_WIN)
STARTUPINFO si = {0};
si.cb = sizeof(si);
si.dwFlags = STARTF_USESHOWWINDOW;
GetStartupInfo(&si);
return si.wShowWindow;
+#else
+ NOTIMPLEMENTED();
+ return 0;
+#endif
}
void BrowserView::WindowMoved() {
@@ -594,7 +604,7 @@ void BrowserView::FlashFrame() {
}
gfx::NativeWindow BrowserView::GetNativeHandle() {
- return GetWidget()->GetNativeView();
+ return GetWidget()->GetWindow()->GetNativeWindow();
}
BrowserWindowTesting* BrowserView::GetBrowserWindowTesting() {
@@ -844,7 +854,7 @@ void BrowserView::ShowNewProfileDialog() {
void BrowserView::ConfirmBrowserCloseWithPendingDownloads() {
DownloadInProgressConfirmDialogDelegate* delegate =
new DownloadInProgressConfirmDialogDelegate(browser_.get());
- views::Window::CreateChromeWindow(GetWidget()->GetNativeView(), gfx::Rect(),
+ views::Window::CreateChromeWindow(GetNativeHandle(), gfx::Rect(),
delegate)->Show();
}
@@ -852,7 +862,7 @@ void BrowserView::ShowHTMLDialog(HtmlDialogUIDelegate* delegate,
gfx::NativeWindow parent_window) {
// Default to using our window as the parent if the argument is not specified.
gfx::NativeWindow parent = parent_window ? parent_window
- : GetWidget()->GetNativeView();
+ : GetNativeHandle();
browser::ShowHtmlDialogView(parent_window, browser_.get(), delegate);
}
@@ -1530,6 +1540,7 @@ bool BrowserView::UpdateChildViewAndLayout(views::View* new_view,
}
void BrowserView::LoadAccelerators() {
+#if defined(OS_WIN)
HACCEL accelerator_table = AtlLoadAccelerators(IDR_MAINFRAME);
DCHECK(accelerator_table);
@@ -1562,6 +1573,9 @@ void BrowserView::LoadAccelerators() {
// We don't need the Windows accelerator table anymore.
free(accelerators);
+#else
+ NOTIMPLEMENTED();
+#endif
}
void BrowserView::BuildMenuForTabStriplessWindow(views::Menu* menu,
@@ -1569,7 +1583,7 @@ void BrowserView::BuildMenuForTabStriplessWindow(views::Menu* menu,
encoding_menu_delegate_.reset(new EncodingMenuControllerDelegate(
browser_.get()));
- for (int i = 0; i < arraysize(kMenuLayout); ++i) {
+ for (size_t i = 0; i < arraysize(kMenuLayout); ++i) {
if (kMenuLayout[i].separator) {
menu->AddSeparator(insertion_index);
} else {
@@ -1604,6 +1618,7 @@ void BrowserView::BuildMenuForTabStriplessWindow(views::Menu* menu,
}
int BrowserView::GetCommandIDForAppCommandID(int app_command_id) const {
+#if defined(OS_WIN)
switch (app_command_id) {
// NOTE: The order here matches the APPCOMMAND declaration order in the
// Windows headers.
@@ -1629,6 +1644,10 @@ int BrowserView::GetCommandIDForAppCommandID(int app_command_id) const {
case APPCOMMAND_SPELL_CHECK:
default: return -1;
}
+#else
+ // App commands are Windows-specific so there's nothing to do here.
+ return -1;
+#endif
}
void BrowserView::LoadingAnimationCallback() {
@@ -1650,6 +1669,7 @@ void BrowserView::LoadingAnimationCallback() {
}
void BrowserView::InitHangMonitor() {
+#if defined(OS_WIN)
PrefService* pref_service = g_browser_process->local_state();
if (!pref_service)
return;
@@ -1670,6 +1690,7 @@ void BrowserView::InitHangMonitor() {
pref_service->SetInteger(prefs::kHungPluginDetectFrequency,
hung_plugin_detect_freq);
}
+#endif
}
// static