| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/common/wm/maximize_mode/maximize_mode_controller.h" | 5 #include "ash/common/wm/maximize_mode/maximize_mode_controller.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "ash/common/ash_switches.h" | 9 #include "ash/common/ash_switches.h" |
| 10 #include "ash/common/wm/maximize_mode/maximize_mode_window_manager.h" | 10 #include "ash/common/wm/maximize_mode/maximize_mode_window_manager.h" |
| 11 #include "ash/common/wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard
.h" | 11 #include "ash/common/wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard
.h" |
| 12 #include "ash/common/wm_shell.h" | 12 #include "ash/common/wm_shell.h" |
| 13 #include "base/command_line.h" | 13 #include "base/command_line.h" |
| 14 #include "base/metrics/histogram.h" | 14 #include "base/metrics/histogram.h" |
| 15 #include "base/time/default_tick_clock.h" | 15 #include "base/time/default_tick_clock.h" |
| 16 #include "base/time/tick_clock.h" | 16 #include "base/time/tick_clock.h" |
| 17 #include "ui/base/accelerators/accelerator.h" | 17 #include "ui/base/accelerators/accelerator.h" |
| 18 #include "ui/display/display.h" | 18 #include "ui/display/display.h" |
| 19 #include "ui/events/event.h" | 19 #include "ui/events/event.h" |
| 20 #include "ui/events/keycodes/keyboard_codes.h" | 20 #include "ui/events/keycodes/keyboard_codes.h" |
| 21 #include "ui/gfx/geometry/vector3d_f.h" | 21 #include "ui/gfx/geometry/vector3d_f.h" |
| 22 | 22 |
| 23 #if defined(OS_CHROMEOS) | 23 #if defined(OS_CHROMEOS) |
| 24 #include "chromeos/dbus/dbus_thread_manager.h" | 24 #include "ash/common/dbus_thread_manager_ash.h" |
| 25 // #include "chromeos/dbus/dbus_thread_manager.h" |
| 25 #include "ui/chromeos/accelerometer/accelerometer_util.h" | 26 #include "ui/chromeos/accelerometer/accelerometer_util.h" |
| 26 #endif // OS_CHROMEOS | 27 #endif // OS_CHROMEOS |
| 27 | 28 |
| 28 namespace ash { | 29 namespace ash { |
| 29 | 30 |
| 30 namespace { | 31 namespace { |
| 31 | 32 |
| 32 #if defined(OS_CHROMEOS) | 33 #if defined(OS_CHROMEOS) |
| 33 // The hinge angle at which to enter maximize mode. | 34 // The hinge angle at which to enter maximize mode. |
| 34 const float kEnterMaximizeModeAngle = 200.0f; | 35 const float kEnterMaximizeModeAngle = 200.0f; |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 107 // unavailable. This will require refactoring | 108 // unavailable. This will require refactoring |
| 108 // IsMaximizeModeWindowManagerEnabled to check for the existance of the | 109 // IsMaximizeModeWindowManagerEnabled to check for the existance of the |
| 109 // controller. | 110 // controller. |
| 110 const bool is_enabled = IsEnabled(); | 111 const bool is_enabled = IsEnabled(); |
| 111 if (is_enabled) | 112 if (is_enabled) |
| 112 WmShell::Get()->AddDisplayObserver(this); | 113 WmShell::Get()->AddDisplayObserver(this); |
| 113 | 114 |
| 114 #if defined(OS_CHROMEOS) | 115 #if defined(OS_CHROMEOS) |
| 115 if (is_enabled) | 116 if (is_enabled) |
| 116 chromeos::AccelerometerReader::GetInstance()->AddObserver(this); | 117 chromeos::AccelerometerReader::GetInstance()->AddObserver(this); |
| 117 chromeos::DBusThreadManager::Get()->GetPowerManagerClient()->AddObserver( | 118 DBusThreadManagerAsh::Get()->GetPowerManagerClient()->AddObserver( |
| 118 this); | 119 this); |
| 119 #endif // OS_CHROMEOS | 120 #endif // OS_CHROMEOS |
| 120 } | 121 } |
| 121 | 122 |
| 122 MaximizeModeController::~MaximizeModeController() { | 123 MaximizeModeController::~MaximizeModeController() { |
| 123 WmShell::Get()->RemoveShellObserver(this); | 124 WmShell::Get()->RemoveShellObserver(this); |
| 124 const bool is_enabled = IsEnabled(); | 125 const bool is_enabled = IsEnabled(); |
| 125 if (is_enabled) | 126 if (is_enabled) |
| 126 WmShell::Get()->RemoveDisplayObserver(this); | 127 WmShell::Get()->RemoveDisplayObserver(this); |
| 127 | 128 |
| 128 #if defined(OS_CHROMEOS) | 129 #if defined(OS_CHROMEOS) |
| 129 if (is_enabled) | 130 if (is_enabled) |
| 130 chromeos::AccelerometerReader::GetInstance()->RemoveObserver(this); | 131 chromeos::AccelerometerReader::GetInstance()->RemoveObserver(this); |
| 131 chromeos::DBusThreadManager::Get()->GetPowerManagerClient()->RemoveObserver( | 132 DBusThreadManagerAsh::Get()->GetPowerManagerClient()->RemoveObserver( |
| 132 this); | 133 this); |
| 133 #endif // OS_CHROMEOS | 134 #endif // OS_CHROMEOS |
| 134 } | 135 } |
| 135 | 136 |
| 136 bool MaximizeModeController::CanEnterMaximizeMode() { | 137 bool MaximizeModeController::CanEnterMaximizeMode() { |
| 137 // If we have ever seen accelerometer data, then HandleHingeRotation may | 138 // If we have ever seen accelerometer data, then HandleHingeRotation may |
| 138 // trigger maximize mode at some point in the future. | 139 // trigger maximize mode at some point in the future. |
| 139 // The --enable-touch-view-testing switch can also mean that we may enter | 140 // The --enable-touch-view-testing switch can also mean that we may enter |
| 140 // maximize mode. | 141 // maximize mode. |
| 141 // TODO(mgiuca): This can result in false positives, as it returns true for | 142 // TODO(mgiuca): This can result in false positives, as it returns true for |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 return elapsed_time.InSeconds() <= kLidRecentlyOpenedDurationSeconds; | 424 return elapsed_time.InSeconds() <= kLidRecentlyOpenedDurationSeconds; |
| 424 } | 425 } |
| 425 | 426 |
| 426 void MaximizeModeController::SetTickClockForTest( | 427 void MaximizeModeController::SetTickClockForTest( |
| 427 std::unique_ptr<base::TickClock> tick_clock) { | 428 std::unique_ptr<base::TickClock> tick_clock) { |
| 428 DCHECK(tick_clock_); | 429 DCHECK(tick_clock_); |
| 429 tick_clock_ = std::move(tick_clock); | 430 tick_clock_ = std::move(tick_clock); |
| 430 } | 431 } |
| 431 | 432 |
| 432 } // namespace ash | 433 } // namespace ash |
| OLD | NEW |