Possible have wrong values in Metacity gconf/gsettings keys

Bug #955876 reported by Attila Hammer
18
This bug affects 4 people
Affects Status Importance Assigned to Milestone
metacity (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Dear Developers,

I using Ubuntu Precise with GNOME3 fallback session, my default window manager is metacity.
Not often, but some time my Precise system forgot usual keybindings preferences.
This situation usual GNOME Panel is crashed with following error, with already reported:
https://bugs.launchpad.net/bugs/851532

After this crash happening, impossible using general keybindings (ALT+F1, ALT+F2, ALT+TAB, ALT+F4, etc).

I see an interesting error message when I try resetting this general keybindings in GNOME Control Center Keyboard preference tool in the keybindings page. I run simple gnome-control-center keyboard command, and see following error messages:
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/move_to_workspace_left
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/move_to_workspace_right
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/move_to_workspace_up
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/move_to_workspace_down
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/switch_windows
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/switch_group
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/switch_panels
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/cycle_windows
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/cycle_group
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/cycle_panels
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/show_desktop
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/switch_to_workspace_left
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/switch_to_workspace_right
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/switch_to_workspace_up
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/switch_to_workspace_down
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/panel_run_dialog
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/global_keybindings/panel_main_menu
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/activate_window_menu
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/toggle_fullscreen
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/toggle_maximized
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/maximize
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/unmaximize
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/toggle_shaded
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/close
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/minimize
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/begin_move
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/begin_resize
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/toggle_on_all_workspaces
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/raise_or_lower
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/raise
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/lower
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/maximize_vertically
GConf Error: Type mismatch: Expected `string' got `list' for key /apps/metacity/window_keybindings/maximize_horizontally

Before GNOME Panel not crash my system, not existed the .gconf/apps/metacity folder.

Some time when I delete entire this folder, next restart the directory again creating, and the problem begin again.
This situation need entire remove the .gconf folder and the .config/dconf/user file.

In the /usr/share/GConf/gsettings/wm-schemas.convert file have following Metacity Keybindings related conversions:
# From org.gnome.desktop.wm.keybindings
[org.gnome.desktop.wm.keybindings]
switch-to-workspace-1 = /apps/metacity/global_keybindings/switch-to-workspace-1
switch-to-workspace-2 = /apps/metacity/global_keybindings/switch-to-workspace-2
switch-to-workspace-3 = /apps/metacity/global_keybindings/switch-to-workspace-3
switch-to-workspace-4 = /apps/metacity/global_keybindings/switch-to-workspace-4
switch-to-workspace-5 = /apps/metacity/global_keybindings/switch-to-workspace-5
switch-to-workspace-6 = /apps/metacity/global_keybindings/switch-to-workspace-6
switch-to-workspace-7 = /apps/metacity/global_keybindings/switch-to-workspace-7
switch-to-workspace-8 = /apps/metacity/global_keybindings/switch-to-workspace-8
switch-to-workspace-9 = /apps/metacity/global_keybindings/switch-to-workspace-9
switch-to-workspace-10 = /apps/metacity/global_keybindings/switch-to-workspace-10
switch-to-workspace-11 = /apps/metacity/global_keybindings/switch-to-workspace-11
switch-to-workspace-12 = /apps/metacity/global_keybindings/switch-to-workspace-12
switch-to-workspace-left = /apps/metacity/global_keybindings/switch_to_workspace_left
switch-to-workspace-right = /apps/metacity/global_keybindings/switch_to_workspace_right
switch-to-workspace-up = /apps/metacity/global_keybindings/switch_to_workspace_up
switch-to-workspace-down = /apps/metacity/global_keybindings/switch_to_workspace_down
switch-group = /apps/metacity/global_keybindings/switch_group
switch-group-backward = /apps/metacity/global_keybindings/switch_group_backward
switch-windows = /apps/metacity/global_keybindings/switch_windows
switch-windows-backward = /apps/metacity/global_keybindings/switch_windows_backward
switch-panels = /apps/metacity/global_keybindings/switch_panels
switch-panels-backward = /apps/metacity/global_keybindings/switch_panels_backward
cycle-group = /apps/metacity/global_keybindings/cycle_group
cycle-group-backward = /apps/metacity/global_keybindings/cycle_group_backward
cycle-windows = /apps/metacity/global_keybindings/cycle_windows
cycle-windows-backward = /apps/metacity/global_keybindings/cycle_windows_backward
cycle-panels = /apps/metacity/global_keybindings/cycle_panels
cycle-panels-backward = /apps/metacity/global_keybindings/cycle_panels_backward
show-desktop = /apps/metacity/global_keybindings/show_desktop
panel-main-menu = /apps/metacity/global_keybindings/panel_main_menu
panel-run-dialog = /apps/metacity/global_keybindings/panel_run_dialog
set-spew-mark = /apps/metacity/window_keybindings/set_spew_mark
activate-window-menu = /apps/metacity/window_keybindings/activate_window_menu
toggle-fullscreen = /apps/metacity/window_keybindings/toggle_fullscreen
toggle-maximized = /apps/metacity/window_keybindings/toggle_maximized
toggle-above = /apps/metacity/window_keybindings/toggle_above
maximize = /apps/metacity/window_keybindings/maximize
unmaximize = /apps/metacity/window_keybindings/unmaximize
toggle-shaded = /apps/metacity/window_keybindings/toggle_shaded
minimize = /apps/metacity/window_keybindings/minimize
close = /apps/metacity/window_keybindings/close
begin-move = /apps/metacity/window_keybindings/begin_move
begin-resize = /apps/metacity/window_keybindings/begin_resize
toggle-on-all-workspaces = /apps/metacity/window_keybindings/toggle_on_all_workspaces
move-to-workspace-1 = /apps/metacity/window_keybindings/move-to-workspace-1
move-to-workspace-2 = /apps/metacity/window_keybindings/move-to-workspace-2
move-to-workspace-3 = /apps/metacity/window_keybindings/move-to-workspace-3
move-to-workspace-4 = /apps/metacity/window_keybindings/move-to-workspace-4
move-to-workspace-5 = /apps/metacity/window_keybindings/move-to-workspace-5
move-to-workspace-6 = /apps/metacity/window_keybindings/move-to-workspace-6
move-to-workspace-7 = /apps/metacity/window_keybindings/move-to-workspace-7
move-to-workspace-8 = /apps/metacity/window_keybindings/move-to-workspace-8
move-to-workspace-9 = /apps/metacity/window_keybindings/move-to-workspace-9
move-to-workspace-10 = /apps/metacity/window_keybindings/move-to-workspace-10
move-to-workspace-11 = /apps/metacity/window_keybindings/move-to-workspace-11
move-to-workspace-12 = /apps/metacity/window_keybindings/move-to-workspace-12
move-to-workspace-left = /apps/metacity/window_keybindings/move_to_workspace_left
move-to-workspace-right = /apps/metacity/window_keybindings/move_to_workspace_right
move-to-workspace-up = /apps/metacity/window_keybindings/move_to_workspace_up
move-to-workspace-down = /apps/metacity/window_keybindings/move_to_workspace_down
raise-or-lower = /apps/metacity/window_keybindings/raise_or_lower
raise = /apps/metacity/window_keybindings/raise
lower = /apps/metacity/window_keybindings/lower
maximize-vertically = /apps/metacity/window_keybindings/maximize_vertically
maximize-horizontally = /apps/metacity/window_keybindings/maximize_horizontally
move-to-corner-nw = /apps/metacity/window_keybindings/move_to_corner_nw
move-to-corner-ne = /apps/metacity/window_keybindings/move_to_corner_ne
move-to-corner-sw = /apps/metacity/window_keybindings/move_to_corner_sw
move-to-corner-se = /apps/metacity/window_keybindings/move_to_corner_se
move-to-side-n = /apps/metacity/window_keybindings/move_to_side_n
move-to-side-s = /apps/metacity/window_keybindings/move_to_side_s
move-to-side-e = /apps/metacity/window_keybindings/move_to_side_e
move-to-side-w = /apps/metacity/window_keybindings/move_to_side_w
move-to-center = /apps/metacity/window_keybindings/move_to_center

I attaching the buggy created metacity folder with containing the converted .gconf style keybindings.
Showing any errors the files?

Possible gsettings-data-convert service doing a mistake with Metacity related keybinding preferences?

If I doed an invalid bugreport with Metacity related, very sorry, but I haven't got any ydea what other component producing this bug.

Attila

-- Ubuntu-accessibility mailing list <email address hidden> https://lists.ubuntu.com/mailman/listinfo/ubuntu-accessibility

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: metacity 1:2.34.1-1ubuntu7
ProcVersionSignature: Ubuntu 3.2.0-18.29-generic-pae 3.2.9
Uname: Linux 3.2.0-18-generic-pae i686
ApportVersion: 1.94.1-0ubuntu2
Architecture: i386
Date: Thu Mar 15 11:33:32 2012
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha i386 (20120308)
SourcePackage: metacity
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Attila Hammer (hammera) wrote :
Revision history for this message
Attila Hammer (hammera) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in metacity (Ubuntu):
status: New → Confirmed
Revision history for this message
Attila Hammer (hammera) wrote : Re: [Bug 955876] Re: Possible have wrong values in Metacity gconf/gsettings keys

Hy,

I think this problem is affecting a shared component with using all
desktop environments, and possible this problem not depending with
Metacity window manager.
For example now in Ubuntu Accessibility List an user wrote following:
"Hi all,
I did a fresh install of Ubuntu Precise and got Orca 3.4.1 running in
Unity 2D.
When Alt_Tab for switching windows, Control_Alt_right-arrow to switch to
the next workspace and Control_Super_D for minimizing all windows won't
work deleting the .gconf/apps/metacity folder solves the problem after
logging out and logging in.
Fortunately Control_Alt_T to open a terminal, Alt_F1 to the launcher
still doing fine when this problem occurs.
The next time I starts up the machine I have the same problem with the
Alt_Tab, etc. Do I miss something else to do for this problem to solve?
Milton

Possible some time gsettings-data-convert service generating wrong
settings the conversion?
More users experienced similar issues under Unity 2d, GNOME Shell, and
GNOME3 fallback session, and usual the .gconf/apps/metacity folder
delete resolve temporary this problem.

If this bad settings conversion happening, why have type mismatch
differences with following keys?
/apps/metacity/window_keybindings/move_to_workspace_left,
/apps/metacity/window_keybindings/move_to_workspace_right,
/apps/metacity/window_keybindings/move_to_workspace_up,
/apps/metacity/window_keybindings/move_to_workspace_down,
/apps/metacity/global_keybindings/switch_windows,
/apps/metacity/global_keybindings/switch_group,
/apps/metacity/global_keybindings/switch_panels,
/apps/metacity/global_keybindings/cycle_windows,
/apps/metacity/global_keybindings/cycle_group,
/apps/metacity/global_keybindings/cycle_panels,
/apps/metacity/global_keybindings/show_desktop,
/apps/metacity/global_keybindings/switch_to_workspace_left,
/apps/metacity/global_keybindings/switch_to_workspace_right,
/apps/metacity/global_keybindings/switch_to_workspace_up,
/apps/metacity/global_keybindings/switch_to_workspace_down,
/apps/metacity/global_keybindings/panel_run_dialog,
/apps/metacity/global_keybindings/panel_main_menu,
/apps/metacity/window_keybindings/activate_window_menu,
/apps/metacity/window_keybindings/toggle_fullscreen,
/apps/metacity/window_keybindings/toggle_maximized,
/apps/metacity/window_keybindings/maximize,
/apps/metacity/window_keybindings/unmaximize,
/apps/metacity/window_keybindings/toggle_shaded,
/apps/metacity/window_keybindings/close,
/apps/metacity/window_keybindings/minimize,
/apps/metacity/window_keybindings/begin_move,
/apps/metacity/window_keybindings/begin_resize,
/apps/metacity/window_keybindings/toggle_on_all_workspaces,
/apps/metacity/window_keybindings/raise_or_lower,
/apps/metacity/window_keybindings/raise,
/apps/metacity/window_keybindings/lower,
/apps/metacity/window_keybindings/maximize_vertically,
/apps/metacity/window_keybindings/maximize_horizontally.

Attila

Revision history for this message
Attila Hammer (hammera) wrote :

I reported this issue in Bugzilla with following report temporary the
dconf component:
https://bugzilla.gnome.org/show_bug.cgi?id=676616

Attila

Revision history for this message
Attila Hammer (hammera) wrote :

Ryan Lortie wrote following comment my upstream report:
"hi Attila,

This is not a bug in dconf, but rather in metacity. The bug no longer exists
because metacity switched to using GSettings a while ago (which is quite a lot
more strict when it comes to checking types vs. the schemas).

Ubuntu has been intentionally using an older version of metacity for some time
specifically because they needed the GConf support for compatibility with
Compiz (which has not yet made the change to GSettings, but will soon).

Long story short: this bug is already fixed in GNOME and will soon be fixed in
Ubuntu as well (ie: before 12.10 release)."
My question: possible fix this error anyway in Ubuntu 12.04 to not happening this type mismatch with Metacity keybindings some time?

Attila

Revision history for this message
Attila Hammer (hammera) wrote :

Hy,

This bug random time happening with Ubuntu 12.04.1 too, affected desktop
environments is GNOME3 fallback session, Unity 2d session. Both two
desktop environments I experienced this issue. If this bug happening,
impossible to use common keybindings (ALT+F4, ALT+TAB, etc) until I not
deleting entire .gconf/apps/metacity folder, not logout and login back.
Lot of users wrote this problem with Ubuntu Accessibility and Orca
mailing lists, some time happening this bug after a fresh installation.

If an user not known what folder need erasing when experiencing this
bug, he impossible to use he's system with keyboard. Visualy impaired
users only possible to use he's system with keyboard navigation.

Fortunately in Quantal already not existing this issue, I newer
experienced this issue, so only Precise affected.

I think the bug related with following Metacity changes with Precise,
but I am not full sure this:
   * debian/metacity-common.gconf-defaults:
     - change the shortcuts as per design request: (LP: #969235)
       Ctrl + Super + D Minimises all windows
       Ctrl + Super + Cursor up Maximises the current window
       Ctrl + Super + Cursor down Restores or minimises current window
This patch released in Metacity 1:2.34.1-1ubuntu10 version.

Another possibility:
   * debian/patches/101_override_gconf_settings.patch:
     - gives a way to override gconf settings by a keyfile. This is
       useful in case of late fallback (after the logging manager)
       (LP: #791205)
This patch released in Metacity 1:2.34.1-1ubuntu2 version.

If have possibility, please fix this bug in Metacity.
Temporary I change this bug status with high.

Attila

Changed in metacity (Ubuntu):
status: Confirmed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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