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

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

Issue 10201014: Implement High Contrast mode for Chrome OS (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Remove extra define guard Created 8 years, 7 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"
10 #include "ash/shell.h"
9 #include "base/bind.h" 11 #include "base/bind.h"
10 #include "base/bind_helpers.h" 12 #include "base/bind_helpers.h"
11 #include "base/logging.h" 13 #include "base/logging.h"
12 #include "chrome/browser/accessibility/accessibility_extension_api.h" 14 #include "chrome/browser/accessibility/accessibility_extension_api.h"
13 #include "chrome/browser/browser_process.h" 15 #include "chrome/browser/browser_process.h"
14 #include "chrome/browser/extensions/component_loader.h" 16 #include "chrome/browser/extensions/component_loader.h"
15 #include "chrome/browser/extensions/extension_service.h" 17 #include "chrome/browser/extensions/extension_service.h"
16 #include "chrome/browser/extensions/file_reader.h" 18 #include "chrome/browser/extensions/file_reader.h"
17 #include "chrome/browser/prefs/pref_service.h" 19 #include "chrome/browser/prefs/pref_service.h"
18 #include "chrome/browser/profiles/profile.h" 20 #include "chrome/browser/profiles/profile.h"
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 } else { // Unload ChromeVox 159 } else { // Unload ChromeVox
158 extension_service->component_loader()->Remove(path); 160 extension_service->component_loader()->Remove(path);
159 DLOG(INFO) << "ChromeVox was Unloaded."; 161 DLOG(INFO) << "ChromeVox was Unloaded.";
160 } 162 }
161 } 163 }
162 164
163 void EnableHighContrast(bool enabled) { 165 void EnableHighContrast(bool enabled) {
164 PrefService* pref_service = g_browser_process->local_state(); 166 PrefService* pref_service = g_browser_process->local_state();
165 pref_service->SetBoolean(prefs::kHighContrastEnabled, enabled); 167 pref_service->SetBoolean(prefs::kHighContrastEnabled, enabled);
166 pref_service->CommitPendingWrite(); 168 pref_service->CommitPendingWrite();
169
170 #if defined(USE_ASH)
171 ash::Shell::GetInstance()->high_contrast_controller()->SetEnabled(enabled);
172 #endif
167 } 173 }
168 174
169 void EnableScreenMagnifier(bool enabled) { 175 void EnableScreenMagnifier(bool enabled) {
170 PrefService* pref_service = g_browser_process->local_state(); 176 PrefService* pref_service = g_browser_process->local_state();
171 pref_service->SetBoolean(prefs::kScreenMagnifierEnabled, enabled); 177 pref_service->SetBoolean(prefs::kScreenMagnifierEnabled, enabled);
172 pref_service->CommitPendingWrite(); 178 pref_service->CommitPendingWrite();
173 } 179 }
174 180
175 void EnableVirtualKeyboard(bool enabled) { 181 void EnableVirtualKeyboard(bool enabled) {
176 PrefService* pref_service = g_browser_process->local_state(); 182 PrefService* pref_service = g_browser_process->local_state();
(...skipping 21 matching lines...) Expand all
198 bool IsSpokenFeedbackEnabled() { 204 bool IsSpokenFeedbackEnabled() {
199 if (!g_browser_process) { 205 if (!g_browser_process) {
200 return false; 206 return false;
201 } 207 }
202 PrefService* prefs = g_browser_process->local_state(); 208 PrefService* prefs = g_browser_process->local_state();
203 bool spoken_feedback_enabled = prefs && 209 bool spoken_feedback_enabled = prefs &&
204 prefs->GetBoolean(prefs::kSpokenFeedbackEnabled); 210 prefs->GetBoolean(prefs::kSpokenFeedbackEnabled);
205 return spoken_feedback_enabled; 211 return spoken_feedback_enabled;
206 } 212 }
207 213
214 bool IsHighContrastEnabled() {
215 if (!g_browser_process) {
216 return false;
217 }
218 PrefService* prefs = g_browser_process->local_state();
219 bool high_contrast_enabled = prefs &&
220 prefs->GetBoolean(prefs::kHighContrastEnabled);
221 return high_contrast_enabled;
222 }
223
208 void MaybeSpeak(const std::string& utterance) { 224 void MaybeSpeak(const std::string& utterance) {
209 if (IsSpokenFeedbackEnabled()) 225 if (IsSpokenFeedbackEnabled())
210 Speak(utterance); 226 Speak(utterance);
211 } 227 }
212 228
213 } // namespace accessibility 229 } // namespace accessibility
214 } // namespace chromeos 230 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/accessibility/accessibility_util.h ('k') | chrome/browser/resources/options2/browser_options.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698