"Show desktop" plug-in actually works with Unity when ensured that it is loaded after unityshell

Bug #1067534 reported by MC Return
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Compiz
Fix Released
Low
MC Return
0.9.8
Won't Fix
Low
MC Return
0.9.9
Fix Released
Low
MC Return
Unity
Fix Released
Low
MC Return
6.0
Won't Fix
Low
MC Return
compiz (Ubuntu)
Fix Released
Low
MC Return
Nominated for Quantal by Alan Pope 🍺🐧🐱 🦄
unity (Ubuntu)
Confirmed
Undecided
Unassigned
Nominated for Quantal by Alan Pope 🍺🐧🐱 🦄

Bug Description

Problem:
The default behaviour (before recent fixes) was loading this plug-in before unityshell, which prevented it from working correctly.
Currently it is prohibited to start this plug-in together with Unity (either showdesktop or unityshell).

Solution:
We have to make sure that showdesktop is loaded after unityshell to allow the user to use it's functionality, namely sliding windows out of view to show the desktop and sliding them back in to restore the previous state.
This effect is visually very pleasing and looks much better than Unity's standard fade out/in, so the fix should involve the possibility to enable this plug-in in CCSM together with Unity and to ensure that the plug-in is loaded after unityshell.

The "Fade to Desktop" plug-in provides essentially the same functionality like already provided by unityshell (fade to desktop), the only difference is that you can adjust the fade time with it.
Unfortunately this plug-in still makes some troubles, like a popping fade-out, so it will be best to not change current behaviour and prohibit the user using it together with Unity.

[Test Case]

Before the fix:

Testcase 1:
1. Open CCSM
2. Enable "Show Desktop"
Outcome: CCSM will tell you that the feature showdesktop is already provided by the plugin unityshell and prevents running them both
3. Cancel to enable showdesktop, because it would stop unityshell

Testcase 2:
1. Open CCSM
2. Enable "Fade to Desktop"
CCSM will tell you that the feature showdesktop is already provided by the plugin unityshell and prevents running them both
3. Cancel to enable fadedesktop, because it would stop unityshell

Testcase 3 (without Unity):
1. Open CCSM
2. Disable unityshell
3. Enable "Show Desktop"
4. Enable "Fade to Desktop"
CCSM will tell you that the feature showdesktop is already provided by the plugin showdesktop and prevents running them both
5. Choose between showdesktop or fadedesktop

After the fix:

Testcase 1:
1. Open CCSM
2. Enable "Show Desktop"
CCSM will accept your decision
3. Test showdesktop: (Press Super+D) You will see the windows sliding out of screen if you want to show the desktop and sliding back in if you restore previous state (Press Super+D again)

Testcase 2:
1. Open CCSM
2. Enable "Fade to Desktop"
CCSM will tell you that the feature fadetodesktop is already provided by the plugin unityshell and prevents running them both
3. Cancel to enable fadedesktop, because it would stop unityshell

