Ticket #12082 (closed enhancement: fixed)

Opened 20 months ago

Last modified 15 months ago

Maliit on-screen keyboard

Reported by: dsd Owned by: erikos
Priority: normal Milestone: 13.1.0
Component: keyboards Version: Development build as of this date
Keywords: Cc: pbrobinson, garycmartin
Action Needed: no action Verified: no
Deployments affected: Blocked By:
Blocking:

Description

We're planning to include the maliit on-screen keyboard as part of the touch support in 13.1.0.

Fedora packages being reviewed at:

There are some pending integration issues: hide the keyboard when the laptop is in laptop-mode, don't show the keyboard on laptops without touch.

Simon also is planning to land the Sugar shell GTK3 port before addressing this.

olpc-session will also need to be modified to set GTK_IM_MODULE. This will override some features and bug workarounds that are already there; we need to study the impacts of that.

Change History

  Changed 19 months ago by dsd

Fedora package review complete.

  Changed 19 months ago by dsd

These packages are now in Fedora, not yet built officially on ARM, but I've placed my own builds in public_rpms. They will be included in the next build.

(That's me done here for now - unless I'm explicitly asked for help, don't assume I'm working on the remaining integration items)

  Changed 19 months ago by pbrobinson

  • next_action changed from code to test in build

built in Fedora on ARM

now in os4

  Changed 19 months ago by erikos

  • next_action changed from test in build to package
  • version changed from not specified to Development build as of this date

In build 4 we do miss the immodules, missing packages are: maliit-framework-gtk2 and maliit-framework-gtk3

For the gtk2 immodules the cache has not been updated (for gtk3 it has been). A simple test will show this:

- install examples: maliit-framework-examples (this is not signed yet)

- set the env variable: export GTK_IM_MODULE=Maliit

- run: maliit-exampleapp-gtk3

---> clicking in an entry will reveal the keyboard automatically

- run: maliit-exampleapp-gtk2

---> clicking in an entry does NOT reveal the keyboard automatically, I can manually reveal it using the show button in the test app

- update the cache: gtk-query-immodules-2.0-32 > /etc/gtk-2.0/armv7hl-redhat-linux-gnu/gtk.immodules

run: maliit-exampleapp-gtk2

---> clicking in an entry does reveal the keyboard automatically

Background info:

The query script for GTK+ 3 is: http://developer.gnome.org/gtk3/3.0/gtk-query-immodules-3.0.html

The one for GTK+ 2 is: http://developer.gnome.org/gtk/2.24/gtk-query-immodules-2.0.html

The cache in Fedora for GTK+ 3 is placed in "/usr/lib/gtk-3.0/3.0.0/immodules.cache" this works fine for the rpms.

For the cache in Fedora for GTK+ 2 "/usr/lib/gtk-2.0/2.10.0/immodules/gtk.immodules" should work, but doesn't, "/etc/gtk-2.0/armv7hl-redhat-linux-gnu/gtk.immodules" does. This path is as well listed at [1] to be the correct one.

The Gtkmodules_packaging_guideline [2][3] gives the following instructions for updating the cache.

[1] https://fedoraproject.org/wiki/I18N/InputMethods#GTK_IM_modules [2] http://fedoraproject.org/wiki/Packaging:ScriptletSnippets#GTK.2B_modules [3] http://fedoraproject.org/wiki/Archive:Gtkmodules_packaging_guideline_%28draft%29

  Changed 19 months ago by erikos

  • cc garycmartin added

I think we miss as well the styling bits from Gary.

And as stated above we are missing some rpms for the immodules, they are not in Daniels repo http://dev.laptop.org/~dsd/public_rpms/f18/. Did we use that for os4 but will use http://arm.koji.fedoraproject.org/koji/buildinfo?buildID=95206 for os5?

  Changed 19 months ago by dsd

Added the missing packages for the next build, I'll leave the cache fixing up to Peter.

  Changed 19 months ago by erikos

I confirm that screen rotation works with the OSK in os4, those bits have landed fine in the rpm.

  Changed 19 months ago by dsd

Upstream discussion on evdev permissions: http://www.spinics.net/lists/linux-input/msg22771.html

Maliit patch for only showing the keyboard when in tablet mode: https://bugs.maliit.org/show_bug.cgi?id=193 (pending review)

follow-up: ↓ 10   Changed 19 months ago by pbrobinson

  • next_action changed from package to add to build

OK from the gtk2 side of things we've sorted the problem. It's fixed in maliit-framework-0.92.5-2.fc* which is now building and we'll have it in the next build.

Outstanding now are: - Gary's patch against 0.92.5 for layouts - support for evdev to detect the ebook mode

in reply to: ↑ 9   Changed 19 months ago by erikos

Replying to pbrobinson:

OK from the gtk2 side of things we've sorted the problem. It's fixed in maliit-framework-0.92.5-2.fc* which is now building and we'll have it in the next build.

Fixed in os5.

Outstanding now are: - Gary's patch against 0.92.5 for layouts

Gary's patch was included as well.

- support for evdev to detect the ebook mode

Yes, is in the trusted hands of Daniel.

  Changed 19 months ago by dsd

maliit-framework-0.92.5.1 includes the evdev thing, and olpc-utils-3.0.4 activates the OSK and sets appropriate permissions on the evdev devices.

  Changed 19 months ago by dsd

  • next_action changed from add to build to test in build

Test in 13.1.0 build 6

follow-up: ↓ 14   Changed 18 months ago by erikos

  • next_action changed from test in build to code

Thanks Daniel for working on this.

The OSK will only be shown automatically when in ebook mode.

We have an edge case that is not triggered yet correctly. There is a Frame device that does reveal the OSK manually. We do use the glib API for that http://git.sugarlabs.org/sugar/mainline/commit/b7997ef33011283690c9a3d24d54fb7050316e5c. That should allow to reveal the OSK as well in laptop mode. Since the last fix that does only work in ebook mode.

in reply to: ↑ 13   Changed 18 months ago by erikos

Replying to erikos:

Thanks Daniel for working on this. The OSK will only be shown automatically when in ebook mode. We have an edge case that is not triggered yet correctly. There is a Frame device that does reveal the OSK manually. We do use the glib API for that http://git.sugarlabs.org/sugar/mainline/commit/b7997ef33011283690c9a3d24d54fb7050316e5c. That should allow to reveal the OSK as well in laptop mode. Since the last fix that does only work in ebook mode.

Filed as http://bugs.sugarlabs.org/ticket/4142

  Changed 18 months ago by dsd

  • next_action changed from code to test in build

We have adequate other tickets describing the current issues with maliit, so lets move towards closing this one, unless Sam wants to perform any specific QA tasks first...

  Changed 15 months ago by greenfeld

  • status changed from new to closed
  • next_action changed from test in build to no action
  • resolution set to fixed

There has been a maliit keyboard in-build for XO-4 and XO-1.75 for quite some time.

Note: See TracTickets for help on using tickets.