@@ -117,39 +117,25 @@ public void keyDown(@NonNull FlutterKeyEvent keyEvent) {
117117 }
118118
119119 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 ());
129129 }
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 () );
135135 }
136136
137137 /** A key event as defined by Flutter. */
138138 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 ;
153139 /**
154140 * The code point for the Unicode character produced by this event if no meta keys were pressed
155141 * (by passing 0 to {@code KeyEvent.getUnicodeChar(int)}).
@@ -158,46 +144,10 @@ public static class FlutterKeyEvent {
158144 * href="https://developer.android.com/reference/android/view/KeyEvent?hl=en#getUnicodeChar(int)">KeyEvent.getUnicodeChar(int)</a>
159145 */
160146 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 ;
176147 /**
177148 * The character produced by this event, including any combining characters pressed before it.
178149 */
179150 @ 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 ;
201151 /**
202152 * The vendorId of the device that produced this key event.
203153 *
@@ -212,13 +162,6 @@ public static class FlutterKeyEvent {
212162 * href="https://developer.android.com/reference/android/view/InputDevice?hl=en#getProductId()">InputDevice.getProductId()</a>
213163 */
214164 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 ;
222165 /**
223166 * The Android key event that this Flutter key event was created from.
224167 *
@@ -233,44 +176,15 @@ public FlutterKeyEvent(@NonNull KeyEvent androidKeyEvent) {
233176
234177 public FlutterKeyEvent (
235178 @ 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 );
248180 }
249181
250182 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 ) {
264184 this .plainCodePoint = plainCodePoint ;
265- this .codePoint = codePoint ;
266- this .keyCode = keyCode ;
267185 this .complexCharacter = complexCharacter ;
268- this .scanCode = scanCode ;
269- this .metaState = metaState ;
270- this .source = source ;
271- this .repeatCount = repeatCount ;
272186 this .event = event ;
273- InputDevice device = InputDevice .getDevice (deviceId );
187+ InputDevice device = InputDevice .getDevice (event . getDeviceId () );
274188 if (device != null ) {
275189 if (Build .VERSION .SDK_INT >= Build .VERSION_CODES .KITKAT ) {
276190 this .vendorId = device .getVendorId ();
0 commit comments