Details
-
Bug
-
Resolution: Unresolved
-
P4: Low
-
None
-
5.7.0
-
None
-
Debian Stretch
Description
When invoking the Qt virtual keyboard on Debian Stretch version, no matter from which application, part of the keyboard is transparent when the part under the keyboard is white. It has its normal color only when the part under it is black. In other cases, it is transluscent.
A trick to avoid this bug is found:
In the main function of the application who wants to invoke the virtual keyboard, set the color of the QQuickViewer as transparent ( by using view.setColor(Qt::transparent)). Then the keyboard's color will become normal.
In the attachment provided the result screen shots of the keyboard called by a very simple qml application with and without the trick as well as the same test with the Qt 5.7 virtual keyboard example.
main function of the application who wants to invoke the virtual keyboard:
int main(int argc, char *argv[])
{
qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));
QGuiApplication app(argc, argv);
QQuickView view;
view.setColor(Qt::transparent); //With this line, the problem of transparency can be solved
view.setSource(QStringLiteral("qrc:/main.qml"));
view.show();
return app.exec();
}
Different desktop environments like KDE, GNOME, Xfce with different preference settings are tested. They do not affect this issue, the results are all the same.
Same tests are also done on Windows7/10 and Ubuntu, no such problem.