Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

VirtualKeyboard unusable on fullscreen windows 10 QQuick app



  • Environment:

    • Windows 10
    • Qt5.9.3 MSVC2015 32bit
    • QCoreApplication configured with AA_UseDesktopOpenGL because of performance matters.
    • Tablet mode on/off (I can see the issue on both modes)
    • Touch actions, the issue is not reproducible by mouse events

    Problem:
    I have a very simple application that on fullscreen where the VirtualKeyboard is unusable:

    int main(int argc, char *argv[])
    {
        qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));
        QCoreApplication::setAttribute(Qt::AA_UseDesktopOpenGL);
    
        QGuiApplication app(argc, argv);
    
        QQmlApplicationEngine engine;
        engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
        if (engine.rootObjects().isEmpty())
            return -1;
    
        return app.exec();
    }
    
    ApplicationWindow {
        id: mainWindow
        visible: true
        width: 800
        height: 600
        visibility: "FullScreen"
        flags: Qt.Window
    
        Row{
            TextField{
                text: "Texto 1"
            }
            Button{
                text: "exit"
                onClicked: Qt.quit();
            }
        }
    
        InputPanel {
            id: inputPanel
            width: mainWindow.width / 2
            x: (mainWindow.width - width) / 2
            y: mainWindow.height
    
            states: State {
                name: "visible"
                when: inputPanel.active
                PropertyChanges {
                    target: inputPanel
                    y: mainWindow.height - inputPanel.height
                }
            }
        }
    }
    

    When I am selecting the TextField, virtual keyboard appears properly but it is unusable.

    I have been playing with the problem and it is provoked because of "windows osk(tabtip)" is launched, but I cannot see because my app is on top, and the "windows osk" is capturing the events.

    As more information, If I do not set the AA_UseDesktopOpenGL attribute, just leaving the default one, I can see "Windows osk" over my fullscreen window.

    • Is there a way to disable the "windows OSK" auto-launch when selecting a text field?
    • Did anyone see this behaviour before?

    Regards.



  • Same here!
    Weird thing is that in one part of my application, the Qt Virtual Keyboard is functioning properly and in the other part not: When clicking on a QLineEdit, the Virtual Keyboard is shown, but when clicking on the Virtual Keyboard's buttons, there is no response. Even the Caps lock functionality also doesn't work.

    Did you find a fix for this yet?


Log in to reply