OLD | NEW |
1 // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_BROWSER_H_ | 5 #ifndef CHROME_BROWSER_BROWSER_H_ |
6 #define CHROME_BROWSER_BROWSER_H_ | 6 #define CHROME_BROWSER_BROWSER_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "base/gfx/rect.h" | 12 #include "base/gfx/rect.h" |
13 #include "base/scoped_ptr.h" | 13 #include "base/scoped_ptr.h" |
14 #include "base/task.h" | 14 #include "base/task.h" |
15 #include "chrome/browser/command_updater.h" | 15 #include "chrome/browser/command_updater.h" |
| 16 #include "chrome/browser/extensions/extension_shelf_model.h" |
16 #include "chrome/browser/sessions/session_id.h" | 17 #include "chrome/browser/sessions/session_id.h" |
17 #include "chrome/browser/shell_dialogs.h" | 18 #include "chrome/browser/shell_dialogs.h" |
18 #include "chrome/browser/tabs/tab_strip_model.h" | 19 #include "chrome/browser/tabs/tab_strip_model.h" |
19 #include "chrome/browser/tab_contents/page_navigator.h" | 20 #include "chrome/browser/tab_contents/page_navigator.h" |
20 #include "chrome/browser/tab_contents/tab_contents_delegate.h" | 21 #include "chrome/browser/tab_contents/tab_contents_delegate.h" |
21 #include "chrome/browser/toolbar_model.h" | 22 #include "chrome/browser/toolbar_model.h" |
22 #include "chrome/common/notification_registrar.h" | 23 #include "chrome/common/notification_registrar.h" |
23 #include "chrome/common/pref_member.h" | 24 #include "chrome/common/pref_member.h" |
24 #include "testing/gtest/include/gtest/gtest_prod.h" | 25 #include "testing/gtest/include/gtest/gtest_prod.h" |
25 | 26 |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 DCHECK(!window_); | 127 DCHECK(!window_); |
127 window_ = window; | 128 window_ = window; |
128 } | 129 } |
129 #endif | 130 #endif |
130 | 131 |
131 BrowserWindow* window() const { return window_; } | 132 BrowserWindow* window() const { return window_; } |
132 ToolbarModel* toolbar_model() { return &toolbar_model_; } | 133 ToolbarModel* toolbar_model() { return &toolbar_model_; } |
133 const SessionID& session_id() const { return session_id_; } | 134 const SessionID& session_id() const { return session_id_; } |
134 CommandUpdater* command_updater() { return &command_updater_; } | 135 CommandUpdater* command_updater() { return &command_updater_; } |
135 FindBarController* find_bar() { return find_bar_controller_.get(); } | 136 FindBarController* find_bar() { return find_bar_controller_.get(); } |
| 137 ExtensionShelfModel* extension_shelf_model() { |
| 138 return extension_shelf_model_.get(); |
| 139 } |
136 | 140 |
137 // Setters ///////////////////////////////////////////////////////////////// | 141 // Setters ///////////////////////////////////////////////////////////////// |
138 | 142 |
139 void set_user_data_dir_profiles(const std::vector<std::wstring>& profiles); | 143 void set_user_data_dir_profiles(const std::vector<std::wstring>& profiles); |
140 | 144 |
141 // Browser Creation Helpers ///////////////////////////////////////////////// | 145 // Browser Creation Helpers ///////////////////////////////////////////////// |
142 | 146 |
143 // Opens a new window with the default blank tab. | 147 // Opens a new window with the default blank tab. |
144 static void OpenEmptyWindow(Profile* profile); | 148 static void OpenEmptyWindow(Profile* profile); |
145 | 149 |
(...skipping 550 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
696 | 700 |
697 private: | 701 private: |
698 Browser* browser_; | 702 Browser* browser_; |
699 | 703 |
700 DISALLOW_COPY_AND_ASSIGN(BrowserToolbarModel); | 704 DISALLOW_COPY_AND_ASSIGN(BrowserToolbarModel); |
701 }; | 705 }; |
702 | 706 |
703 // The model for the toolbar view. | 707 // The model for the toolbar view. |
704 BrowserToolbarModel toolbar_model_; | 708 BrowserToolbarModel toolbar_model_; |
705 | 709 |
| 710 // The model for the extension shelf. |
| 711 scoped_ptr<ExtensionShelfModel> extension_shelf_model_; |
| 712 |
706 // UI update coalescing and handling //////////////////////////////////////// | 713 // UI update coalescing and handling //////////////////////////////////////// |
707 | 714 |
708 // Tracks invalidates to the UI, see the declaration in the .cc file. | 715 // Tracks invalidates to the UI, see the declaration in the .cc file. |
709 struct UIUpdate; | 716 struct UIUpdate; |
710 typedef std::vector<UIUpdate> UpdateVector; | 717 typedef std::vector<UIUpdate> UpdateVector; |
711 | 718 |
712 // Lists all UI updates that are pending. We don't update things like the | 719 // Lists all UI updates that are pending. We don't update things like the |
713 // URL or tab title right away to avoid flickering and extra painting. | 720 // URL or tab title right away to avoid flickering and extra painting. |
714 // See ScheduleUIUpdate and ProcessPendingUIUpdates. | 721 // See ScheduleUIUpdate and ProcessPendingUIUpdates. |
715 UpdateVector scheduled_updates_; | 722 UpdateVector scheduled_updates_; |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
767 // The browser idle task helps cleanup unused memory resources when idle. | 774 // The browser idle task helps cleanup unused memory resources when idle. |
768 scoped_ptr<BrowserIdleTimer> idle_task_; | 775 scoped_ptr<BrowserIdleTimer> idle_task_; |
769 | 776 |
770 // Keep track of the encoding auto detect pref. | 777 // Keep track of the encoding auto detect pref. |
771 BooleanPrefMember encoding_auto_detect_; | 778 BooleanPrefMember encoding_auto_detect_; |
772 | 779 |
773 DISALLOW_COPY_AND_ASSIGN(Browser); | 780 DISALLOW_COPY_AND_ASSIGN(Browser); |
774 }; | 781 }; |
775 | 782 |
776 #endif // CHROME_BROWSER_BROWSER_H_ | 783 #endif // CHROME_BROWSER_BROWSER_H_ |
OLD | NEW |