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_->CancelLockAnimation(); |
98 } | 98 } |
99 | 99 |
100 } // namespace ash | 100 } // namespace ash |
OLD | NEW |