show-desktop (from org.gnome.desktop.wm.keybindings) has the wrong value on first login (Ctrl+Alt+D instead of Ctrl+Super+D)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Compiz |
Confirmed
|
Undecided
|
Unassigned | ||
ubuntu-settings (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
The packaging branch that builds compiz into the ~unity-team staging PPA is different to the packaging used for Ubuntu main.
Autopilot runs on machines that have compiz (and other packages from the above PPA) installed directly during the install process, as opposed to upgrading after the install process. We do this using a pre-seed config file as part of the machine provisioning.
When we do this, the config that controls keybindings seems to be very broken. We've observed that:
* By default, the compiz upstream key combination for show_desktop is Ctrl+Alt+d
* We apply a distro-patch to turn this into Ctrl+Super+d. This distro patch is present in the packaging branch that is used for the staging PPA as well as Ubuntu main.
* If you install compiz from main, and then upgrade to the staging PPA, everything seems to work perfectly.
* If you install from the staging PPA first, the following happens:
- The python-compizconfig module tells autopilot that the correct keybinding to use is Ctrl+Super+d.
- When autopilot presses Ctrl+Super+d, or when a user presses those keys on a "real" keyboard, nothing happens.
- When autopilot (or a real person) pressed Ctrl+Alt+d, compiz runs the "show desktop" action.
What's confusing is that, on the one hand, the compizconfig module reports the correct key combo when we ask for it, but on the other hand, compiz reacts to the wrong key combo.
This bug is causing a HUGE number of failures in our autopilot test suite. It seems to break several key combinations (another one is Ctrl+Super+Up to maximise a window).
If you need any further information to help fix this, please let me know. I can also arrange an SSH login to a system where the issue is.
Related branches
- Didier Roche-Tolomelli: Needs Fixing
- Sam Spilsbury (community): Approve
- Ubuntu branches: Pending requested
-
Diff: 12 lines (+1/-1)1 file modifieddebian/ubuntu-settings.gsettings-override (+1/-1)
Changed in compiz: | |
assignee: | nobody → Daniel van Vugt (vanvugt) |
status: | Confirmed → In Progress |
Changed in ubuntu-settings (Ubuntu): | |
assignee: | nobody → Daniel van Vugt (vanvugt) |
status: | New → In Progress |
Changed in ubuntu-settings (Ubuntu): | |
status: | In Progress → Confirmed |
assignee: | Daniel van Vugt (vanvugt) → nobody |
So, we had a look at UDS about the issue, what we found is:
- no migration code is involved into this at all, neither gconf -> gsettings, neither special compiz setting migration script
- the guilty process is compiz, running metacity doesn't set this faulty key.
What happens is (in ideal case): gt;< Super> d'. desktop. wm.key for "show-desktop" (no value set by default).
- compiz starts and look at its own keys: it's taking org.compiz.core, show-desktop-key of the current profile path set to '<Control&
- On first boot, it's synchronizing this key to org.gnome.
This is working on a normal desktop (quantal only), on a new user and guest session reliably
Thomi is getting ro confirm that it's working with the quantal compiz version on the QA machine
It's working reliably using the staging ppa on the QA machine starting a guest session
It *doesn't* work at all using the staging ppa on the QA machine, creating a new user and log into it.