@@ -117,39 +117,25 @@ public void keyDown(@NonNull FlutterKeyEvent keyEvent) {
117
117
}
118
118
119
119
private void encodeKeyEvent (
120
- @ NonNull FlutterKeyEvent event , @ NonNull Map <String , Object > message ) {
121
- message .put ("flags" , event .flags );
122
- message .put ("plainCodePoint" , event .plainCodePoint );
123
- message .put ("codePoint" , event .codePoint );
124
- message .put ("keyCode" , event .keyCode );
125
- message .put ("scanCode" , event .scanCode );
126
- message .put ("metaState" , event .metaState );
127
- if (event .complexCharacter != null ) {
128
- message .put ("character" , event .complexCharacter .toString ());
120
+ @ NonNull FlutterKeyEvent keyEvent , @ NonNull Map <String , Object > message ) {
121
+ message .put ("flags" , keyEvent . event .getFlags () );
122
+ message .put ("plainCodePoint" , keyEvent .plainCodePoint );
123
+ message .put ("codePoint" , keyEvent . event .getUnicodeChar () );
124
+ message .put ("keyCode" , keyEvent . event .getKeyCode () );
125
+ message .put ("scanCode" , keyEvent . event .getScanCode () );
126
+ message .put ("metaState" , keyEvent . event .getMetaState () );
127
+ if (keyEvent .complexCharacter != null ) {
128
+ message .put ("character" , keyEvent .complexCharacter .toString ());
129
129
}
130
- message .put ("source" , event .source );
131
- message .put ("vendorId" , event .vendorId );
132
- message .put ("productId" , event .productId );
133
- message .put ("deviceId" , event .deviceId );
134
- message .put ("repeatCount" , event .repeatCount );
130
+ message .put ("source" , keyEvent . event .getSource () );
131
+ message .put ("vendorId" , keyEvent .vendorId );
132
+ message .put ("productId" , keyEvent .productId );
133
+ message .put ("deviceId" , keyEvent . event .getDeviceId () );
134
+ message .put ("repeatCount" , keyEvent . event .getRepeatCount () );
135
135
}
136
136
137
137
/** A key event as defined by Flutter. */
138
138
public static class FlutterKeyEvent {
139
- /**
140
- * The id for the device this event came from.
141
- *
142
- * @see <a
143
- * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getDeviceId()">KeyEvent.getDeviceId()</a>
144
- */
145
- public final int deviceId ;
146
- /**
147
- * The flags for this key event.
148
- *
149
- * @see <a
150
- * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getFlags()">KeyEvent.getFlags()</a>
151
- */
152
- public final int flags ;
153
139
/**
154
140
* The code point for the Unicode character produced by this event if no meta keys were pressed
155
141
* (by passing 0 to {@code KeyEvent.getUnicodeChar(int)}).
@@ -158,46 +144,10 @@ public static class FlutterKeyEvent {
158
144
* href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getUnicodeChar(int)">KeyEvent.getUnicodeChar(int)</a>
159
145
*/
160
146
public final int plainCodePoint ;
161
- /**
162
- * The code point for the Unicode character produced by this event, taking into account the meta
163
- * keys currently pressed.
164
- *
165
- * @see <a
166
- * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getUnicodeChar()">KeyEvent.getUnicodeChar()</a>
167
- */
168
- public final int codePoint ;
169
- /**
170
- * The Android key code for this event.
171
- *
172
- * @see <a
173
- * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getKeyCode()">KeyEvent.getKeyCode()</a>
174
- */
175
- public final int keyCode ;
176
147
/**
177
148
* The character produced by this event, including any combining characters pressed before it.
178
149
*/
179
150
@ Nullable public final Character complexCharacter ;
180
- /**
181
- * The Android scan code for the key pressed.
182
- *
183
- * @see <a
184
- * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getScanCode()">KeyEvent.getScanCode()</a>
185
- */
186
- public final int scanCode ;
187
- /**
188
- * The meta key state for the Android key event.
189
- *
190
- * @see <a
191
- * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getMetaState()">KeyEvent.getMetaState()</a>
192
- */
193
- public final int metaState ;
194
- /**
195
- * The source of the key event.
196
- *
197
- * @see <a
198
- * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getSource()">KeyEvent.getSource()</a>
199
- */
200
- public final int source ;
201
151
/**
202
152
* The vendorId of the device that produced this key event.
203
153
*
@@ -212,13 +162,6 @@ public static class FlutterKeyEvent {
212
162
* href="https://developer.android.com/reference/android/view/InputDevice?hl=en#getProductId()">InputDevice.getProductId()</a>
213
163
*/
214
164
public final int productId ;
215
- /**
216
- * The repeat count for this event.
217
- *
218
- * @see <a
219
- * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getRepeatCount()">KeyEvent.getRepeatCount()</a>
220
- */
221
- public final int repeatCount ;
222
165
/**
223
166
* The Android key event that this Flutter key event was created from.
224
167
*
@@ -233,44 +176,15 @@ public FlutterKeyEvent(@NonNull KeyEvent androidKeyEvent) {
233
176
234
177
public FlutterKeyEvent (
235
178
@ NonNull KeyEvent androidKeyEvent , @ Nullable Character complexCharacter ) {
236
- this (
237
- androidKeyEvent .getDeviceId (),
238
- androidKeyEvent .getFlags (),
239
- androidKeyEvent .getUnicodeChar (0x0 ),
240
- androidKeyEvent .getUnicodeChar (),
241
- androidKeyEvent .getKeyCode (),
242
- complexCharacter ,
243
- androidKeyEvent .getScanCode (),
244
- androidKeyEvent .getMetaState (),
245
- androidKeyEvent .getSource (),
246
- androidKeyEvent .getRepeatCount (),
247
- androidKeyEvent );
179
+ this (androidKeyEvent .getUnicodeChar (0x0 ), complexCharacter , androidKeyEvent );
248
180
}
249
181
250
182
public FlutterKeyEvent (
251
- int deviceId ,
252
- int flags ,
253
- int plainCodePoint ,
254
- int codePoint ,
255
- int keyCode ,
256
- @ Nullable Character complexCharacter ,
257
- int scanCode ,
258
- int metaState ,
259
- int source ,
260
- int repeatCount ,
261
- KeyEvent event ) {
262
- this .deviceId = deviceId ;
263
- this .flags = flags ;
183
+ int plainCodePoint , @ Nullable Character complexCharacter , KeyEvent event ) {
264
184
this .plainCodePoint = plainCodePoint ;
265
- this .codePoint = codePoint ;
266
- this .keyCode = keyCode ;
267
185
this .complexCharacter = complexCharacter ;
268
- this .scanCode = scanCode ;
269
- this .metaState = metaState ;
270
- this .source = source ;
271
- this .repeatCount = repeatCount ;
272
186
this .event = event ;
273
- InputDevice device = InputDevice .getDevice (deviceId );
187
+ InputDevice device = InputDevice .getDevice (event . getDeviceId () );
274
188
if (device != null ) {
275
189
if (Build .VERSION .SDK_INT >= Build .VERSION_CODES .KITKAT ) {
276
190
this .vendorId = device .getVendorId ();
0 commit comments