iberianpig / fusuma-plugin-sendkey

Fusuma plugin that sending virtual keyboard events
MIT License
72 stars 2 forks source link

Add support for keypress parameter in sendkey executor #28

Closed iberianpig closed 1 year ago

iberianpig commented 1 year ago

When parent of sendkey has a keypress parameter using fusuma-plugin-sendkey , only the key except for the key of the keypress parameter is sent as sendkey. This means that sendkey and the modified key state pressed by the user work together to send the key.

Before this change, there was a bug where the modifier key would be briefly up/down during sendkey execution, and users had to exclude the keys included in keypress from the sendkey parameters. This change removes the need for that.

In keyboard.rb, the type method also adds a keep argument, which is used to exclude the modified keys specified in keep from param_keycodes by subtracting keep_keycodes from param_keycodes. This results in the remaining key codes being processed with keydown and keyup as type_keycodes.