tree c50d8604d5665aa4ec6465153d4ec1f615eb543b
parent cb50d4a804f6a85fd8c2feec3c5f33c15091e390
author Non Vachara <90251840+nonvachara-paloit@users.noreply.github.com> 1703180896 +0700
committer GitHub <noreply@github.com> 1703180896 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJlhHpgCRBK7hj4Ov3rIwAAgRUIABWeSBrcI4JVED9t2QRWRAGw
 PU1ubzHRmGs07vi9eYn3+YfbY/60XPFODMbh0LOC/+lW6qgqRRHNcw7Ll3RlUocC
 i8P1rS1xM8SnyYQaQtfpBuo7l7nNggmnYRczwuCGacg+OXY/nb1Zfv/RN7s+zEkZ
 7e0Wq4uqgQlu8f8izgl61gs/TyxZa9OF8ZtgMR+DXzdI6FUFBkDRCpIz3rWA7Vuu
 o006f40gwu8HOruouOA1SSX9/UxTPCYDvAPcK6iO/dSUP05WcjkEFFgX4e1rbSf0
 lkCT8lxJmlB60BWghrv4u11mAiEqhdpiGc3GN95Y992UsqrWUBXcl2JahSi45E8=
 =DLw6
 -----END PGP SIGNATURE-----
 

Add send_text_input_action case to deserialization_factory to allow sendTextInputAction usages through flutter_driver. (#139197)

**As a follow up to https://github.com/flutter/flutter/pull/131776.**

**Summary:**
Previously in https://github.com/flutter/flutter/pull/106561, SendTextInputAction was added to Flutter Driver.
But it still cannot be used from flutter_driver tests. This PR intends to resolve that issue.

**Issue:**
An `DriverError: Unsupported command kind send_text_input_action` would be thrown from `flutter_driver/lib/src/common/deserialization_factory.dart` when a call to `driver.sendTextInputAction(TextInputAction.done);` was made despite the method `sendTextInputAction` is available for use since https://github.com/flutter/flutter/pull/106561.

Previous works has been done in https://github.com/flutter/flutter/pull/131776, I merely added tests.

Best regards.