List all a11y featuers in ash system menu

Old behavior,
'Automatic clicks' is disabled on login screen.
'Large mouse cursor' is disabled after login.

New behavior,
Keep the Accessibility detailed view in system tray the same in LOGIN | NOT LOGIN | LOCKED.
top five settings,
ChromeVox
High contrast mode
Screen magnifier
Automatic clicks
On-screen keyboard

and five Additional settings,
Large mouse cursor
Mono audio
Highlight text caret
Highlight mouse cursor
Highlight object with keyboard focus (this one will be invisible if ChromeVox is enabled)

BUG=632107

Review-Url: https://codereview.chromium.org/2771963002
Review-Url: https://codereview.chromium.org/2771963002
Cr-Commit-Position: refs/heads/master@{#461248}
diff --git a/chrome/browser/chromeos/accessibility/accessibility_manager.cc b/chrome/browser/chromeos/accessibility/accessibility_manager.cc
index 5ca69c3..0052d3c 100644
--- a/chrome/browser/chromeos/accessibility/accessibility_manager.cc
+++ b/chrome/browser/chromeos/accessibility/accessibility_manager.cc
@@ -356,7 +356,10 @@
         pref_service->GetBoolean(prefs::kShouldAlwaysShowAccessibilityMenu) ||
         pref_service->GetBoolean(prefs::kAccessibilityScreenMagnifierEnabled) ||
         pref_service->GetBoolean(prefs::kAccessibilityVirtualKeyboardEnabled) ||
-        pref_service->GetBoolean(prefs::kAccessibilityMonoAudioEnabled))
+        pref_service->GetBoolean(prefs::kAccessibilityMonoAudioEnabled) ||
+        pref_service->GetBoolean(prefs::kAccessibilityCaretHighlightEnabled) ||
+        pref_service->GetBoolean(prefs::kAccessibilityCursorHighlightEnabled) ||
+        pref_service->GetBoolean(prefs::kAccessibilityFocusHighlightEnabled))
       return true;
   }
   return false;
@@ -826,6 +829,9 @@
     return;
   caret_highlight_enabled_ = enabled;
 
+  AccessibilityStatusEventDetails details(ACCESSIBILITY_TOGGLE_CARET_HIGHLIGHT,
+                                          enabled, ash::A11Y_NOTIFICATION_NONE);
+  NotifyAccessibilityStatusChanged(details);
   UpdateAccessibilityHighlightingFromPrefs();
 }
 
@@ -854,6 +860,9 @@
     return;
   cursor_highlight_enabled_ = enabled;
 
+  AccessibilityStatusEventDetails details(ACCESSIBILITY_TOGGLE_CURSOR_HIGHLIGHT,
+                                          enabled, ash::A11Y_NOTIFICATION_NONE);
+  NotifyAccessibilityStatusChanged(details);
   UpdateAccessibilityHighlightingFromPrefs();
 }
 
@@ -887,6 +896,9 @@
     return;
   focus_highlight_enabled_ = enabled;
 
+  AccessibilityStatusEventDetails details(ACCESSIBILITY_TOGGLE_FOCUS_HIGHLIGHT,
+                                          enabled, ash::A11Y_NOTIFICATION_NONE);
+  NotifyAccessibilityStatusChanged(details);
   UpdateAccessibilityHighlightingFromPrefs();
 }