如何在Qt应用程序中使用“ weston-keyboard”虚拟/屏幕键盘

时间:2018-08-24 02:36:01

标签: qt wayland

我有一个嵌入式Linux显示器(Yocto构建),它使用Wayland Weston显示器合成器,为此我正在开发针对Qt 5.9.4的Qt应用程序软件。

我的应用程序已成功运行,并且文本输入UI字段可以使用USB键盘正常工作,但是尽管经过了一天的谷歌搜索和试验,但我仍然看不到虚拟键盘或屏幕键盘的任何迹象,这些迹象可能是由韦斯顿作曲家。显示屏上正在运行“ weston-keyboard”进程,但没有迹象表明弹出的屏幕键盘会出现在任何地方。

有人知道是否需要在应用程序软件端进行某些特别操作以显示/激活虚拟键盘(从我的分类读物中,我得到的印象是应该“可以正常工作”),或者我应该怀疑操作系统构建有缺陷吗?

1 个答案:

答案 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

相关问题