- add sources.
[platform/framework/web/crosswalk.git] / src / ash / accessibility_delegate.h
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_ACCESSIBILITY_DELEGATE_H_
6 #define ASH_ACCESSIBILITY_DELEGATE_H_
7
8 #include "ash/ash_export.h"
9 #include "ash/magnifier/magnifier_constants.h"
10
11 namespace ash {
12
13 enum AccessibilityNotificationVisibility {
14   A11Y_NOTIFICATION_NONE,
15   A11Y_NOTIFICATION_SHOW,
16 };
17
18 // A deletate class to control accessibility features.
19 class ASH_EXPORT AccessibilityDelegate {
20  public:
21   virtual ~AccessibilityDelegate() {}
22
23   // Invoked to toggle spoken feedback for accessibility
24   virtual void ToggleSpokenFeedback(
25       AccessibilityNotificationVisibility notify) = 0;
26
27   // Returns true if spoken feedback is enabled.
28   virtual bool IsSpokenFeedbackEnabled() const = 0;
29
30   // Invoked to toggle high contrast mode for accessibility.
31   virtual void ToggleHighContrast() = 0;
32
33   // Returns true if high contrast mode is enabled.
34   virtual bool IsHighContrastEnabled() const = 0;
35
36   // Invoked to enable the screen magnifier.
37   virtual void SetMagnifierEnabled(bool enabled) = 0;
38
39   // Invoked to change the type of the screen magnifier.
40   virtual void SetMagnifierType(MagnifierType type) = 0;
41
42   // Returns true if the screen magnifier is enabled or not.
43   virtual bool IsMagnifierEnabled() const = 0;
44
45   // Returns the current screen magnifier mode.
46   virtual MagnifierType GetMagnifierType() const = 0;
47
48   // Invoked to enable Large Cursor.
49   virtual void SetLargeCursorEnabled(bool enabled) = 0;
50
51   // Returns ture if Large Cursor is enabled or not.
52   virtual bool IsLargeCursorEnabled() const = 0;
53
54   // Invoked to enable autoclick.
55   virtual void SetAutoclickEnabled(bool enabled) = 0;
56
57   // Returns if autoclick is enabled or not.
58   virtual bool IsAutoclickEnabled() const = 0;
59
60   // Returns true if the user wants to show accesibility menu even when all the
61   // accessibility features are disabled.
62   virtual bool ShouldAlwaysShowAccessibilityMenu() const = 0;
63
64   // Cancel all current and queued speech immediately.
65   virtual void SilenceSpokenFeedback() const = 0;
66
67   // Saves the zoom scale of the full screen magnifier.
68   virtual void SaveScreenMagnifierScale(double scale) = 0;
69
70   // Gets a saved value of the zoom scale of full screen magnifier. If a value
71   // is not saved, return a negative value.
72   virtual double GetSavedScreenMagnifierScale() = 0;
73 };
74
75 }  // namespace ash
76
77 #endif  // ASH_ACCESSIBILITYDELEGATE_H_