Testcase 3 (without Unity):
Will be exactly the same like before the fix, see above (the desired behavior won't change)

[Regression Potential]

There is no regression potential.
The checks preventing the combined use of unityshell and showdesktop are new, so this just restores the same behavior like before the checks were introduced, with the only difference being that showdesktop now works for the first time together with Unity-3d, because it is ensured that the plug-in starts after unityshell.
fadetodesktop and showdesktop are still not allowed to run together (case without unityshell), because they both provide the feature showdesktop.

Ideally the fix for Compiz should go in first, then the one fixing Unity, but it will not produce any bugs if done the other way 'round either...

Related branches

MC Return (mc-return)
Changed in compiz:
assignee: nobody → MC Return (mc-return)
Changed in unity:
assignee: nobody → MC Return (mc-return)
Revision history for this message
MC Return (mc-return) wrote :

Thanks go to megatron, who actually found a manual workaround to get showdesktop working together with Unity and made me aware of this possibility:
 See: https://bugs.launchpad.net/compiz/+bug/1063171/comments/8

MC Return (mc-return)
description: updated
MC Return (mc-return)
description: updated
MC Return (mc-return)
description: updated
no longer affects: compiz
Changed in unity:
milestone: none → 7.0.0
status: New → In Progress
Changed in compiz:
status: New → In Progress
assignee: nobody → MC Return (mc-return)
milestone: none → 0.9.8.8
Changed in unity:
importance: Undecided → Low
Changed in unity:
status: In Progress → Fix Committed
Changed in compiz:
status: In Progress → Fix Committed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Fix committed to lp:compiz/0.9.8 at revision 3409. Though I don't think it should have been targeted or approved for 0.9.8 personally.

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

Fix committed to lp:unity/6.0 at revision 2788

Changed in compiz (Ubuntu):
status: New → Confirmed
Changed in unity (Ubuntu):
status: New → Confirmed
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Fixes were committed to unity 6.0 and compiz 0.9.8 stable series, but now reverted (see bug #1076884) so this won't be landing into Ubuntu 12.10 as an SRU.

Changed in compiz (Ubuntu):
status: Confirmed → Fix Committed
importance: Undecided → Low
assignee: nobody → MC Return (mc-return)
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (5.6 KiB)

This bug was fixed in the package compiz - 1:0.9.9~daily12.12.05-0ubuntu1

---------------
compiz (1:0.9.9~daily12.12.05-0ubuntu1) raring; urgency=low

  [ Michael Terry ]
  * debian/control:
    - Update Vcs-Bzr
  * debian/patches/100_expo_layout.patch:
    - Fix to apply
  * Automatic snapshot from revision 3451 (bootstrap)
    - Fix crash from writing to static memory (LP: #1065814)
    - Fix maximized windows changing workspaces (LP: #1071791)
    - Respect Zoom Factor setting (LP: #1066187)
    - Respect Show Window Title setting (LP: #1009999)
    - Restore text background transparency (LP: #1042132)
    - Restore screenshot selection rectangle transparency (LP: #1047788)
    - Restore top and bottom cube transparency (LP: #1048272)
    - Fix scaleaddon window highlighting being solid (LP #1068503)
    - Make resize hint overlay disappear when changing edges (LP: #839602)
    - Preserve grid IDs during drag (LP: #1067812, LP: #1048855)
    - Save current display before doing snap preview (LP: #1068173)
    - Ignore inactive keybindings (LP: #1053280)
    - Handle <primary> in keyboard shortcuts (LP: #936840)
    - Make sure showdesktop plugin is loaded after unityshell (LP: #1067534)
    - Fix grid build failure (LP: #1067577)
    - Fix Jenkins test failures (LP: #1058577)
    - Don't allow duplicate static symbols when linking (LP: #1067964)
    - Make external templates C++0x compatible (LP: #1067598)
    - Make sure to initialize class members (LP: #1033877)
    - Don't duplicate templates in plugins (LP: #1066793, LP: #1066803,
      LP: #1066804, LP: #1066805, LP: #1066799, LP: #1066796,
      LP: #1066795, LP: #1066798, LP: #1067218, LP: #1067219)
    - Don't needlessly set gsettings keys (LP: #1064791)
    - Remove unused code (LP: #1037142, LP: #1067234)
    - Fix syntax highlighting for trunk xml files (LP: #1066823)
    - Fix documentation for building with python2 (LP: #1070211)

  [ Stephen M. Webb ]
  * Windows open below panel and launcher, grid does not work at all,
    window animations missing, and general plugin chaos if built on
    raring (cmake >= 2.8.10) (LP: #1085581)

  [ Iven Hsu ]
  * KDE Appmenu doesn't work with compiz decorators (LP: #1082265)
  * compiz 0.9.8.6 fails to build from source in KDE4-window-decorator
    with latest KDE 4.10 beta (LP: #1082152)
  * kde4-window-decorator crashes when starting up with oxygen theme
    (LP: #1050776)

  [ sampo555 ]
  * Grid: Window management - resize preview does not show when moving a
    window from the semi-maximised state to the maximised state in a
    single action (LP: #1071689)

  [ Timo Jyrinki ]
  * HTML5 video in Firefox continues to tear (LP: #1086337)

  [ MC Return ]
  * Workspacenames Plug-in: Wishlist: Default Appearance values not
    ideal (LP: #1075600)
  * Resizeinfo Plug-in: No possibility to change the color and
    transparency of the rounded background outline (LP: #1070297)
  * Resizeinfo Plug-in: Gradient color 2 and 3 settings are ignored and
    no background gradient is rendered (LP: #1070233)
  * Expo animations "Fade + Zoom" & "Vortex" result in a black screen
    (LP: #875311)
  * Workspacenames Plug-in: Wishlist: No default values...

Read more...

Changed in compiz (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Stephen M. Webb (bregma) wrote :

Fix Released in Unity Unity 7.0.0 "R series".

Changed in unity:
status: Fix Committed → Fix Released
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.