我有一个嵌入式Linux显示器(Yocto构建),它使用Wayland Weston显示器合成器,为此我正在开发针对Qt 5.9.4的Qt应用程序软件。
我的应用程序已成功运行,并且文本输入UI字段可以使用USB键盘正常工作,但是尽管经过了一天的谷歌搜索和试验,但我仍然看不到虚拟键盘或屏幕键盘的任何迹象,这些迹象可能是由韦斯顿作曲家。显示屏上正在运行“ weston-keyboard”进程,但没有迹象表明弹出的屏幕键盘会出现在任何地方。
有人知道是否需要在应用程序软件端进行某些特别操作以显示/激活虚拟键盘(从我的分类读物中,我得到的印象是应该“可以正常工作”),或者我应该怀疑操作系统构建有缺陷吗?
答案 0 :(得分:0)
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的合成器。有关如何执行此操作,请参见pure-qml
存储库中的qwayland
示例。
通过在客户端设置QT_IM_MODULE = qtvirtualkeyboard,也可以将Qt虚拟键盘作为每个客户端的一部分来运行。
有official documentation on the way regarding this。希望它会在一段时间后显示here。