Missing mouse buttons

Bug #916056 reported by David López
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Onboard
Fix Released
High
Unassigned
onboard (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

I use onboard 0.96.1-0ubuntu0.1 on ubuntu 11.10 completely updated in a tablet. Suddenly the mouse icons and preference icons have disappear, I attached a pair of screenshots in a zip file. Please note, the icons are missing but the buttons are still present, so if I press in the place where the icon must be onboard do what it's supposed to do (for example, the red button in the second screen opens the settings window). However it's very difficult to press in the right place for the mouse buttons.

I'm not sure if both things are related but I must comment that Onboard worked fine until I activated 'force to top' (from Bug #915250). I've tried to disable that option, change transparency, different theme, compact and full keyboards, unity, unity-2d, gnome-shell, gnome classic desktops... Same bug.I've tried to change some parameters in Ubuntu Tweak, but the icons are still missing. There are 12 .svg files in /usr/share/onboard/layouts/images and eog can open them.

I've uninstalled and reinstalled onboard 0.96.1-0ubuntu0.1 and the problem persists. I have a PC and onboard works fine on it, I can't reproduce the bug in the PC. I've compared /usr/share/onboard and ~/.onboard in the PC and in the tablet and they seem the same to me, so I'm not sure if it is a bug from onboard or from another package. I don't want to reinstall ubuntu, but onboard is very important in my tablet and without mouse icons it's hard to use. Any idea? Thanks.

Tags: a11y
Revision history for this message
David López (david-lopez-upct) wrote :
tags: added: a11y
Revision history for this message
marmuta (marmuta) wrote :

Thanks for the bug report, David. There seems to be a character encoding mismatch that only breaks Onboard in certain locales. I was already working on making sure those can't happen again, but unfortunaltely 0.96.1 is still affected.

Please be so kind, run onboard from a terminal and post the ouput. I suspect there will be a python backtrace that confirms this.
Also please post the ouput of 'locale'.

As a workaround, see if running onboard in english helps. This only changes the language of the user interface and won't affect your keyboard layout:
LANG=en_US.UTF-8 onboard

Revision history for this message
David López (david-lopez-upct) wrote :
Download full text (5.6 KiB)

Thanks for your quick answer.

That's the output from the terminal:

david@david-M11JB:~$ onboard
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyboardGTK.py", line 402, in draw
    item.draw_image(context)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 148, in draw_image
    pixbuf = self.get_image(rect.w, rect.h)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 338, in get_image
    filename = config.get_image_filename(self.image_filename)
  File "/usr/lib/python2.7/dist-packages/Onboard/Config.py", line 422, in get_image_filename
    system_filename_func = lambda x: \
  File "/usr/lib/python2.7/dist-packages/Onboard/ConfigUtils.py", line 251, in _get_user_sys_filename
    (description, filename))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 2: ordinal not in range(128)
-----------------------------------------

If I open onboard from terminal and navigate (blindly) to the preferences icon the output is:

david@david-M11JB:~$ onboard
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyboardGTK.py", line 402, in draw
    item.draw_image(context)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 148, in draw_image
    pixbuf = self.get_image(rect.w, rect.h)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 338, in get_image
    filename = config.get_image_filename(self.image_filename)
  File "/usr/lib/python2.7/dist-packages/Onboard/Config.py", line 422, in get_image_filename
    system_filename_func = lambda x: \
  File "/usr/lib/python2.7/dist-packages/Onboard/ConfigUtils.py", line 251, in _get_user_sys_filename
    (description, filename))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 2: ordinal not in range(128)
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyboardGTK.py", line 402, in draw
    item.draw_image(context)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 148, in draw_image
    pixbuf = self.get_image(rect.w, rect.h)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 338, in get_image
    filename = config.get_image_filename(self.image_filename)
  File "/usr/lib/python2.7/dist-packages/Onboard/Config.py", line 422, in get_image_filename
    system_filename_func = lambda x: \
  File "/usr/lib/python2.7/dist-packages/Onboard/ConfigUtils.py", line 251, in _get_user_sys_filename
    (description, filename))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 2: ordinal not in range(128)
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyboardGTK.py", line 402, in draw
    item.draw_image(context)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 148, in draw_image
    pixbuf = self.get_image(rect.w, rect.h)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 338, in get_image
    filename = config.get_image_filename(self.image_filename)
  File "/usr/lib/python2.7/dist-packages/Onboard/Config.py", line 422, in get_image_filename
    system_filename_func = lambda x: \
  File "/usr/lib/python2.7/d...

Read more...

Revision history for this message
marmuta (marmuta) wrote :

