Add on-screen-keyboard support for Xmir/Libertine apps

Bug #1543351 reported by kevin gunn on 2016-02-08
224
This bug affects 44 people
Affects Status Importance Assigned to Milestone
Canonical Pocket Desktop
High
kevin gunn
Canonical System Image
High
Stephen M. Webb
Libertine
Status tracked in Devel
Devel
High
Brandon Schaefer
Trunk
High
Brandon Schaefer
Ubuntu UX
Undecided
Unassigned
libertine (Ubuntu)
High
Brandon Schaefer
unity8 (Ubuntu)
Undecided
Unassigned
xorg-server (Ubuntu)
Medium
Unassigned

Bug Description

From perspective of product management - this is currently not a requirement, just want to capture it for future

we currently can't interact with puritine apps relying on the OSK

to add this feature in where text-box selection on an xapp results in triggering the osk, in unity8 would be a very large/complicated effort. However, with a manual capability to trigger the OSK this could be achieved.

For design team
one idea was to add a show/hide button for the OSK.
realizing this may be undesirable to add another indicator item - a follow-on idea might be to add an alpha button in the corner of the xmir-root window (the window that holds any xapp at the moment)
this way the button presence would only be limited to the Xapp interaction.

Related branches

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in xorg-server (Ubuntu):
status: New → Confirmed
kevin gunn (kgunn72) on 2016-02-12
Changed in canonical-pocket-desktop:
assignee: nobody → kevin gunn (kgunn72)
kevin gunn (kgunn72) on 2016-02-12
description: updated
Michał Sawicz (saviq) wrote :

I'm worried there's more to it than that. IIUC today Qt apps talk to the OSK directly on dbus, thanks to this being set on its env:

QT_IM_MODULE=maliitphablet

The input does not go through normal input systems at all, it goes ~directly from OSK to the input field. Even Qt apps would need to poke out of it to comm with the OSK process. Non-Qt apps would need their own maliit support implemented...

There may be other ways, we could make the OSK fall back to generating real input events if there's no app on the other end (that might actually be the most versatile approach), or we could have XMir proxy the input...

Long-term we'd probably like for the input comm to go through Mir over some standardized API so we can support 3rd party OSKs (unless we actually say maliit is the "standardized API").

Lotsa questions, not many answers.

