Chromium Code Reviews| Index: ash/accelerators/accelerator_controller.cc |
| diff --git a/ash/accelerators/accelerator_controller.cc b/ash/accelerators/accelerator_controller.cc |
| index 2b9eaa5a15dab8c6313e52455074a5b874e1b760..05238ba07711b912bf69e7112694950a701c1253 100644 |
| --- a/ash/accelerators/accelerator_controller.cc |
| +++ b/ash/accelerators/accelerator_controller.cc |
| @@ -20,6 +20,7 @@ |
| #include "ash/launcher/launcher_delegate.h" |
| #include "ash/launcher/launcher_model.h" |
| #include "ash/magnifier/magnification_controller.h" |
| +#include "ash/magnifier/partial_magnification_controller.h" |
| #include "ash/root_window_controller.h" |
| #include "ash/rotator/screen_rotation.h" |
| #include "ash/screenshot_delegate.h" |
| @@ -240,18 +241,25 @@ bool HandleToggleRootWindowFullScreen() { |
| // Magnify the screen |
| bool HandleMagnifyScreen(int delta_index) { |
| - // TODO(yoshiki): Create the class like MagnifierStepScaleController, and |
| - // move the following scale control to it. |
| - float scale = |
| - ash::Shell::GetInstance()->magnification_controller()->GetScale(); |
| - // Calculate rounded logarithm (base kMagnificationFactor) of scale. |
| - int scale_index = |
| - std::floor(std::log(scale) / std::log(kMagnificationFactor) + 0.5); |
| - |
| - int new_scale_index = std::max(0, std::min(8, scale_index + delta_index)); |
| - |
| - ash::Shell::GetInstance()->magnification_controller()-> |
| - SetScale(std::pow(kMagnificationFactor, new_scale_index), true); |
| + if (ash::Shell::GetInstance()->magnification_controller()->IsEnabled()) { |
| + // TODO(yoshiki): Create the class like MagnifierStepScaleController, and |
| + // move the following scale control to it. |
| + float scale = |
| + ash::Shell::GetInstance()->magnification_controller()->GetScale(); |
| + // Calculate rounded logarithm (base kMagnificationFactor) of scale. |
| + int scale_index = |
| + std::floor(std::log(scale) / std::log(kMagnificationFactor) + 0.5); |
| + |
| + int new_scale_index = std::max(0, std::min(8, scale_index + delta_index)); |
|
oshima
2012/09/13 16:35:31
I probably would create a small function to get sc
|
| + |
| + ash::Shell::GetInstance()->magnification_controller()-> |
| + SetScale(std::pow(kMagnificationFactor, new_scale_index), true); |
| + } else if (ash::Shell::GetInstance() |
| + ->partial_magnification_controller()->IsEnabled()) { |
| + float scale = delta_index > 0 ? internal::kDefaultPartialMagnifiedScale : 1; |
| + ash::Shell::GetInstance()->partial_magnification_controller()-> |
| + SetScale(scale); |
| + } |
| return true; |
| } |