Медленный текстовый ввод
Обновление строки ввода текста осуществляется принудительно плеером, по каждому нажатому символу.
Игрок нажал кнопку -> интерфейс заметил изменение -> плеер передал библиотеке -> библиотека сохранила новое значение у себя.
В результате быстрого набора текста пользователя происходит полный цикл взаимодействия интерфейса с библиотекой, на каждую нажатую клавишу. На слабых устройствах и на слабых каналах связи интерфейс -> плеер -> библиотека, таких как различные браузерные мосты, это отнимает огромную кучу времени. Заметно торможение.
Чтобы исправить этот негативный эффект, стоит лишь по-другому организовать библиотечное API: не устанавливать принудительно значение в библиотеке на каждую изменившуюся букву, а наоборот, сделать колбэк, который будет опрашивать плеер по необходимости. Так как никаких событий на изменение символов в строке ввода не привязано, то на совместимость это никак не повлияет.
В итоге должно получиться так:
Игрок нажал кнопку -> интерфейс заметил изменение -> плеер сохранил новое значение у себя.
Игрок нажал кнопку -> интерфейс заметил изменение -> плеер сохранил новое значение у себя.
Игрок нажал кнопку -> интерфейс заметил изменение -> плеер сохранил новое значение у себя.
Библиотека запросила значение строки ввода -> плеер отдал сохранённое значение.
Или так (на выбор автора плеера, если так быстрее):
Игрок нажал кнопку -> значение поля ввода изменилось.
Игрок нажал кнопку -> значение поля ввода изменилось.
Игрок нажал кнопку -> значение поля ввода изменилось.
Библиотека запросила значение строки ввода -> плеер запросил значение у интерфейса и вернул его.