dryark / controlfloor

System for controlling devices remotely
Other
84 stars 27 forks source link

Keyboard Support - Basic #2

Closed nanoscopic closed 3 years ago

nanoscopic commented 3 years ago

Add keyboard support, to allow typing.

Basic means to just implement this for now using WDA. WDA is imperfect in that it cannot do all of the things that a plugged in keyboard can do, but it will suffice for initial purposes.

nanoscopic commented 3 years ago

Keyboard support has now been added.

The following is supported so far:

Unsupported ( WDA doesn't seem to provide any way to do these ):

Keys are sent in batches twice per second. Any faster than this and WDA calls can end up out of order scrambling intended text that was typed quickly.

WDA should be pipelined itself to avoid that... WDA doesn't properly handle multiple simultaneous calls. TODO

The text entry isn't as fast as I would like, and it is inconvenient that navigation keys aren't supported. Those should be able to be supported by writing a custom keyboard for iOS that can receive remote commands. TODO

nanoscopic commented 3 years ago

Keyboard support is working pretty good now. The speed has been much improved.

Arrow keys work now.

No more out of order key nonsense.