[regression] Launcher, top panel and keyboard un-responsive after using any Super-x shortcut

Bug #934058 reported by Bruno Girin on 2012-02-17
18
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Compiz Core
Critical
Daniel van Vugt
compiz (Ubuntu)
Critical
Unassigned

Bug Description

Last night's update to Unity 5.4 RC1 broke Super-x shotcuts in such a way that whenever I use one of those shortcuts, the launcher, top panel and keyboard become completely un-responsive.

Steps to reproduce:
1. Log in
2. Use a Unity shortcut (e.g. Super-a or Super-2)

Expected behaviour
The shortcut works and Unity keeps working fine.

Actual behaviour
After using the shortcut, the shortcut overlay on the launcher stay displayed, the launcher is unresponsive and so is the top panel. Any attempt to enter text into any application fails. On the other hand, CTRL-ALT-F1 to swap to a text terminal works.

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: unity 5.2.0+bzr1975ubuntu0+644.really1977
ProcVersionSignature: Ubuntu 3.2.0-16.25-generic 3.2.6
Uname: Linux 3.2.0-16-generic x86_64
ApportVersion: 1.91-0ubuntu1
Architecture: amd64
CompizPlugins: [core,bailer,detection,composite,opengl,compiztoolbox,decor,move,vpswitch,snap,imgpng,gnomecompat,mousepoll,place,resize,grid,regex,session,wall,animation,workarounds,expo,fade,ezoom,scale,unityshell]
CrashDB: unity
Date: Fri Feb 17 09:22:52 2012
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Beta amd64 (20110901)
ProcEnviron:
 LANGUAGE=en_GB:en
 PATH=(custom, no user)
 LANG=en_GB.UTF-8
 SHELL=/bin/bash
SourcePackage: unity
UpgradeStatus: Upgraded to precise on 2012-02-11 (5 days ago)

Related branches

Bruno Girin (brunogirin) wrote :
tags: added: 5.4-rc1
Omer Akram (om26er) on 2012-02-17
Changed in unity:
importance: Undecided → Critical
status: New → Confirmed
Omer Akram (om26er) wrote :

compiz (1:0.9.7.0~bzr2995-0ubuntu4) precise; urgency=low

  * debian/patches/fix_925293.patch:
    - rollback that patch as well, not ready for wide consumption
      (triggered side effects)

affects: unity → compiz (Ubuntu)
Changed in compiz (Ubuntu):
status: Confirmed → Fix Released
Daniel van Vugt (vanvugt) wrote :

A fix has been committed to core, but I'm going to mark it as In Progress until one of us can test the fix in precise with Unity 5.x.

Changed in compiz-core:
status: New → Fix Committed
importance: Undecided → Critical
assignee: nobody → Daniel van Vugt (vanvugt)
milestone: none → 0.9.7.0
status: Fix Committed → In Progress
Bruno Girin (brunogirin) wrote :

Installed updates this morning and so far it seems to be fixed. It probably needs a bit more testing which I will do over the course of today.

Daniel van Vugt (vanvugt) wrote :

The feature (LP: #925293) has been removed from the precise packages as per comment #2. We will make sure it is working with Unity before reintroducing it to the Ubuntu branches.

summary: - Launcher, top panel and keyboard un-responsive after using any Super-x
- shortcut
+ [regression] Launcher, top panel and keyboard un-responsive after using
+ any Super-x shortcut
Daniel van Vugt (vanvugt) wrote :

Fix committed until proven otherwise :)

Changed in compiz-core:
status: In Progress → Fix Committed
Bruno Girin (brunogirin) wrote :

Daniel, I haven't seen the bug come back for the last 2 days so I can confirm that it looks fixed. I will comment on this bug if I see it again.

Daniel van Vugt (vanvugt) wrote :

Bruno, testing the Ubuntu packages is not enough to verify the fix in lp:compiz-core. You won't actually be able to test the fix until we have a compiz version "bzr3006" or higher in precise.

