summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-16 22:33:41 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-16 22:33:41 +0000
commit5dc65f1d91c6225cb8dac6b0a4eeed05e6b81775 (patch)
treeb1c5c4ee6d5545ea95042ef78e6d2b6b240ea1f0
parent5d53425a35d11ae1f3276be8a7565722b67666b5 (diff)
downloadchromium_src-5dc65f1d91c6225cb8dac6b0a4eeed05e6b81775.zip
chromium_src-5dc65f1d91c6225cb8dac6b0a4eeed05e6b81775.tar.gz
chromium_src-5dc65f1d91c6225cb8dac6b0a4eeed05e6b81775.tar.bz2
Make Browser::set_window defined all the time, and adds the ability to
set the non client frame view. BUG=none TEST=none Review URL: http://codereview.chromium.org/67236 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13890 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/browser.h4
-rw-r--r--chrome/browser/views/frame/browser_frame.cc9
-rw-r--r--chrome/browser/views/frame/browser_frame.h4
3 files changed, 16 insertions, 1 deletions
diff --git a/chrome/browser/browser.h b/chrome/browser/browser.h
index 147731c..47ed86e 100644
--- a/chrome/browser/browser.h
+++ b/chrome/browser/browser.h
@@ -115,7 +115,7 @@ class Browser : public TabStripModelDelegate,
const std::vector<std::wstring>& user_data_dir_profiles() const {
return g_browser_process->user_data_dir_profiles();
}
-#ifdef UNIT_TEST
+#if defined(UNIT_TEST) || defined(FRAME_WINDOW)
// Sets the BrowserWindow. This is intended for testing and generally not
// useful outside of testing. Use CreateBrowserWindow outside of testing, or
// the static convenience methods that create a BrowserWindow for you.
@@ -124,6 +124,7 @@ class Browser : public TabStripModelDelegate,
window_ = window;
}
#endif
+
BrowserWindow* window() const { return window_; }
ToolbarModel* toolbar_model() { return &toolbar_model_; }
const SessionID& session_id() const { return session_id_; }
@@ -466,6 +467,7 @@ class Browser : public TabStripModelDelegate,
Browser::Type browser_type,
Profile* profile,
bool honor_saved_maximized_state);
+
private:
// Command and state updating ///////////////////////////////////////////////
diff --git a/chrome/browser/views/frame/browser_frame.cc b/chrome/browser/views/frame/browser_frame.cc
index 6e43b6c..2973f5c 100644
--- a/chrome/browser/views/frame/browser_frame.cc
+++ b/chrome/browser/views/frame/browser_frame.cc
@@ -60,6 +60,15 @@ void BrowserFrame::UpdateThrobber(bool running) {
browser_frame_view_->UpdateThrobber(running);
}
+#if defined(FRAME_WINDOW)
+void BrowserFrame::SetBrowserNonClientFrameView(
+ BrowserNonClientFrameView* view) {
+ GetNonClientView()->SetFrameView(view);
+ // SetFrameView deletes the old browser_frame_view_.
+ browser_frame_view_ = view;
+}
+#endif
+
///////////////////////////////////////////////////////////////////////////////
// BrowserFrame, views::WidgetWin overrides:
diff --git a/chrome/browser/views/frame/browser_frame.h b/chrome/browser/views/frame/browser_frame.h
index 17813af..f90451a 100644
--- a/chrome/browser/views/frame/browser_frame.h
+++ b/chrome/browser/views/frame/browser_frame.h
@@ -53,6 +53,10 @@ class BrowserFrame : public views::WindowWin {
BrowserView* browser_view() const { return browser_view_; }
+#if defined(FRAME_WINDOW)
+ void SetBrowserNonClientFrameView(BrowserNonClientFrameView* view);
+#endif
+
protected:
// Overridden from views::WidgetWin:
virtual bool AcceleratorPressed(views::Accelerator* accelerator);