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 #include "chrome/browser/tabs/tab_strip_model.h" | 5 #include "chrome/browser/tabs/tab_strip_model.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 544 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
555 DCHECK(ContainsIndex(index)); | 555 DCHECK(ContainsIndex(index)); |
556 if (contents_data_[index]->pinned == pinned) | 556 if (contents_data_[index]->pinned == pinned) |
557 return; | 557 return; |
558 | 558 |
559 if (IsAppTab(index)) { | 559 if (IsAppTab(index)) { |
560 if (!pinned) { | 560 if (!pinned) { |
561 // App tabs should always be pinned. | 561 // App tabs should always be pinned. |
562 NOTREACHED(); | 562 NOTREACHED(); |
563 return; | 563 return; |
564 } | 564 } |
565 // Changing the pinned state of an app tab doesn't effect it's mini-tab | 565 // Changing the pinned state of an app tab doesn't affect its mini-tab |
566 // status. | 566 // status. |
567 contents_data_[index]->pinned = pinned; | 567 contents_data_[index]->pinned = pinned; |
568 } else { | 568 } else { |
569 // The tab is not an app tab, it's position may have to change as the | 569 // The tab is not an app tab, it's position may have to change as the |
570 // mini-tab state is changing. | 570 // mini-tab state is changing. |
571 int non_mini_tab_index = IndexOfFirstNonMiniTab(); | 571 int non_mini_tab_index = IndexOfFirstNonMiniTab(); |
572 contents_data_[index]->pinned = pinned; | 572 contents_data_[index]->pinned = pinned; |
573 if (pinned && index != non_mini_tab_index) { | 573 if (pinned && index != non_mini_tab_index) { |
574 MoveTabContentsAtImpl(index, non_mini_tab_index, false); | 574 MoveTabContentsAtImpl(index, non_mini_tab_index, false); |
575 index = non_mini_tab_index; | 575 index = non_mini_tab_index; |
(...skipping 761 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1337 void TabStripModel::ForgetOpenersAndGroupsReferencing( | 1337 void TabStripModel::ForgetOpenersAndGroupsReferencing( |
1338 const NavigationController* tab) { | 1338 const NavigationController* tab) { |
1339 for (TabContentsDataVector::const_iterator i = contents_data_.begin(); | 1339 for (TabContentsDataVector::const_iterator i = contents_data_.begin(); |
1340 i != contents_data_.end(); ++i) { | 1340 i != contents_data_.end(); ++i) { |
1341 if ((*i)->group == tab) | 1341 if ((*i)->group == tab) |
1342 (*i)->group = NULL; | 1342 (*i)->group = NULL; |
1343 if ((*i)->opener == tab) | 1343 if ((*i)->opener == tab) |
1344 (*i)->opener = NULL; | 1344 (*i)->opener = NULL; |
1345 } | 1345 } |
1346 } | 1346 } |
OLD | NEW |