Daniel van Vugt (vanvugt) wrote :

Finally got a usable test environment for lp:compiz-core + Unity. And found this bug is not fixed at all.

Changed in compiz-core:
status: Fix Committed → In Progress
Daniel van Vugt (vanvugt) wrote :

Found the problem. Unity is unique in that it intercepts handleEvent() and blocks even core from receiving KeyPress events that it wants. So core never gets the KeyPress event and never has the opportunity to XAllowEvents.

This is bad design on Unity's part. But at the same time it's a bad thing that compiz allows plugins to shoot themselves in the feet.

Now trying to find a fix for compiz-core instead of the obvious fix to Unity itself...

On Tue, 21 Feb 2012, Daniel van Vugt wrote:

> Found the problem. Unity is unique in that it intercepts handleEvent()
> and blocks even core from receiving KeyPress events that it wants. So
> core never gets the KeyPress event and never has the opportunity to
> XAllowEvents.
>
> This is bad design on Unity's part. But at the same time it's a bad
> thing that compiz allows plugins to shoot themselves in the feet.
>
> Now trying to find a fix for compiz-core instead of the obvious fix to
> Unity itself...
>

The ability for plugins to "short circuit" wrapable function calls is
indeed by design.

In this case the XAllowEvents call should be moved to /before/
WRAPABLE_HND_FUNCTN . Eg, put it in PrivateScreen::processEvents.

> --
> You received this bug notification because you are a member of Compiz
> Maintainers, which is the registrant for Compiz Core.
> https://bugs.launchpad.net/bugs/934058
>
> Title:
> [regression] Launcher, top panel and keyboard un-responsive after
> using any Super-x shortcut
>
> Status in Compiz Core:
> In Progress
> Status in “compiz” package in Ubuntu:
> Fix Released
>
> Bug description:
> Last night's update to Unity 5.4 RC1 broke Super-x shotcuts in such a
> way that whenever I use one of those shortcuts, the launcher, top
> panel and keyboard become completely un-responsive.
>
> Steps to reproduce:
> 1. Log in
> 2. Use a Unity shortcut (e.g. Super-a or Super-2)
>
> Expected behaviour
> The shortcut works and Unity keeps working fine.
>
> Actual behaviour
> After using the shortcut, the shortcut overlay on the launcher stay displayed, the launcher is unresponsive and so is the top panel. Any attempt to enter text into any application fails. On the other hand, CTRL-ALT-F1 to swap to a text terminal works.
>
> ProblemType: Bug
> DistroRelease: Ubuntu 12.04
> Package: unity 5.2.0+bzr1975ubuntu0+644.really1977
> ProcVersionSignature: Ubuntu 3.2.0-16.25-generic 3.2.6
> Uname: Linux 3.2.0-16-generic x86_64
> ApportVersion: 1.91-0ubuntu1
> Architecture: amd64
> CompizPlugins: [core,bailer,detection,composite,opengl,compiztoolbox,decor,move,vpswitch,snap,imgpng,gnomecompat,mousepoll,place,resize,grid,regex,session,wall,animation,workarounds,expo,fade,ezoom,scale,unityshell]
> CrashDB: unity
> Date: Fri Feb 17 09:22:52 2012
> InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Beta amd64 (20110901)
> ProcEnviron:
> LANGUAGE=en_GB:en
> PATH=(custom, no user)
> LANG=en_GB.UTF-8
> SHELL=/bin/bash
> SourcePackage: unity
> UpgradeStatus: Upgraded to precise on 2012-02-11 (5 days ago)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/compiz-core/+bug/934058/+subscriptions
>

Daniel van Vugt (vanvugt) wrote :

I tried moving it "before", but that caused more subtle key consumption/replay bugs.

Had to go for a slightly (not much) more complicated fix to support all scenarios.

Daniel van Vugt (vanvugt) wrote :

Merged into lp:compiz-core at revision 3016

Changed in compiz-core:
status: In Progress → Fix Committed
Changed in compiz-core:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers