The send text command has inconsistent behavior depending on how the text input is implemented in Android TV. Some text inputs like the global search box append text, while others like the one in the Spotify app replace the text input text.
I've observed this behavior when using the Home Assistant Android TV Remote integration. Sending characters one at a time results in them being replaced in the Spotify app, while sending the entire text works and replaces the text input content. In some other apps, the text input replaces when the on screen keyboard is open but appends when it's closed and still in focus. Unfortunately this doesn't work for Spotify and similar apps which remove focus from the text input when the keyboard is not open.
Ideally we'd be able to discover a way to choose text input mode append vs replace, but I'm not particular familiar with this protocol or if that's even possible. It would also be helpful if we could find a way to determine if the on screen keyboard is open or not. Then I could at least account for the append vs replace behavior based on that.
@astrokin I figure you may have more insight or may be able to figure out more since you reverse engineered this originally.
The send text command has inconsistent behavior depending on how the text input is implemented in Android TV. Some text inputs like the global search box append text, while others like the one in the Spotify app replace the text input text.
I've observed this behavior when using the Home Assistant Android TV Remote integration. Sending characters one at a time results in them being replaced in the Spotify app, while sending the entire text works and replaces the text input content. In some other apps, the text input replaces when the on screen keyboard is open but appends when it's closed and still in focus. Unfortunately this doesn't work for Spotify and similar apps which remove focus from the text input when the keyboard is not open.
Ideally we'd be able to discover a way to choose text input mode append vs replace, but I'm not particular familiar with this protocol or if that's even possible. It would also be helpful if we could find a way to determine if the on screen keyboard is open or not. Then I could at least account for the append vs replace behavior based on that.
@astrokin I figure you may have more insight or may be able to figure out more since you reverse engineered this originally.