| Index: chrome/browser/chromeos/accessibility/accessibility_util.cc
|
| diff --git a/chrome/browser/chromeos/accessibility/accessibility_util.cc b/chrome/browser/chromeos/accessibility/accessibility_util.cc
|
| index 621306128601f15beacd6db54e0dc154a5bd34e6..2e9db068c333949ece3b9066c6a8e54e6e273e66 100644
|
| --- a/chrome/browser/chromeos/accessibility/accessibility_util.cc
|
| +++ b/chrome/browser/chromeos/accessibility/accessibility_util.cc
|
| @@ -8,6 +8,7 @@
|
|
|
| #include "ash/high_contrast/high_contrast_controller.h"
|
| #include "ash/magnifier/magnification_controller.h"
|
| +#include "ash/magnifier/partial_magnification_controller.h"
|
| #include "ash/shell.h"
|
| #include "base/bind.h"
|
| #include "base/bind_helpers.h"
|
| @@ -173,13 +174,19 @@ void EnableHighContrast(bool enabled) {
|
| #endif
|
| }
|
|
|
| -void EnableScreenMagnifier(bool enabled) {
|
| +void SetScreenMagnifier(ScreenMagnifierType type) {
|
| PrefService* pref_service = g_browser_process->local_state();
|
| - pref_service->SetBoolean(prefs::kScreenMagnifierEnabled, enabled);
|
| + pref_service->SetBoolean(prefs::kScreenMagnifierEnabled,
|
| + type == MagnifierFull);
|
| + pref_service->SetBoolean(prefs::kPartialScreenMagnifierEnabled,
|
| + type == MagnifierPartial);
|
| pref_service->CommitPendingWrite();
|
|
|
| #if defined(USE_ASH)
|
| - ash::Shell::GetInstance()->magnification_controller()->SetEnabled(enabled);
|
| + ash::Shell::GetInstance()->magnification_controller()->SetEnabled(
|
| + type == MagnifierFull);
|
| + ash::Shell::GetInstance()->partial_magnification_controller()->SetEnabled(
|
| + type == MagnifierPartial);
|
| #endif
|
| }
|
|
|
| @@ -232,13 +239,20 @@ bool IsHighContrastEnabled() {
|
| return high_contrast_enabled;
|
| }
|
|
|
| -bool IsScreenMagnifierEnabled() {
|
| +ScreenMagnifierType GetScreenMagnifierType() {
|
| if (!g_browser_process) {
|
| - return false;
|
| + return MagnifierNone;
|
| }
|
| PrefService* prefs = g_browser_process->local_state();
|
| - bool enabled = prefs && prefs->GetBoolean(prefs::kScreenMagnifierEnabled);
|
| - return enabled;
|
| + if (!prefs)
|
| + return MagnifierNone;
|
| +
|
| + if (prefs->GetBoolean(prefs::kScreenMagnifierEnabled))
|
| + return MagnifierFull;
|
| + else if (prefs->GetBoolean(prefs::kPartialScreenMagnifierEnabled))
|
| + return MagnifierPartial;
|
| + else
|
| + return MagnifierNone;
|
| }
|
|
|
| void MaybeSpeak(const std::string& utterance) {
|
|
|