Qt Virtual Keyboard
The Qt Virtual Keyboard project provides an input framework and reference keyboard frontend for Qt 6 on Linux Desktop/X11, Windows Desktop, and Boot2Qt targets.
The input framework makes it easy to write custom input methods or to integrate 3rd party input engines. The input methods can be implemented in C++ or QML.
Key features of the Qt Virtual Keyboard include:
- Customizable keyboard layouts and styles with dynamic switching.
- Predictive text input with word selection.
- Character preview and alternative character view.
- Automatic capitalization and space insertion.
- Scalability to different resolutions.
- Support for different character sets (Latin, Simplified/Traditional Chinese, Hindi, Japanese, Arabic, Hebrew, Korean, and others).
- Support for most common input languages, with possibility to easily extend the language support.
- Left-to-right and right-to-left input.
- Hardware key support for 2-way and 5-way navigation.
- Handwriting support, with gestures for fullscreen input.
- Audio feedback.
- Cross-platform functionality.
- Supports both Qt Quick and Qt Widgets applications.
The Virtual Keyboard supports the following languages:
To add support for an additional language, see Adding New Keyboard Layouts.
The Qt Virtual Keyboard supports third-party plugins from the following vendors:
- Cerence XT9 advanced input.
- Cerence Handwriting text input.
- MyScript Text handwriting recognition
Building Qt Virtual Keyboard describes how to integrate these plugins into the Qt Virtual Keyboard.
Licenses and Attributions
Qt Virtual Keyboard is available under commercial licenses from The Qt Company. In addition, it is available under the GNU General Public License, version 3. See Qt Licensing for further details.
Furthermore Qt Virtual Keyboard potentially contains third party modules under following permissive licenses:
Apache License 2.0
Apache License 2.0
Apache License 2.0 and BSD 3-clause "New" or "Revised" License
© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.