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

Side by Side Diff: chrome/browser/ui/views/immersive_mode_controller.cc

Issue 11830008: ash/immersive mode: Hide the launcher when entering immersive mode (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: move logic to RootWindowController Created 7 years, 11 months 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
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/immersive_mode_controller.h" 5 #include "chrome/browser/ui/views/immersive_mode_controller.h"
6 6
7 #include "chrome/browser/ui/views/frame/browser_frame.h" 7 #include "chrome/browser/ui/views/frame/browser_frame.h"
8 #include "chrome/browser/ui/views/frame/browser_view.h" 8 #include "chrome/browser/ui/views/frame/browser_view.h"
9 #include "chrome/browser/ui/views/frame/contents_container.h" 9 #include "chrome/browser/ui/views/frame/contents_container.h"
10 #include "chrome/browser/ui/views/tabs/tab_strip.h" 10 #include "chrome/browser/ui/views/tabs/tab_strip.h"
11 #include "chrome/browser/ui/views/toolbar_view.h" 11 #include "chrome/browser/ui/views/toolbar_view.h"
12 #include "ui/compositor/scoped_layer_animation_settings.h" 12 #include "ui/compositor/scoped_layer_animation_settings.h"
13 #include "ui/gfx/screen.h" 13 #include "ui/gfx/screen.h"
14 #include "ui/gfx/transform.h" 14 #include "ui/gfx/transform.h"
15 #include "ui/views/view.h" 15 #include "ui/views/view.h"
16 #include "ui/views/window/non_client_view.h" 16 #include "ui/views/window/non_client_view.h"
17 17
18 #if defined(USE_ASH) 18 #if defined(USE_ASH)
19 #include "ash/ash_switches.h" 19 #include "ash/ash_switches.h"
20 #include "ash/shell.h"
21 #include "ash/wm/window_properties.h"
20 #include "base/command_line.h" 22 #include "base/command_line.h"
21 #endif 23 #endif
22 24
23 #if defined(USE_AURA) 25 #if defined(USE_AURA)
24 #include "ui/aura/client/aura_constants.h" 26 #include "ui/aura/client/aura_constants.h"
25 #include "ui/aura/window.h" 27 #include "ui/aura/window.h"
26 #include "ui/aura/window_observer.h" 28 #include "ui/aura/window_observer.h"
27 #endif 29 #endif
28 30
29 using views::View; 31 using views::View;
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 enabled_ = enabled; 294 enabled_ = enabled;
293 295
294 if (!enabled_) { 296 if (!enabled_) {
295 // Layout occurs below because EndReveal() only performs layout if the view 297 // Layout occurs below because EndReveal() only performs layout if the view
296 // is already revealed. 298 // is already revealed.
297 EndReveal(ANIMATE_NO, LAYOUT_NO); 299 EndReveal(ANIMATE_NO, LAYOUT_NO);
298 // Stop cursor-at-top tracking. 300 // Stop cursor-at-top tracking.
299 top_timer_.Stop(); 301 top_timer_.Stop();
300 } 302 }
301 303
304 #if defined(USE_ASH)
305 native_window_->SetProperty(ash::internal::kImmersiveModeKey, enabled_);
306 // Ash on Windows may not have a shell.
307 if (ash::Shell::HasInstance()) {
308 // Shelf auto-hides in immersive mode.
309 ash::Shell::GetInstance()->UpdateShelfVisibility();
310 }
311 #endif
312
302 // Always ensure tab strip is in correct state. 313 // Always ensure tab strip is in correct state.
303 browser_view_->tabstrip()->SetImmersiveStyle(enabled_); 314 browser_view_->tabstrip()->SetImmersiveStyle(enabled_);
304 browser_view_->Layout(); 315 browser_view_->Layout();
305 316
306 EnableWindowObservers(enabled_); 317 EnableWindowObservers(enabled_);
307 } 318 }
308 319
309 views::View* ImmersiveModeController::reveal_view() { 320 views::View* ImmersiveModeController::reveal_view() {
310 return reveal_view_.get(); 321 return reveal_view_.get();
311 } 322 }
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
478 base::TimeDelta::FromMilliseconds(kRevealAnimationDurationMs)); 489 base::TimeDelta::FromMilliseconds(kRevealAnimationDurationMs));
479 settings.AddObserver(this); // Resets |reveal_view_| on completion. 490 settings.AddObserver(this); // Resets |reveal_view_| on completion.
480 gfx::Transform transform; 491 gfx::Transform transform;
481 transform.Translate(0, -layer->bounds().height()); 492 transform.Translate(0, -layer->bounds().height());
482 layer->SetTransform(transform); 493 layer->SetTransform(transform);
483 } 494 }
484 495
485 void ImmersiveModeController::OnHideAnimationCompleted() { 496 void ImmersiveModeController::OnHideAnimationCompleted() {
486 reveal_view_.reset(); // Also removes from parent. 497 reveal_view_.reset(); // Also removes from parent.
487 } 498 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698