Thank you, this confirmed it. I'll see if I can get you another workaround.

Changed in onboard (Ubuntu):
status: New → Confirmed
Changed in onboard:
status: New → In Progress
importance: Undecided → High
Revision history for this message
David López (david-lopez-upct) wrote :

What a surprise, today my PC shows the same problem! Output from terminal in my PC:

david@david-casa:~$ onboard
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyboardGTK.py", line 402, in draw
    item.draw_image(context)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 148, in draw_image
    pixbuf = self.get_image(rect.w, rect.h)
  File "/usr/lib/python2.7/dist-packages/Onboard/KeyGtk.py", line 338, in get_image
    filename = config.get_image_filename(self.image_filename)
  File "/usr/lib/python2.7/dist-packages/Onboard/Config.py", line 422, in get_image_filename
    system_filename_func = lambda x: \
  File "/usr/lib/python2.7/dist-packages/Onboard/ConfigUtils.py", line 251, in _get_user_sys_filename
    (description, filename))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 2: ordinal not in range(128)

david@david-casa:~$ locale
LANG=es_ES.UTF-8
LANGUAGE=es_ES:en
LC_CTYPE=es_ES.UTF-8
LC_NUMERIC="es_ES.UTF-8"
LC_TIME="es_ES.UTF-8"
LC_COLLATE=es_ES.UTF-8
LC_MONETARY="es_ES.UTF-8"
LC_MESSAGES=es_ES.UTF-8
LC_PAPER="es_ES.UTF-8"
LC_NAME="es_ES.UTF-8"
LC_ADDRESS="es_ES.UTF-8"
LC_TELEPHONE="es_ES.UTF-8"
LC_MEASUREMENT="es_ES.UTF-8"
LC_IDENTIFICATION="es_ES.UTF-8"
LC_ALL=

My PC was installed from the official release from ubuntu.com and it never had installed Italian language. This discard any relation with the Italian language and the 'unofficial' release. Maybe some recent update of oneiric broke onboard. A couple of days ago in a regular update the system several language packages were updated to 11.10+20120103 version:

language-pack-en
language-pack-en-base
language-pack-gnome-en
language-pack-gnome-en-base
language-pack-es
language-pack-es-base
language-pack-gnome-es
language-pack-gnome-es-base

Do you think that those language updates broke onboard? I don't know how can I revert those updates, oif you tell me I can test it.

Wish this helps. Thanks for you efforts, marmuta.

Revision history for this message
marmuta (marmuta) wrote :

ok, so what appears to have happened is that language-pack-gnome-es-base has been updated recently, actually a couple of times starting at 2012-01-04.
https://launchpad.net/ubuntu/+source/language-pack-gnome-es-base/+publishinghistory
Some added translations for onboard in multiple languages replaced single quotes with double arrows, which most likeley triggered this bug. The blame is on onboard of course. We have to be prepared for anything utf-8 the translators give us.

This particular bug seems to affect only version 0.96.1. The current release 0.96.2(in Precise) had some messages upgraded to python 3 style formatting and doesn't appear vulnerable anymore. I'll do some more testing and then I think we should suggest another SRU for Oneiric.

Revision history for this message
marmuta (marmuta) wrote :

Some workarounds:

Get onboard from the snapshot PPA, which currently is almost an 0.96.2:
$ sudo add-apt-repository ppa:onboard/snapshots

or run with the english user interface (2nd try):
$ LANGUAGE=en onboard

or, disable the spanish translation for onboard permanently (at least until language-pack-gnome-es-base is updated again):
$ sudo mv /usr/share/locale-langpack/es/LC_MESSAGES/onboard.mo{,_}

Revision history for this message
Francesco Fumanti (frafu) wrote :

FYI: Onboard 0.96.2 for oneiric is available in the stable PPA:
https://launchpad.net/~onboard/+archive/stable

Revision history for this message
David López (david-lopez-upct) wrote :

Run with the English user interface $ LANGUAGE=en onboard: IT WORKS!

Disable the Spanish translation $ sudo mv /usr/share/locale-langpack/es/LC_MESSAGES/onboard.mo{,_}: IT WORKS!

Get onboard 0.96.2 from stable PPA: IT WORKS!

I posted a problem on Friday and you give me 3 working solutions on Sunday. Thank you guys, you're great!

marmuta (marmuta)
Changed in onboard:
status: In Progress → Fix Released
Changed in onboard:
status: Fix Released → Fix Committed
Changed in onboard:
status: Fix Committed → Fix Released
marmuta (marmuta)
Changed in onboard (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.