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

Side by Side Diff: chrome/browser/chromeos/login/webui_screen_locker.cc

Issue 15974008: Rename SessionStateController -> LockStateController (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 7 years, 6 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/chromeos/login/webui_screen_locker.h" 5 #include "chrome/browser/chromeos/login/webui_screen_locker.h"
6 6
7 #include "ash/shell.h" 7 #include "ash/shell.h"
8 #include "ash/wm/session_state_controller.h" 8 #include "ash/wm/session_lock_state_controller.h"
9 #include "ash/wm/session_state_observer.h" 9 #include "ash/wm/session_lock_state_observer.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
11 #include "base/metrics/histogram.h" 11 #include "base/metrics/histogram.h"
12 #include "base/utf_string_conversions.h" 12 #include "base/utf_string_conversions.h"
13 #include "base/values.h" 13 #include "base/values.h"
14 #include "chrome/browser/browser_shutdown.h" 14 #include "chrome/browser/browser_shutdown.h"
15 #include "chrome/browser/chromeos/accessibility/accessibility_util.h" 15 #include "chrome/browser/chromeos/accessibility/accessibility_util.h"
16 #include "chrome/browser/chromeos/login/helper.h" 16 #include "chrome/browser/chromeos/login/helper.h"
17 #include "chrome/browser/chromeos/login/screen_locker.h" 17 #include "chrome/browser/chromeos/login/screen_locker.h"
18 #include "chrome/browser/chromeos/login/user_manager.h" 18 #include "chrome/browser/chromeos/login/user_manager.h"
19 #include "chrome/browser/chromeos/login/webui_login_display.h" 19 #include "chrome/browser/chromeos/login/webui_login_display.h"
(...skipping 23 matching lines...) Expand all
43 43
44 //////////////////////////////////////////////////////////////////////////////// 44 ////////////////////////////////////////////////////////////////////////////////
45 // WebUIScreenLocker implementation. 45 // WebUIScreenLocker implementation.
46 46
47 WebUIScreenLocker::WebUIScreenLocker(ScreenLocker* screen_locker) 47 WebUIScreenLocker::WebUIScreenLocker(ScreenLocker* screen_locker)
48 : ScreenLockerDelegate(screen_locker), 48 : ScreenLockerDelegate(screen_locker),
49 lock_ready_(false), 49 lock_ready_(false),
50 webui_ready_(false), 50 webui_ready_(false),
51 weak_factory_(this) { 51 weak_factory_(this) {
52 set_should_emit_login_prompt_visible(false); 52 set_should_emit_login_prompt_visible(false);
53 ash::Shell::GetInstance()->session_state_controller()->AddObserver(this); 53 ash::Shell::GetInstance()->session_lock_state_controller()->AddObserver(this);
54 DBusThreadManager::Get()->GetPowerManagerClient()->AddObserver(this); 54 DBusThreadManager::Get()->GetPowerManagerClient()->AddObserver(this);
55 } 55 }
56 56
57 void WebUIScreenLocker::LockScreen(bool unlock_on_input) { 57 void WebUIScreenLocker::LockScreen(bool unlock_on_input) {
58 gfx::Rect bounds(ash::Shell::GetScreen()->GetPrimaryDisplay().bounds()); 58 gfx::Rect bounds(ash::Shell::GetScreen()->GetPrimaryDisplay().bounds());
59 59
60 lock_time_ = base::TimeTicks::Now(); 60 lock_time_ = base::TimeTicks::Now();
61 LockWindow* lock_window = LockWindow::Create(); 61 LockWindow* lock_window = LockWindow::Create();
62 lock_window->set_observer(this); 62 lock_window->set_observer(this);
63 lock_window_ = lock_window->GetWidget(); 63 lock_window_ = lock_window->GetWidget();
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 133
134 void WebUIScreenLocker::FocusUserPod() { 134 void WebUIScreenLocker::FocusUserPod() {
135 if (!webui_ready_) 135 if (!webui_ready_)
136 return; 136 return;
137 webui_login_->RequestFocus(); 137 webui_login_->RequestFocus();
138 GetWebUI()->CallJavascriptFunction("cr.ui.Oobe.forceLockedUserPodFocus"); 138 GetWebUI()->CallJavascriptFunction("cr.ui.Oobe.forceLockedUserPodFocus");
139 } 139 }
140 140
141 WebUIScreenLocker::~WebUIScreenLocker() { 141 WebUIScreenLocker::~WebUIScreenLocker() {
142 DBusThreadManager::Get()->GetPowerManagerClient()->RemoveObserver(this); 142 DBusThreadManager::Get()->GetPowerManagerClient()->RemoveObserver(this);
143 ash::Shell::GetInstance()->session_state_controller()->RemoveObserver(this); 143 ash::Shell::GetInstance()->
144 session_lock_state_controller()->RemoveObserver(this);
144 // In case of shutdown, lock_window_ may be deleted before WebUIScreenLocker. 145 // In case of shutdown, lock_window_ may be deleted before WebUIScreenLocker.
145 if (lock_window_) { 146 if (lock_window_) {
146 lock_window_->RemoveObserver(this); 147 lock_window_->RemoveObserver(this);
147 lock_window_->Close(); 148 lock_window_->Close();
148 } 149 }
149 // If LockScreen() was called, we need to clear the signin screen handler 150 // If LockScreen() was called, we need to clear the signin screen handler
150 // delegate set in ShowSigninScreen so that it no longer points to us. 151 // delegate set in ShowSigninScreen so that it no longer points to us.
151 if (login_display_.get()) { 152 if (login_display_.get()) {
152 static_cast<OobeUI*>(GetWebUI()->GetController())-> 153 static_cast<OobeUI*>(GetWebUI()->GetController())->
153 ResetSigninScreenHandlerDelegate(); 154 ResetSigninScreenHandlerDelegate();
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
268 // LockWindow::Observer implementation: 269 // LockWindow::Observer implementation:
269 270
270 void WebUIScreenLocker::OnLockWindowReady() { 271 void WebUIScreenLocker::OnLockWindowReady() {
271 VLOG(1) << "Lock window ready; WebUI is " << (webui_ready_ ? "too" : "not"); 272 VLOG(1) << "Lock window ready; WebUI is " << (webui_ready_ ? "too" : "not");
272 lock_ready_ = true; 273 lock_ready_ = true;
273 if (webui_ready_) 274 if (webui_ready_)
274 ScreenLockReady(); 275 ScreenLockReady();
275 } 276 }
276 277
277 //////////////////////////////////////////////////////////////////////////////// 278 ////////////////////////////////////////////////////////////////////////////////
278 // SessionStateObserver override. 279 // SessionLockStateObserver override.
279 280
280 void WebUIScreenLocker::OnSessionStateEvent( 281 void WebUIScreenLocker::OnSessionLockStateEvent(
281 ash::SessionStateObserver::EventType event) { 282 ash::SessionLockStateObserver::EventType event) {
282 if (event == ash::SessionStateObserver::EVENT_LOCK_ANIMATION_FINISHED) { 283 if (event == ash::SessionLockStateObserver::EVENT_LOCK_ANIMATION_FINISHED) {
283 // Release capture if any. 284 // Release capture if any.
284 aura::client::GetCaptureClient(GetNativeWindow()->GetRootWindow())-> 285 aura::client::GetCaptureClient(GetNativeWindow()->GetRootWindow())->
285 SetCapture(NULL); 286 SetCapture(NULL);
286 GetWebUI()->CallJavascriptFunction("cr.ui.Oobe.animateOnceFullyDisplayed"); 287 GetWebUI()->CallJavascriptFunction("cr.ui.Oobe.animateOnceFullyDisplayed");
287 } 288 }
288 } 289 }
289 290
290 //////////////////////////////////////////////////////////////////////////////// 291 ////////////////////////////////////////////////////////////////////////////////
291 // WidgetObserver override. 292 // WidgetObserver override.
292 293
(...skipping 22 matching lines...) Expand all
315 316
316 void WebUIScreenLocker::RenderViewGone(base::TerminationStatus status) { 317 void WebUIScreenLocker::RenderViewGone(base::TerminationStatus status) {
317 if (browser_shutdown::GetShutdownType() == browser_shutdown::NOT_VALID && 318 if (browser_shutdown::GetShutdownType() == browser_shutdown::NOT_VALID &&
318 status != base::TERMINATION_STATUS_NORMAL_TERMINATION) { 319 status != base::TERMINATION_STATUS_NORMAL_TERMINATION) {
319 LOG(ERROR) << "Renderer crash on lock screen"; 320 LOG(ERROR) << "Renderer crash on lock screen";
320 Signout(); 321 Signout();
321 } 322 }
322 } 323 }
323 324
324 } // namespace chromeos 325 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698