Flutter Windows Embedder
accessibility_plugin.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter 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 FLUTTER_SHELL_PLATFORM_WINDOWS_ACCESSIBILITY_PLUGIN_H_
6 #define FLUTTER_SHELL_PLATFORM_WINDOWS_ACCESSIBILITY_PLUGIN_H_
7 
8 #include <string_view>
9 
10 #include "flutter/fml/macros.h"
12 
13 namespace flutter {
14 
15 class FlutterWindowsEngine;
16 
17 // Handles messages on the flutter/accessibility channel.
18 //
19 // See:
20 // https://api.flutter.dev/flutter/semantics/SemanticsService-class.html
22  public:
23  explicit AccessibilityPlugin(FlutterWindowsEngine* engine);
24 
25  // Begin handling accessibility messages on the `binary_messenger`.
26  static void SetUp(BinaryMessenger* binary_messenger,
27  AccessibilityPlugin* plugin);
28 
29  // Announce a message through the assistive technology.
30  virtual void Announce(const std::string_view message);
31 
32  private:
33  // The engine that owns this plugin.
34  FlutterWindowsEngine* engine_ = nullptr;
35 
36  FML_DISALLOW_COPY_AND_ASSIGN(AccessibilityPlugin);
37 };
38 
39 } // namespace flutter
40 
41 #endif // FLUTTER_SHELL_PLATFORM_WINDOWS_ACCESSIBILITY_PLUGIN_H_
flutter::FlutterWindowsEngine
Definition: flutter_windows_engine.h:89
binary_messenger.h
flutter::AccessibilityPlugin::AccessibilityPlugin
AccessibilityPlugin(FlutterWindowsEngine *engine)
Definition: accessibility_plugin.cc:73
flutter::BinaryMessenger
Definition: binary_messenger.h:28
flutter
Definition: accessibility_bridge_windows.cc:11
message
Win32Message message
Definition: keyboard_unittests.cc:137
flutter::AccessibilityPlugin::Announce
virtual void Announce(const std::string_view message)
Definition: accessibility_plugin.cc:92
flutter::AccessibilityPlugin
Definition: accessibility_plugin.h:21
flutter::AccessibilityPlugin::SetUp
static void SetUp(BinaryMessenger *binary_messenger, AccessibilityPlugin *plugin)
Definition: accessibility_plugin.cc:76