Flutter Engine
Loading...
Searching...
No Matches
keyboard_key_channel_handler.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_KEYBOARD_KEY_CHANNEL_HANDLER_H_
6
#define FLUTTER_SHELL_PLATFORM_WINDOWS_KEYBOARD_KEY_CHANNEL_HANDLER_H_
7
8
#include <deque>
9
#include <memory>
10
#include <string>
11
12
#include "
flutter/fml/macros.h
"
13
#include "
flutter/shell/platform/common/client_wrapper/include/flutter/basic_message_channel.h
"
14
#include "
flutter/shell/platform/common/client_wrapper/include/flutter/binary_messenger.h
"
15
#include "
flutter/shell/platform/windows/keyboard_key_handler.h
"
16
#include "rapidjson/document.h"
17
18
namespace
flutter
{
19
20
// A delegate of |KeyboardKeyHandler| that handles events by sending the
21
// raw information through the method channel.
22
//
23
// This class communicates with the RawKeyboard API in the framework.
24
class
KeyboardKeyChannelHandler
25
:
public
KeyboardKeyHandler::KeyboardKeyHandlerDelegate
{
26
public
:
27
// Create a |KeyboardKeyChannelHandler| by specifying the messenger
28
// through which the events are sent.
29
explicit
KeyboardKeyChannelHandler
(
flutter::BinaryMessenger
* messenger);
30
31
~KeyboardKeyChannelHandler
();
32
33
// |KeyboardKeyHandler::KeyboardKeyHandlerDelegate|
34
void
KeyboardHook
(
int
key
,
35
int
scancode
,
36
int
action
,
37
char32_t
character
,
38
bool
extended
,
39
bool
was_down
,
40
std::function<
void
(
bool
)>
callback
);
41
42
void
SyncModifiersIfNeeded
(
int
modifiers_state);
43
44
std::map<uint64_t, uint64_t>
GetPressedState
();
45
46
private
:
47
// The Flutter system channel for key event messages.
48
std::unique_ptr<flutter::BasicMessageChannel<rapidjson::Document>> channel_;
49
50
FML_DISALLOW_COPY_AND_ASSIGN
(
KeyboardKeyChannelHandler
);
51
};
52
53
}
// namespace flutter
54
55
#endif
// FLUTTER_SHELL_PLATFORM_WINDOWS_KEYBOARD_KEY_CHANNEL_HANDLER_H_
basic_message_channel.h
binary_messenger.h
flutter::BinaryMessenger
Definition
binary_messenger.h:28
flutter::KeyboardKeyChannelHandler
Definition
keyboard_key_channel_handler.h:25
flutter::KeyboardKeyChannelHandler::~KeyboardKeyChannelHandler
~KeyboardKeyChannelHandler()
flutter::KeyboardKeyChannelHandler::KeyboardHook
void KeyboardHook(int key, int scancode, int action, char32_t character, bool extended, bool was_down, std::function< void(bool)> callback)
Definition
keyboard_key_channel_handler.cc:124
flutter::KeyboardKeyChannelHandler::SyncModifiersIfNeeded
void SyncModifiersIfNeeded(int modifiers_state)
Definition
keyboard_key_channel_handler.cc:112
flutter::KeyboardKeyChannelHandler::GetPressedState
std::map< uint64_t, uint64_t > GetPressedState()
Definition
keyboard_key_channel_handler.cc:116
flutter::KeyboardKeyHandler::KeyboardKeyHandlerDelegate
Definition
keyboard_key_handler.h:39
callback
FlutterDesktopBinaryReply callback
Definition
flutter_windows_view_unittests.cc:52
macros.h
FML_DISALLOW_COPY_AND_ASSIGN
#define FML_DISALLOW_COPY_AND_ASSIGN(TypeName)
Definition
macros.h:27
keyboard_key_handler.h
extended
bool extended
Definition
keyboard_key_handler_unittests.cc:118
key
int key
Definition
keyboard_key_handler_unittests.cc:114
character
char32_t character
Definition
keyboard_key_handler_unittests.cc:117
action
int action
Definition
keyboard_key_handler_unittests.cc:116
scancode
int scancode
Definition
keyboard_key_handler_unittests.cc:115
was_down
bool was_down
Definition
keyboard_key_handler_unittests.cc:119
flutter
Definition
asset_manager.cc:10
shell
platform
windows
keyboard_key_channel_handler.h
Generated on Thu Nov 6 2025 16:11:28 for Flutter Engine by
1.9.8