1// Copyright 2013 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#ifndef ASH_DEFAULT_ACCESSIBILITY_DELEGATE_H_
6#define ASH_DEFAULT_ACCESSIBILITY_DELEGATE_H_
7
8#include "ash/accessibility_delegate.h"
9#include "ash/ash_export.h"
10#include "base/basictypes.h"
11#include "base/compiler_specific.h"
12
13namespace ash {
14
15class ASH_EXPORT DefaultAccessibilityDelegate : public AccessibilityDelegate {
16 public:
17  DefaultAccessibilityDelegate();
18  virtual ~DefaultAccessibilityDelegate();
19
20  virtual bool IsSpokenFeedbackEnabled() const OVERRIDE;
21  virtual void ToggleHighContrast() OVERRIDE;
22  virtual bool IsHighContrastEnabled() const OVERRIDE;
23  virtual void SetMagnifierEnabled(bool enabled) OVERRIDE;
24  virtual void SetMagnifierType(MagnifierType type) OVERRIDE;
25  virtual bool IsMagnifierEnabled() const OVERRIDE;
26  virtual MagnifierType GetMagnifierType() const OVERRIDE;
27  virtual void SetLargeCursorEnabled(bool enabled) OVERRIDE;
28  virtual bool IsLargeCursorEnabled() const OVERRIDE;
29  virtual void SetAutoclickEnabled(bool enabled) OVERRIDE;
30  virtual bool IsAutoclickEnabled() const OVERRIDE;
31  virtual void SetVirtualKeyboardEnabled(bool enabled) OVERRIDE;
32  virtual bool IsVirtualKeyboardEnabled() const OVERRIDE;
33  virtual bool ShouldShowAccessibilityMenu() const OVERRIDE;
34  virtual bool IsBrailleDisplayConnected() const OVERRIDE;
35  virtual void SilenceSpokenFeedback() const OVERRIDE;
36  virtual void ToggleSpokenFeedback(
37      AccessibilityNotificationVisibility notify) OVERRIDE;
38  virtual void SaveScreenMagnifierScale(double scale) OVERRIDE;
39  virtual double GetSavedScreenMagnifierScale() OVERRIDE;
40  virtual void TriggerAccessibilityAlert(AccessibilityAlert alert) OVERRIDE;
41  virtual AccessibilityAlert GetLastAccessibilityAlert() OVERRIDE;
42  virtual void PlayEarcon(int sound_key) OVERRIDE;
43  virtual base::TimeDelta PlayShutdownSound() const OVERRIDE;
44
45 private:
46  bool spoken_feedback_enabled_;
47  bool high_contrast_enabled_;
48  bool screen_magnifier_enabled_;
49  MagnifierType screen_magnifier_type_;
50  bool large_cursor_enabled_;
51  bool autoclick_enabled_;
52  bool virtual_keyboard_enabled_;
53  AccessibilityAlert accessibility_alert_;
54  DISALLOW_COPY_AND_ASSIGN(DefaultAccessibilityDelegate);
55};
56
57}  // namespace ash
58
59#endif  // DEFAULT_ACCESSIBILITY_DELEGATE_H_
60