| 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 "ash/wm/power_button_controller.h" | 5 #include "ash/wm/power_button_controller.h" |
| 6 | 6 |
| 7 #include "ash/ash_switches.h" | 7 #include "ash/ash_switches.h" |
| 8 #include "ash/shell.h" | 8 #include "ash/shell.h" |
| 9 #include "ash/shell_delegate.h" | 9 #include "ash/shell_delegate.h" |
| 10 #include "ash/shell_window_ids.h" | 10 #include "ash/shell_window_ids.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 else | 55 else |
| 56 controller_->RequestShutdown(); | 56 controller_->RequestShutdown(); |
| 57 } | 57 } |
| 58 } else { // !has_legacy_power_button_ | 58 } else { // !has_legacy_power_button_ |
| 59 if (down) { | 59 if (down) { |
| 60 // If we already have a pending request to lock the screen, wait. | 60 // If we already have a pending request to lock the screen, wait. |
| 61 if (controller_->LockRequested()) | 61 if (controller_->LockRequested()) |
| 62 return; | 62 return; |
| 63 | 63 |
| 64 if (controller_->IsEligibleForLock()) | 64 if (controller_->IsEligibleForLock()) |
| 65 controller_->StartLockAnimation(); | 65 controller_->StartLockAnimation(true); |
| 66 else | 66 else |
| 67 controller_->StartShutdownAnimation(); | 67 controller_->StartShutdownAnimation(); |
| 68 } else { // Button is up. | 68 } else { // Button is up. |
| 69 if (controller_->CanCancelLockAnimation()) | 69 if (controller_->CanCancelLockAnimation()) |
| 70 controller_->CancelLockAnimation(); | 70 controller_->CancelLockAnimation(); |
| 71 else if (controller_->CanCancelShutdownAnimation()) | 71 else if (controller_->CanCancelShutdownAnimation()) |
| 72 controller_->CancelShutdownAnimation(); | 72 controller_->CancelShutdownAnimation(); |
| 73 } | 73 } |
| 74 } | 74 } |
| 75 } | 75 } |
| 76 | 76 |
| 77 void PowerButtonController::OnLockButtonEvent( | 77 void PowerButtonController::OnLockButtonEvent( |
| 78 bool down, const base::TimeTicks& timestamp) { | 78 bool down, const base::TimeTicks& timestamp) { |
| 79 lock_button_down_ = down; | 79 lock_button_down_ = down; |
| 80 | 80 |
| 81 if (controller_->ShutdownRequested() || !controller_->IsEligibleForLock()) | 81 if (controller_->ShutdownRequested() || !controller_->IsEligibleForLock()) |
| 82 return; | 82 return; |
| 83 | 83 |
| 84 // Bail if we're already locked or are in the process of locking. Also give | 84 // Bail if we're already locked or are in the process of locking. Also give |
| 85 // the power button precedence over the lock button (we don't expect both | 85 // the power button precedence over the lock button (we don't expect both |
| 86 // buttons to be present, so this is just making sure that we don't do | 86 // buttons to be present, so this is just making sure that we don't do |
| 87 // something completely stupid if that assumption changes later). | 87 // something completely stupid if that assumption changes later). |
| 88 if (power_button_down_) | 88 if (power_button_down_) |
| 89 return; | 89 return; |
| 90 | 90 |
| 91 if (controller_->IsLocked() || controller_->LockRequested()) | 91 if (controller_->IsLocked() || controller_->LockRequested()) |
| 92 return; | 92 return; |
| 93 | 93 |
| 94 if (down) | 94 if (down) |
| 95 controller_->StartLockAnimation(); | 95 controller_->StartLockAnimation(false); |
| 96 else | 96 else |
| 97 controller_->CancelLockWithOtherAnimation(); | 97 controller_->CancelLockWithOtherAnimation(); |
| 98 } | 98 } |
| 99 | 99 |
| 100 } // namespace ash | 100 } // namespace ash |
| OLD | NEW |