Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-122892

Virtual keyboard hidden on TextInput with echoMode: TextInput.Password

    XMLWordPrintable

Details

    • Windows

    Description

      Windows Surface tablet has its own virtual keyboard. There is a keyboard icon in the System Tray to explicitly show/hide it, but it also appears on its own implicitly when you tap in a text field on any app.

      See attached QML Main.qml which contains 3 fields. All areĀ TextInput but only the 2nd field has echoMode: TextInput.Password.

      Reproduce the problem

      1. Start Google Chrome. (See my notes below for an explanation why.)
      2. Run the QML project from Qt Creator.
      3. Manually show then hide the virtual keyboard (from System Tray).
      4. Switch to Google Chrome and tap in the address field. This triggers the virtual keyboard to appear without you explicitly requesting it.
      5. Now go to the QML app and tap in the first field. The virtual keyboard will have disappeared while you were navigating apps but will now appear.
      6. The input fields are connected with Tab navigation. So either type in each field and tab to the next one or tap in each field to select it. Whenever the 2nd field has active focus you'll notice the virtual keyboard disappears.

      Important notes

      1. If you were to manually show the virtual keyboard from System Tray, it would remain throughout and the bug would not be triggered... so it's something to do with implicitly showing it.
      2. If you change the 2nd field to `echoMode: TextInput.PasswordEchoOnEdit`, the problem doesn't show itself... so it's specific to `TextInput.Password`.
      3. Qt Creator 12.0.1 suffers this problem in its editors too. If you tap in an editor window, the virtual keyboard appears momentarily and then disappears. (I haven't logged a separate bug for this, but you might want to.)
      4. If you don't do the step of switching to Google Chrome, it is hit and miss as to whether the virtual keyboard will appear when you tap into any of the `TextInput` fields. Sometimes it appears immediately, sometimes you tap a couple of times and it appears, sometimes it never appears. But somehow by going to a 'robust' app like Google Chrome and triggering the virtual keyboard to appear there, it then means it will show up reliably in the QML app.

      I have also attached a video of this problem happening in the field, as reported by one of my users. (Note that my app is full-screen meaning the System Tray is not visible so users cannot easily show/hide the keyboard from there.)

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            qt.team.quick.subscriptions Qt Quick and Widgets Team
            paulmasri Paul
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes