| // Copyright 2018 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| library fuchsia.accessibility; |
| |
| // This interface is intended to provide a simple centralized switch to turn |
| // on or off accessibility support throughout the system. We intend for this to |
| // be implemented solely by the accessibility manager, and called solely by a privileged |
| // client, such as the session shell. |
| [Discoverable] |
| protocol Toggler { |
| // Allows for enabling or disabling accessibility support in services connected to the |
| // accessibility toggle broadcaster. |
| ToggleAccessibilitySupport(bool enabled); |
| }; |
| |
| // The accessibility toggle broadcaster notifies clients when the toggler receives a call to |
| // toggle accessibility support. |
| // The current intended audience for this includes: |
| // - Front-ends like Flutter which need to enable semantic information for accessibility. |
| // - Root presenter, which needs to re-route raw input to an accessibility input dispatch. |
| // - Accessibility touch dispatcher, which should only be enabled when accessibility is turned on. |
| [Discoverable] |
| protocol ToggleBroadcaster { |
| // Notify the client that accessibility support has been enabled or disabled. Clients should |
| // use this to enable or disable their own custom accessibility support. |
| -> OnAccessibilityToggle(bool enabled); |
| }; |