Changed in unity8 (Ubuntu):
status: New → Incomplete
kevin gunn (kgunn72) on 2016-02-15
description: updated
tags: added: xmir
summary: - osk with puritine apps
+ Add on-screen-keyboard support for Xmir/Puritine apps
Changed in xorg-server (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Triaged
tags: added: enhancement

Actually, this isn't just an Xmir issue. It could be needed for any non-Qt app running on Touch.

Normally it's just the app's toolkit that sets this up so it would not seem like Xmir needs to get involved. But there might be some level of Xmir involvement in the conversation between the X app and the shell.

On the other hand, we could just add one OSK button (to rule them all) that Xmir and other non-integrated toollkits could benefit from.

As a third option - Could we make Unity8 just provide an OSK show/hide button/panel in the case that it detects a non-integrated app?

It's worth noting still that the backend-frontend design of input methods means that Xmir probably won't be involved in this enhancement. Just the backend that your Gnome-app-in-Xmir uses talks to the frontend that is the Unity8 OSK.

Changed in xorg-server (Ubuntu):
status: Triaged → Incomplete
Daniel van Vugt (vanvugt) wrote :

Hmm, I think that just about covers it actually.

Providing we're only talking about apps that work with input methods on Unity7 already, we're just missing a Unity8 frontend for those input methods (Brandon knows the APIs but I forget what they're called). It would not matter if the app is running inside Xmir, it should just work and talk to the Unity8 frontend that's providing an OSK (or other input method).

tags: added: bq-feedback

@kgunn72, this has been requested by the first users that received a fresh frieza

kevin gunn (kgunn72) wrote :

just confirming, this is definitely on our todo list as a high priority.

yarrt (yarrt) wrote :

Hi all, I bought a "cooler" BQ Aquaris FHD recently.

Is workaround available? e.g. install or bring up a OSK manually (possibly only in Desktop mode)?

As another idea for improvement (as this problems was known before "release" / sale):
I as a (Ubuntu Touch store) customer would appriciate notification mails pointing me to a list of known issues. As well as possible workarounds for known issues (on my device).

I wouldn't have expected Apps like Firefox or LibeOffice to work in touch mode if they were only visible in "Desktop Mode" or a clear indicator would be available "requires Keyboard".

Will Atwood (skyflyer) wrote :

New Aquarius M10 owner.. Love it but was also confused when no keyboard was available for Firefox, LibreOffice and gEdit.. An on screen keyboard we could slide up and down would be great.. Similar to terminal app or even this text box I'm typing into on this page.. When I touch the comment box the keyboard pops up.. Very cool...keep up the great work!

Alexander Lazarević (e11bits) wrote :

Major dissapointment while using my Aquarius M10

Stephen M. Webb (bregma) on 2016-05-03
summary: - Add on-screen-keyboard support for Xmir/Puritine apps
+ Add on-screen-keyboard support for Xmir/Libertine apps
Changed in libertine:
assignee: nobody → Brandon Schaefer (brandontschaefer)
Stephen M. Webb (bregma) on 2016-05-03
Changed in libertine:
status: New → Triaged
importance: Undecided → Medium
Changed in libertine:
status: Triaged → In Progress
milestone: none → 1.1
kevin gunn (kgunn72) on 2016-05-24
Changed in canonical-pocket-desktop:
status: New → In Progress
Changed in canonical-devices-system-image:
status: New → In Progress
Changed in libertine:
importance: Medium → High
Changed in canonical-pocket-desktop:
importance: Undecided → High
Changed in canonical-devices-system-image:
importance: Undecided → High
milestone: none → 12
assignee: nobody → Stephen M. Webb (bregma)
Dave H (dhandhelen-s) wrote :

Hi, have just received my BQ M10 HD tablet (white one), great to see Ubuntu Touch working similar to my MX4. As other users have said, the one thing that hits you when you fire up LibreOffice is the lack of the on screen keyboard. After using my daughters 10.1” HP pavilion X2 with Windows 10, I was surprised that no on screen keyboard was offered on Ubuntu Touch. The idea to add manual switch should be fine. Good to see that its planned for OTA-12, thanks for your support.

Fix committed into lp:libertine at revision 233, scheduled for release in libertine, milestone Unknown

Changed in libertine:
status: In Progress → Fix Committed

The committed branch is only part of the solution and not complete, so marking the Libertine task back to In Progress.

Changed in libertine:
status: Fix Committed → In Progress
Changed in libertine:
milestone: 1.1 → 1.2
Changed in libertine (Ubuntu):
status: New → Triaged
Changed in libertine (Ubuntu):
status: Triaged → In Progress
importance: Undecided → High
assignee: nobody → Brandon Schaefer (brandontschaefer)
Changed in canonical-devices-system-image:
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libertine - 1.2+16.10.20160615.1-0ubuntu1

---------------
libertine (1.2+16.10.20160615.1-0ubuntu1) yakkety; urgency=medium

  [ Brandon Schaefer ]
  * Add maliit packages for seeding in containers upon creation. (LP: #1543351)
  * Enable title bars in matchbox to work around input focus issue when using
    OSK in X apps. (LP: #1592549)

  [ Chris Townsend]
  * Add the Vivid Stable Overlay PPA to Vivid based chroots during creation.
    (LP: #1587890)
  * Check if ~/.cache/libertine/puritine/ exists and create it if it doesn't.
    (LP: #1585683)
  * Be more verbose when the LXC container won't start. (LP: #1591228)
  * Invalid Libertine Scope results after successfully installing or removing
    a package. (LP: #1592115)

  [ Larry Price ]
  * Add a method to set the default container. (LP: #1589674)
  * Show candidate package version when installed version unavailable.
    (LP: #1589683)
  * Install bash completion in modern install directory.
  * Show operation details for create container, update container, enable
    multiarch, install package, and remove package. (LP: #1583323)

 -- Christopher Townsend <email address hidden> Wed, 15 Jun 2016 18:24:53 +0000

Changed in libertine (Ubuntu):
status: In Progress → Fix Released
kevin gunn (kgunn72) on 2016-06-23
Changed in canonical-pocket-desktop:
status: In Progress → Fix Committed
Aiman (abufaisal-o) wrote :

Hi everybody,
The OSK work with Xapps. However I found that in Firefox the keyboard appears in user name fields but not in the password one.
It happened in gmail login and online banking site.

I have M10 FHD and use RC proposed channel.

I thougt to let you know.

Changed in xorg-server (Ubuntu):
status: Incomplete → Invalid
Changed in canonical-devices-system-image:
status: Fix Committed → Fix Released
Man usashi (manusashi-g) wrote :

same as @Aiman ,
"
the keyboard appears in user name fields but not in the password one.
It happened in gmail login and online banking site.
I have M10
" and OTA13.

Larry Price (larryprice) wrote :

abufaisal-o and manusashi-g: That is a known bug in the current version of GTK available for Vivid: https://bugs.launchpad.net/libertine/+bug/1597646

Changed in unity8 (Ubuntu):
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers