Opened 11 years ago

Closed 11 years ago

Last modified 8 years ago

#2022 closed defect (fixed)

keyboard control panel chokes on non-empty option group

Reported by: sascha_silbe Owned by: sascha_silbe
Priority: Urgent Milestone:
Component: Sugar Version: 0.88.x
Severity: Major Keywords: r+
Cc: unmadindu Distribution/OS:
Bug Status: New

Description

This is the trigger for #2021.

If the option group is non-empty (e.g. because it has been configured using the regular Xorg ways), the keyboard control panel will wrap it in another list and gconf throws an exception:

1275296170.989435 TRACE root: set_option_group(<cpsection.keyboard.model.KeyboardManager object at 0x8f7e94c>, ['terminate:ctrl_alt_bksp']) invoked
1275296170.990156 DEBUG root: options=[['terminate:ctrl_alt_bksp']]
1275296170.990818 ERROR root: Exception occured in set_option_group
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/sugar/logger.py", line 189, in _trace
    res = f(*args, **kwargs)
  File "/usr/share/sugar/extensions/cpsection/keyboard/model.py", line 154, in set_option_group
    self._gconf_client.set_list(_OPTIONS_KEY, gconf.VALUE_STRING, options)
TypeError: value should be a string
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/jarabe/controlpanel/gui.py", line 321, in __select_option_cb
    self.show_section_view(option)
  File "/usr/lib/python2.5/site-packages/jarabe/controlpanel/gui.py", line 218, in show_section_view
    self._options[option]['alerts'])
  File "/usr/share/sugar/extensions/cpsection/keyboard/view.py", line 179, in __init__
    self._setup_group_switch_option()
  File "/usr/share/sugar/extensions/cpsection/keyboard/view.py", line 270, in _setup_group_switch_option
    self._keyboard_manager.get_current_option_group()
  File "/usr/share/sugar/extensions/cpsection/keyboard/model.py", line 125, in get_current_option_group
    self.set_option_group(options)
  File "<string>", line 2, in set_option_group
  File "/usr/lib/python2.5/site-packages/sugar/logger.py", line 189, in _trace
    res = f(*args, **kwargs)
  File "/usr/share/sugar/extensions/cpsection/keyboard/model.py", line 154, in set_option_group
    self._gconf_client.set_list(_OPTIONS_KEY, gconf.VALUE_STRING, options)
TypeError: value should be a string

Change History (4)

comment:1 Changed 11 years ago by sascha_silbe

  • Keywords r? added
  • Owner changed from tomeu to sascha_silbe
  • Status changed from new to assigned

Patch #99 on Patchwork.

comment:2 Changed 11 years ago by sayamindu

  • Keywords r+ added; r? removed

Patch looks OK. Please commit.

comment:3 Changed 11 years ago by tomeu

  • Resolution set to fixed
  • Status changed from assigned to closed

comment:4 Changed 8 years ago by dnarvaez

  • Milestone 0.88.x deleted

Milestone 0.88.x deleted

Note: See TracTickets for help on using tickets.