Можно ли поиграть с сенсорной клавиатурой Windows с помощью javascript?

Я разрабатываю киоск-приложение с использованием Electron. Но когда я протестировал приложение на реальном киоске с ОС Windows 8, экранная клавиатура не запускается. Можно ли вручную включить клавиатуру с помощью JavaScript? Я искал ответ, но не получил правильного ответа. Также я хотел бы изменить язык клавиатуры с предпочтениями пользователя? Могу ли я сделать это, используя окна на экранной клавиатуре?


person Ditto P S    schedule 09.11.2015    source источник


Ответы (2)


Как именно вы создаете режим киоска? Заменив оболочку или/и используя полноэкранное приложение? Если это так - вам нужно использовать собственную внутреннюю клавиатуру. Клавиатура Windows доступна, только если запущен проводник и не запущено полноэкранное приложение.

person VoidVolker    schedule 12.11.2015
comment
Да, я использовал полноэкранный режим, удалив рамку окна. Теперь я реализовал пользовательскую клавиатуру с помощью библиотек. - person Ditto P S; 12.11.2015
comment
Я советую вам заменить оболочку Windows и добавить внешний наблюдатель за приложениями, который перезапустит ваше приложение в случае сбоя. github.com/VoidVolker/kiosk — здесь вы можете найти мою инструкцию, как создать режим киоска Windows. - person VoidVolker; 12.11.2015
comment
Спасибо за дополнительную информацию. я обязательно посмотрю на это. :) - person Ditto P S; 13.11.2015

Я столкнулся с этим, исследуя аналогичную проблему. Если вы используете средство запуска оболочки Windows (подробности здесь), то вам еще может повезти. Служба «Служба сенсорной клавиатуры и рукописного ввода» по-прежнему доступна с использованием этого метода. Вы можете проверить доступность клавиатуры, открыв диспетчер задач и попытавшись запустить новую задачу. Если клавиатура выскакивает при нажатии на поле ввода там, клавиатура работает на уровне ОС.

Если клавиатура не открывается на уровне ОС, может потребоваться запуск службы Touch Keyboard или настройка пары ключей реестра, таких как: HKCU\Software\Microsoft\TabletTip\1.7\EnableDesktopModeAutoInvoke = 1 HKCU\Software\Microsoft\windows\CurrentVersion\ Иммерсивешелл\таблетмоде = 1

Все это говорит о том, что были некоторые проблемы с тем, как Chrome взаимодействует с сенсорной клавиатурой, начиная примерно с Chrome 49-50. Обновление до последней версии Chrome устранило проблему для меня (51.0.2707.106m). Я предполагаю, что также будет некоторое совпадение, поскольку, насколько я понимаю, Electron использует Chromium.

PS. Я только что понял, что этот вопрос был для Windows 8. Хотя мой опыт был связан с Windows 10, я считаю, что следует применить тот же совет.

person joe    schedule 09.07.2016