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

Side by Side Diff: chrome/browser/chromeos/login/wizard_accessibility_helper.cc

Issue 3159028: Add code to initialize accessibility for UI in the ChromeOS startup wizard. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 4 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 | Annotate | Revision Log
Property Changes:
Name: svn:eol-style
+ LF
OLDNEW
(Empty)
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/chromeos/login/wizard_accessibility_helper.h"
6
7 #include "base/logging.h"
8 #include "chrome/browser/browser_process.h"
9 #include "chrome/browser/extensions/extension_accessibility_api.h"
10 #include "chrome/browser/pref_service.h"
11 #include "chrome/browser/profile.h"
12 #include "chrome/browser/profile_manager.h"
13 #include "chrome/common/pref_names.h"
14 #include "chrome/common/notification_registrar.h"
15 #include "chrome/common/notification_service.h"
16
17 // static
18 WizardAccessibilityHelper* WizardAccessibilityHelper::GetInstance() {
19 return Singleton<WizardAccessibilityHelper>::get();
20 }
21
22 WizardAccessibilityHelper::WizardAccessibilityHelper() {
23 accessibility_handler_.reset(new WizardAccessibilityHandler());
24 registrar_.Add(accessibility_handler_.get(),
25 NotificationType::ACCESSIBILITY_CONTROL_FOCUSED,
26 NotificationService::AllSources());
27 registrar_.Add(accessibility_handler_.get(),
28 NotificationType::ACCESSIBILITY_CONTROL_ACTION,
29 NotificationService::AllSources());
30 registrar_.Add(accessibility_handler_.get(),
31 NotificationType::ACCESSIBILITY_TEXT_CHANGED,
32 NotificationService::AllSources());
33 registrar_.Add(accessibility_handler_.get(),
34 NotificationType::ACCESSIBILITY_MENU_OPENED,
35 NotificationService::AllSources());
36 registrar_.Add(accessibility_handler_.get(),
37 NotificationType::ACCESSIBILITY_MENU_CLOSED,
38 NotificationService::AllSources());
39 }
40
41 void WizardAccessibilityHelper::MaybeEnableAccessibility(
42 views::View* view_tree, Profile* profile) {
43 if (g_browser_process != NULL &&
44 g_browser_process->local_state()->GetBoolean(
45 prefs::kAccessibilityEnabled)) {
46 EnableAccessibility(view_tree, profile);
47 }
48 }
49
50 void WizardAccessibilityHelper::EnableAccessibility(
51 views::View* view_tree, Profile* profile) {
52 LOG(INFO) << "Enabling accessibility.";
53 if (g_browser_process != NULL) {
54 PrefService* prefService = g_browser_process->local_state();
55 if (!prefService->GetBoolean(prefs::kAccessibilityEnabled)) {
56 prefService->SetBoolean(prefs::kAccessibilityEnabled, true);
57 prefService->ScheduleSavePersistentPrefs();
58 }
59 }
60 ExtensionAccessibilityEventRouter::GetInstance()->
61 SetAccessibilityEnabled(true);
62 accessible_view_helper_.reset(new AccessibleViewHelper(
63 view_tree, profile));
64 }
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/wizard_accessibility_helper.h ('k') | chrome/browser/chromeos/login/wizard_controller.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698