OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_UI_VIEWS_TABS_BROWSER_TAB_STRIP_CONTROLLER_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_TABS_BROWSER_TAB_STRIP_CONTROLLER_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_TABS_BROWSER_TAB_STRIP_CONTROLLER_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_TABS_BROWSER_TAB_STRIP_CONTROLLER_H_ |
7 | 7 |
| 8 #include <memory> |
| 9 |
8 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
9 #include "base/macros.h" | 11 #include "base/macros.h" |
10 #include "base/memory/scoped_ptr.h" | |
11 #include "chrome/browser/ui/tabs/hover_tab_selector.h" | 12 #include "chrome/browser/ui/tabs/hover_tab_selector.h" |
12 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 13 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
13 #include "chrome/browser/ui/views/frame/immersive_mode_controller.h" | 14 #include "chrome/browser/ui/views/frame/immersive_mode_controller.h" |
14 #include "chrome/browser/ui/views/tabs/tab_strip_controller.h" | 15 #include "chrome/browser/ui/views/tabs/tab_strip_controller.h" |
15 #include "components/prefs/pref_change_registrar.h" | 16 #include "components/prefs/pref_change_registrar.h" |
16 | 17 |
17 class Browser; | 18 class Browser; |
18 class Tab; | 19 class Tab; |
19 class TabStrip; | 20 class TabStrip; |
20 struct TabRendererData; | 21 struct TabRendererData; |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
142 const std::string& mime_type); | 143 const std::string& mime_type); |
143 | 144 |
144 TabStripModel* model_; | 145 TabStripModel* model_; |
145 | 146 |
146 TabStrip* tabstrip_; | 147 TabStrip* tabstrip_; |
147 | 148 |
148 // Non-owning pointer to the browser which is using this controller. | 149 // Non-owning pointer to the browser which is using this controller. |
149 Browser* browser_; | 150 Browser* browser_; |
150 | 151 |
151 // If non-NULL it means we're showing a menu for the tab. | 152 // If non-NULL it means we're showing a menu for the tab. |
152 scoped_ptr<TabContextMenuContents> context_menu_contents_; | 153 std::unique_ptr<TabContextMenuContents> context_menu_contents_; |
153 | 154 |
154 // Helper for performing tab selection as a result of dragging over a tab. | 155 // Helper for performing tab selection as a result of dragging over a tab. |
155 HoverTabSelector hover_tab_selector_; | 156 HoverTabSelector hover_tab_selector_; |
156 | 157 |
157 // Forces the tabs to use the regular (non-immersive) style and the | 158 // Forces the tabs to use the regular (non-immersive) style and the |
158 // top-of-window views to be revealed when the user is dragging |tabstrip|'s | 159 // top-of-window views to be revealed when the user is dragging |tabstrip|'s |
159 // tabs. | 160 // tabs. |
160 scoped_ptr<ImmersiveRevealedLock> immersive_reveal_lock_; | 161 std::unique_ptr<ImmersiveRevealedLock> immersive_reveal_lock_; |
161 | 162 |
162 PrefChangeRegistrar local_pref_registrar_; | 163 PrefChangeRegistrar local_pref_registrar_; |
163 | 164 |
164 base::WeakPtrFactory<BrowserTabStripController> weak_ptr_factory_; | 165 base::WeakPtrFactory<BrowserTabStripController> weak_ptr_factory_; |
165 | 166 |
166 DISALLOW_COPY_AND_ASSIGN(BrowserTabStripController); | 167 DISALLOW_COPY_AND_ASSIGN(BrowserTabStripController); |
167 }; | 168 }; |
168 | 169 |
169 #endif // CHROME_BROWSER_UI_VIEWS_TABS_BROWSER_TAB_STRIP_CONTROLLER_H_ | 170 #endif // CHROME_BROWSER_UI_VIEWS_TABS_BROWSER_TAB_STRIP_CONTROLLER_H_ |
OLD | NEW |