Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(594)

Side by Side Diff: chrome/browser/chromeos/accessibility/accessibility_util.cc

Issue 10915140: Add the partial screen magnifier to Chrome OS. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Code review fixes Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "chrome/browser/chromeos/accessibility/accessibility_util.h" 5 #include "chrome/browser/chromeos/accessibility/accessibility_util.h"
6 6
7 #include <queue> 7 #include <queue>
8 8
9 #include "ash/high_contrast/high_contrast_controller.h" 9 #include "ash/high_contrast/high_contrast_controller.h"
10 #include "ash/magnifier/magnification_controller.h" 10 #include "ash/magnifier/magnification_controller.h"
11 #include "ash/magnifier/partial_magnification_controller.h"
11 #include "ash/shell.h" 12 #include "ash/shell.h"
12 #include "base/bind.h" 13 #include "base/bind.h"
13 #include "base/bind_helpers.h" 14 #include "base/bind_helpers.h"
14 #include "base/logging.h" 15 #include "base/logging.h"
15 #include "chrome/browser/accessibility/accessibility_extension_api.h" 16 #include "chrome/browser/accessibility/accessibility_extension_api.h"
16 #include "chrome/browser/browser_process.h" 17 #include "chrome/browser/browser_process.h"
17 #include "chrome/browser/extensions/component_loader.h" 18 #include "chrome/browser/extensions/component_loader.h"
18 #include "chrome/browser/extensions/extension_service.h" 19 #include "chrome/browser/extensions/extension_service.h"
19 #include "chrome/browser/extensions/file_reader.h" 20 #include "chrome/browser/extensions/file_reader.h"
20 #include "chrome/browser/prefs/pref_service.h" 21 #include "chrome/browser/prefs/pref_service.h"
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 void EnableHighContrast(bool enabled) { 167 void EnableHighContrast(bool enabled) {
167 PrefService* pref_service = g_browser_process->local_state(); 168 PrefService* pref_service = g_browser_process->local_state();
168 pref_service->SetBoolean(prefs::kHighContrastEnabled, enabled); 169 pref_service->SetBoolean(prefs::kHighContrastEnabled, enabled);
169 pref_service->CommitPendingWrite(); 170 pref_service->CommitPendingWrite();
170 171
171 #if defined(USE_ASH) 172 #if defined(USE_ASH)
172 ash::Shell::GetInstance()->high_contrast_controller()->SetEnabled(enabled); 173 ash::Shell::GetInstance()->high_contrast_controller()->SetEnabled(enabled);
173 #endif 174 #endif
174 } 175 }
175 176
176 void EnableScreenMagnifier(bool enabled) { 177 void SetScreenMagnifier(ScreenMagnifierType type) {
177 PrefService* pref_service = g_browser_process->local_state(); 178 PrefService* pref_service = g_browser_process->local_state();
178 pref_service->SetBoolean(prefs::kScreenMagnifierEnabled, enabled); 179 pref_service->SetBoolean(prefs::kScreenMagnifierEnabled,
180 type == MagnifierFull);
181 pref_service->SetBoolean(prefs::kPartialScreenMagnifierEnabled,
182 type == MagnifierPartial);
179 pref_service->CommitPendingWrite(); 183 pref_service->CommitPendingWrite();
180 184
181 #if defined(USE_ASH) 185 #if defined(USE_ASH)
182 ash::Shell::GetInstance()->magnification_controller()->SetEnabled(enabled); 186 ash::Shell::GetInstance()->magnification_controller()->SetEnabled(
187 type == MagnifierFull);
188 ash::Shell::GetInstance()->partial_magnification_controller()->SetEnabled(
189 type == MagnifierPartial);
183 #endif 190 #endif
184 } 191 }
185 192
186 void EnableVirtualKeyboard(bool enabled) { 193 void EnableVirtualKeyboard(bool enabled) {
187 PrefService* pref_service = g_browser_process->local_state(); 194 PrefService* pref_service = g_browser_process->local_state();
188 pref_service->SetBoolean(prefs::kVirtualKeyboardEnabled, enabled); 195 pref_service->SetBoolean(prefs::kVirtualKeyboardEnabled, enabled);
189 pref_service->CommitPendingWrite(); 196 pref_service->CommitPendingWrite();
190 } 197 }
191 198
192 void ToggleSpokenFeedback(content::WebUI* login_web_ui) { 199 void ToggleSpokenFeedback(content::WebUI* login_web_ui) {
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 bool IsHighContrastEnabled() { 232 bool IsHighContrastEnabled() {
226 if (!g_browser_process) { 233 if (!g_browser_process) {
227 return false; 234 return false;
228 } 235 }
229 PrefService* prefs = g_browser_process->local_state(); 236 PrefService* prefs = g_browser_process->local_state();
230 bool high_contrast_enabled = prefs && 237 bool high_contrast_enabled = prefs &&
231 prefs->GetBoolean(prefs::kHighContrastEnabled); 238 prefs->GetBoolean(prefs::kHighContrastEnabled);
232 return high_contrast_enabled; 239 return high_contrast_enabled;
233 } 240 }
234 241
235 bool IsScreenMagnifierEnabled() { 242 ScreenMagnifierType GetScreenMagnifierType() {
236 if (!g_browser_process) { 243 if (!g_browser_process) {
237 return false; 244 return MagnifierNone;
238 } 245 }
oshima 2012/09/13 16:35:31 nuke {}
Zachary Kuznia 2012/10/09 09:02:36 Done.
239 PrefService* prefs = g_browser_process->local_state(); 246 PrefService* prefs = g_browser_process->local_state();
240 bool enabled = prefs && prefs->GetBoolean(prefs::kScreenMagnifierEnabled); 247 if (!prefs)
241 return enabled; 248 return MagnifierNone;
249
250 if (prefs->GetBoolean(prefs::kScreenMagnifierEnabled))
251 return MagnifierFull;
252 else if (prefs->GetBoolean(prefs::kPartialScreenMagnifierEnabled))
253 return MagnifierPartial;
254 else
255 return MagnifierNone;
242 } 256 }
243 257
244 void MaybeSpeak(const std::string& utterance) { 258 void MaybeSpeak(const std::string& utterance) {
245 if (IsSpokenFeedbackEnabled()) 259 if (IsSpokenFeedbackEnabled())
246 Speak(utterance); 260 Speak(utterance);
247 } 261 }
248 262
249 } // namespace accessibility 263 } // namespace accessibility
250 } // namespace chromeos 264 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698