Unity hijacks super combos without informing Compiz

Bug #774514 reported by rwhitehurst
94
This bug affects 21 people
Affects Status Importance Assigned to Milestone
unity (Ubuntu)
Won't Fix
Medium
Unassigned

Bug Description

Unity has a large number of non-configurable keyboard shortcuts, and a small number of user-configurable keyboard shortcuts. Standard behavior in Compiz allows for configuration of keyboard shortcuts. When specifying a new keyboard shortcut for an action, Compiz informs the user if the key combination is already in use. However, for the hardcoded keyboard shortcuts (e.g. Super-t to open Trash), Compiz is unaware they are previously bound. Thus Compiz freely allows the user to change a keyboard shortcut to one already hardcoded to a Unity function, which is confusing for the user.

In general, Unity should not hardcode any keyboard shortcuts anyway, instead opting to provide defaults configurable via CCSM, but lacking this, Unity needs to at least reserve the keyboard shortcuts via standard means in Compiz.

Timothy Kross (timkross)
Changed in ayatana-design:
status: New → Confirmed
Changed in unity:
status: New → Confirmed
Revision history for this message
TomasHnyk (sup) wrote :

I second this, a typical usecase (at least the one that got me across this bug) is remapping Ctrl-Alt-Numpad # shortcuts on a laptop (where there is no functioning numpad). In my case, I wanted to to remap it to the grid
7 8 9
U I O
J K L
M
But alas, ctrl+alt+l is taken and cannot be retaken.

Revision history for this message
rwhitehurst (ubuntu-launchpad-ghyspran) wrote :

From my understanding, this is a separate issue from bug #704231 in that bug #704231 is concerning Unity stealing Super combos from applications outside Compiz, while this issue is that Unity claims certain Super combos without making them available to Compiz. Mark Shuttleworth's first comment on the other issue was that Super should be reserved for window manager functions, which means it should be available to Compiz for reassignment.

Unity reserves certain key combos through standard Compiz means (e.g., Key to show launcher, Key to execute a command) but doesn't reserve others (e.g., Super-t to open the trash), instead opting to override the key. This means if a user tries to register Super-t in another Compiz plugin, Compiz doesn't complain like it normally does. This is bad, and separate from the issue raised in bug #704231.

Changed in unity (Ubuntu):
status: New → Confirmed
Changed in unity (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Triaged
Changed in unity:
status: Confirmed → Triaged
Andrea Azzarone (azzar1)
Changed in unity:
assignee: nobody → Andrea Azzarone (andyrock)
Changed in unity (Ubuntu):
assignee: nobody → Andrea Azzarone (andyrock)
Changed in unity:
milestone: none → 5.2.0
Andrea Azzarone (azzar1)
Changed in unity:
status: Triaged → In Progress
Changed in unity (Ubuntu):
status: Triaged → In Progress
John Lea (johnlea)
no longer affects: ayatana-design
Omer Akram (om26er)
Changed in unity:
importance: Undecided → Medium
Changed in unity:
milestone: 5.2.0 → 5.4.0
Changed in unity:
milestone: 5.4.0 → 5.6.0
Changed in unity:
milestone: 5.6.0 → 5.8.0
Changed in unity:
milestone: 5.8.0 → 5.10.0
Revision history for this message
Omer Akram (om26er) wrote :

@Andy still working on this?

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

This bug is due to Unity completely bypassing Compiz to intercept Super+otherkeys events. It's a design problem with Unity, which I didn't think anyone would be willing to fix very soon. Because it means rewriting all the Super+key handling in unityshell.cpp.

See: UnityScreen::InitHints in unityshell.cpp and ShortcutController.cpp.

Andrea Azzarone (azzar1)
Changed in unity:
status: In Progress → Triaged
Changed in unity (Ubuntu):
status: In Progress → Confirmed
Changed in unity:
milestone: 5.10.0 → backlog
Tim Penhey (thumper)
Changed in unity:
milestone: backlog → none
Tim Penhey (thumper)
tags: added: exbacklog
Revision history for this message
Alex Baggott (alex-baggott) wrote :

As part of the big bug review for 16.04 LTS I have tested this on 15.10 and the bug is still there.

tags: added: desktop-bugscrub-triaged
Revision history for this message
Rodrigo Lledó (rodhos-hp) wrote :

As part of the big bug review for 16.04 LTS, I have tested this on 15.10 and the bug is still there.

tags: added: shortcut
Revision history for this message
Andrea Azzarone (azzar1) wrote :

Ubuntu 17.10 will ship with Gnome Shell by default. Given this, we do not plan to work on this bug anymore. Closing.

no longer affects: unity
Changed in unity (Ubuntu):
status: Confirmed → Won't Fix
assignee: Andrea Azzarone (azzar1) → nobody
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.