Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(137)

Side by Side Diff: chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc

Issue 60353003: Enables stacked tabs for aura-metro (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/ui/views/tabs/tab_strip.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/ui/views/tabs/browser_tab_strip_controller.h" 5 #include "chrome/browser/ui/views/tabs/browser_tab_strip_controller.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/prefs/pref_service.h" 9 #include "base/prefs/pref_service.h"
10 #include "chrome/browser/browser_process.h" 10 #include "chrome/browser/browser_process.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 43
44 TabRendererData::NetworkState TabContentsNetworkState( 44 TabRendererData::NetworkState TabContentsNetworkState(
45 WebContents* contents) { 45 WebContents* contents) {
46 if (!contents || !contents->IsLoading()) 46 if (!contents || !contents->IsLoading())
47 return TabRendererData::NETWORK_STATE_NONE; 47 return TabRendererData::NETWORK_STATE_NONE;
48 if (contents->IsWaitingForResponse()) 48 if (contents->IsWaitingForResponse())
49 return TabRendererData::NETWORK_STATE_WAITING; 49 return TabRendererData::NETWORK_STATE_WAITING;
50 return TabRendererData::NETWORK_STATE_LOADING; 50 return TabRendererData::NETWORK_STATE_LOADING;
51 } 51 }
52 52
53 TabStripLayoutType DetermineTabStripLayout(PrefService* prefs, 53 TabStripLayoutType DetermineTabStripLayout(
54 bool* adjust_layout) { 54 PrefService* prefs,
55 chrome::HostDesktopType host_desktop_type,
56 bool* adjust_layout) {
55 *adjust_layout = false; 57 *adjust_layout = false;
56 if (CommandLine::ForCurrentProcess()->HasSwitch( 58 if (CommandLine::ForCurrentProcess()->HasSwitch(
57 switches::kEnableStackedTabStrip)) { 59 switches::kEnableStackedTabStrip)) {
58 return TAB_STRIP_LAYOUT_STACKED; 60 return TAB_STRIP_LAYOUT_STACKED;
59 } 61 }
60 // For chromeos always allow entering stacked mode. 62 // For chromeos always allow entering stacked mode.
61 #if !defined(OS_CHROMEOS) 63 #if defined(USE_AURA)
64 if (host_desktop_type != chrome::HOST_DESKTOP_TYPE_ASH)
65 return TAB_STRIP_LAYOUT_SHRINK;
66 #else
62 if (ui::GetDisplayLayout() != ui::LAYOUT_TOUCH) 67 if (ui::GetDisplayLayout() != ui::LAYOUT_TOUCH)
63 return TAB_STRIP_LAYOUT_SHRINK; 68 return TAB_STRIP_LAYOUT_SHRINK;
64 #endif 69 #endif
65 *adjust_layout = true; 70 *adjust_layout = true;
66 switch (prefs->GetInteger(prefs::kTabStripLayoutType)) { 71 switch (prefs->GetInteger(prefs::kTabStripLayoutType)) {
67 case TAB_STRIP_LAYOUT_STACKED: 72 case TAB_STRIP_LAYOUT_STACKED:
68 return TAB_STRIP_LAYOUT_STACKED; 73 return TAB_STRIP_LAYOUT_STACKED;
69 default: 74 default:
70 return TAB_STRIP_LAYOUT_SHRINK; 75 return TAB_STRIP_LAYOUT_SHRINK;
71 } 76 }
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 model_->delegate()->AddBlankTabAt(-1, true); 353 model_->delegate()->AddBlankTabAt(-1, true);
349 } 354 }
350 355
351 bool BrowserTabStripController::IsIncognito() { 356 bool BrowserTabStripController::IsIncognito() {
352 return browser_->profile()->IsOffTheRecord(); 357 return browser_->profile()->IsOffTheRecord();
353 } 358 }
354 359
355 void BrowserTabStripController::LayoutTypeMaybeChanged() { 360 void BrowserTabStripController::LayoutTypeMaybeChanged() {
356 bool adjust_layout = false; 361 bool adjust_layout = false;
357 TabStripLayoutType layout_type = 362 TabStripLayoutType layout_type =
358 DetermineTabStripLayout(g_browser_process->local_state(), &adjust_layout); 363 DetermineTabStripLayout(g_browser_process->local_state(),
364 browser_->host_desktop_type(), &adjust_layout);
359 if (!adjust_layout || layout_type == tabstrip_->layout_type()) 365 if (!adjust_layout || layout_type == tabstrip_->layout_type())
360 return; 366 return;
361 367
362 g_browser_process->local_state()->SetInteger( 368 g_browser_process->local_state()->SetInteger(
363 prefs::kTabStripLayoutType, 369 prefs::kTabStripLayoutType,
364 static_cast<int>(tabstrip_->layout_type())); 370 static_cast<int>(tabstrip_->layout_type()));
365 } 371 }
366 372
367 void BrowserTabStripController::OnStartedDraggingTabs() { 373 void BrowserTabStripController::OnStartedDraggingTabs() {
368 BrowserView* browser_view = BrowserView::GetBrowserViewForBrowser(browser_); 374 BrowserView* browser_view = BrowserView::GetBrowserViewForBrowser(browser_);
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
515 hover_tab_selector_.CancelTabTransition(); 521 hover_tab_selector_.CancelTabTransition();
516 522
517 TabRendererData data; 523 TabRendererData data;
518 SetTabRendererDataFromModel(contents, index, &data, NEW_TAB); 524 SetTabRendererDataFromModel(contents, index, &data, NEW_TAB);
519 tabstrip_->AddTabAt(index, data, is_active); 525 tabstrip_->AddTabAt(index, data, is_active);
520 } 526 }
521 527
522 void BrowserTabStripController::UpdateLayoutType() { 528 void BrowserTabStripController::UpdateLayoutType() {
523 bool adjust_layout = false; 529 bool adjust_layout = false;
524 TabStripLayoutType layout_type = 530 TabStripLayoutType layout_type =
525 DetermineTabStripLayout(g_browser_process->local_state(), &adjust_layout); 531 DetermineTabStripLayout(g_browser_process->local_state(),
532 browser_->host_desktop_type(), &adjust_layout);
526 tabstrip_->SetLayoutType(layout_type, adjust_layout); 533 tabstrip_->SetLayoutType(layout_type, adjust_layout);
527 } 534 }
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/ui/views/tabs/tab_strip.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698