我有一个嵌入式linux显示器(Yocto版本),它使用Wayland Weston display compositor,我正在为它开发Qt应用程序软件,目标是Qt 5.9.4。
我的应用程序运行成功,文本输入UI字段可以很好地使用USB键盘,然而,尽管进行了一天的谷歌搜索和实验,我还是看不到任何虚拟/屏幕键盘的迹象,这应该是由Weston compositor提供的。有一个"weston- keyboard“进程在显示器上运行,但没有任何地方出现弹出式屏幕键盘的迹象。
有没有人知道从应用软件端到显示/激活虚拟键盘需要做什么特别的事情(从我的各种阅读中我得到的印象是它应该“只是工作”),或者我应该怀疑操作系统构建中的一个缺陷?
发布于 2018-08-24 22:28:47
Qt应用程序使用Wayland协议扩展zwp_text_input_manager_v2
与合成器进行有关虚拟键盘的通信。
据我所知,Weston不支持它(你可以通过运行weston-info
来查看支持哪些扩展。
因此,如果合成器没有实现确切版本,Qt客户端将认为合成器不支持它(即使它可能实现zxdg_text_input_manager_v1
和/或zxdg_text_input_manager_v3
。
对于zwp_text_input_manager_v2
,您可以运行kwin或基于Qt Wayland的合成器。有关如何执行此操作的信息,请参阅qwayland
存储库中的pure-qml
示例。
通过在客户端设置QT_IM_MODULE=qtvirtualkeyboard,Qt虚拟键盘也可以作为每个客户端的一部分运行。
那是official documentation on the way regarding this。希望它能在一段时间后出现在here上。
https://stackoverflow.com/questions/51996712
复制相似问题