Nerwyn / android-tv-card

Universal Customizable TV Remote Card, with HA actions, super configurable touchpad, slider, haptics, and keyboard

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

support for fire tv on the keyboard

armedad opened this issue · comments

the current keyboards don't work completely on fire tv. keys like backspace, delete, etc are handled differently than chromecast

i'd love to be able to override arbitrary keys. this would allow me to even replace the handling of alpha numerics. but alternatively alternate keyboard_mode like kodi (as you suggested in the community thread) would solve for these specific keys.

Keyboards (seamless, textbox, and search) are programmed differently than regular buttons and wouldn't be remappable without a major rewrite. Adding new keyboard modes for different platforms makes more sense since there are a finite number of platforms and variations that need to be supported.

I opted to use the Android Remote API commands for backspace, delete, enter, arrow left, and arrow right since they're much more performant, but can create an alternate Fire TV keyboard mode which sends these commands via ADB. I'll work on this along with a couple of other feature requests for the next minor version and share a beta here when it's ready.

Implemented in 3.4.0, which is still in alpha as I implement other feature requests. Set keyboard_mode to FIRE TV, and then backspace, delete, enter, and arrow left and right will be sent using ADB instead of the remote API.

Ready to for testing and feedback in the latest beta!

@armedad still waiting for your feedback

i'm getting "failed to call service/send_command, must contain at least one of entity_id, device_id, area_id

i only get that error on backspace/enter (don't have arrows to test). alpha numerics and other character keys work fine.

I'm not getting that error in my testing. The entity ID for keyboard calls is being set here and is being done pretty much the same way as it's done for alphanumeric keys. Have you tried clearing cache? This sounds like it could be a caching issue.

I'd have to reconfigure my build pipeline to spit out a non-minified copy of the card JS file, and I'm not sure if I want to deal with that headache. Glad to hear that it works!

Added in 3.4.0