tried this suggestion from greyback in OSKController.qml:
Connections {
    target: ApplicationManager
    onFocusRequested: {
        if (__oskSurface) {
            // application in focus changed while OSK visible
            if (appId == "") // appId parameter of focusRequested signal. This 
hopefully means all focused app closed.
                Qt.inputMethod.hide(); //close OSK
        }
    }
}

Unfortunately the Qt.inputMethod.hide() method does not close the OSK.
According to ricmm, only the owner of the input context (i.e. the app
that has just been killed) can call hide on it.

The proper fix according to ricmm would be maliit-server should detect
when a peer is closed and invalidate the active input context or
explicitly make the OSK surface invisible. I have no idea where the code
would be in maliit-server to do this, and all of our maliit experts are
gone (:

So one potential workaround to try as quick fixes:
- instead of focusing the next app in the stack as we do now when the currently 
focused app is killed, focus the shell. This will cause the OSK to hide 
properly - as it does now if you just have one app running and you kill it from 
under the covers.
Was unclear where in application_manager.cpp to make this change or I would 
have tried.

@greyback - can you give this a try?


** Changed in: unity-mir
       Status: Triaged => Confirmed

** Changed in: unity-mir (Ubuntu)
       Status: Triaged => Confirmed

** Changed in: unity-mir (Ubuntu)
     Assignee: (unassigned) => Gerry Boland (gerboland)

** Changed in: unity-mir
     Assignee: (unassigned) => Gerry Boland (gerboland)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1267550

Title:
  input method (OSK) not being hidden if app killed

To manage notifications about this bug go to:
https://bugs.launchpad.net/unity-mir/+bug/1267550/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to