OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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_VIEWS_TABS_TAB_STRIP_H_ | 5 #ifndef CHROME_BROWSER_VIEWS_TABS_TAB_STRIP_H_ |
6 #define CHROME_BROWSER_VIEWS_TABS_TAB_STRIP_H_ | 6 #define CHROME_BROWSER_VIEWS_TABS_TAB_STRIP_H_ |
7 | 7 |
8 #include "base/gfx/point.h" | 8 #include "base/gfx/point.h" |
9 #include "base/message_loop.h" | 9 #include "base/message_loop.h" |
10 #include "chrome/browser/tabs/tab_strip_model.h" | 10 #include "chrome/browser/tabs/tab_strip_model.h" |
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
266 | 266 |
267 // Starts various types of TabStrip animations. | 267 // Starts various types of TabStrip animations. |
268 void StartResizeLayoutAnimation(); | 268 void StartResizeLayoutAnimation(); |
269 void StartInsertTabAnimation(int index); | 269 void StartInsertTabAnimation(int index); |
270 void StartRemoveTabAnimation(int index, TabContents* contents); | 270 void StartRemoveTabAnimation(int index, TabContents* contents); |
271 void StartMoveTabAnimation(int from_index, int to_index); | 271 void StartMoveTabAnimation(int from_index, int to_index); |
272 void StartPinnedTabAnimation(int index); | 272 void StartPinnedTabAnimation(int index); |
273 void StartPinAndMoveTabAnimation(int from_index, int to_index, | 273 void StartPinAndMoveTabAnimation(int from_index, int to_index, |
274 const gfx::Rect& start_bounds); | 274 const gfx::Rect& start_bounds); |
275 | 275 |
276 // Returns true if detach or select changes in the model should be reflected | |
277 // in the TabStrip. This returns false if we're closing all tabs in the | |
278 // TabStrip and so we should prevent updating. This is not const because we | |
279 // use this as a signal to cancel any active animations. | |
280 bool CanUpdateDisplay(); | |
281 | |
282 // Notifies the TabStrip that the specified TabAnimation has completed. | 276 // Notifies the TabStrip that the specified TabAnimation has completed. |
283 // Optionally a full Layout will be performed, specified by |layout|. | 277 // Optionally a full Layout will be performed, specified by |layout|. |
284 void FinishAnimation(TabAnimation* animation, bool layout); | 278 void FinishAnimation(TabAnimation* animation, bool layout); |
285 | 279 |
286 // Finds the index of the TabContents corresponding to |tab| in our | 280 // Finds the index of the TabContents corresponding to |tab| in our |
287 // associated TabStripModel, or -1 if there is none (e.g. the specified |tab| | 281 // associated TabStripModel, or -1 if there is none (e.g. the specified |tab| |
288 // is being animated closed). | 282 // is being animated closed). |
289 int GetIndexOfTab(const Tab* tab) const; | 283 int GetIndexOfTab(const Tab* tab) const; |
290 | 284 |
291 // Calculates the available width for tabs, assuming a Tab is to be closed. | 285 // Calculates the available width for tabs, assuming a Tab is to be closed. |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
395 }; | 389 }; |
396 std::vector<TabData> tab_data_; | 390 std::vector<TabData> tab_data_; |
397 | 391 |
398 // The currently running animation. | 392 // The currently running animation. |
399 scoped_ptr<TabAnimation> active_animation_; | 393 scoped_ptr<TabAnimation> active_animation_; |
400 | 394 |
401 DISALLOW_COPY_AND_ASSIGN(TabStrip); | 395 DISALLOW_COPY_AND_ASSIGN(TabStrip); |
402 }; | 396 }; |
403 | 397 |
404 #endif // CHROME_BROWSER_VIEWS_TABS_TAB_STRIP_H_ | 398 #endif // CHROME_BROWSER_VIEWS_TABS_TAB_STRIP_H_ |
OLD | NEW |