After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 586549 - Don't recreate the workspaces view on each redisplay of the overlay
Don't recreate the workspaces view on each redisplay of the overlay
Status: RESOLVED OBSOLETE
Product: gnome-shell
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Milan Bouchet-Valat
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2009-06-21 17:02 UTC by Milan Bouchet-Valat
Modified: 2010-12-06 17:40 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Don-t-recreate-the-workspaces-view-on-each-redisplay.patch (7.80 KB, patch)
2009-06-24 11:32 UTC, Milan Bouchet-Valat
needs-work Details | Review

Description Milan Bouchet-Valat 2009-06-21 17:02:28 UTC
Showing the overlay should be instantaneous; to avoid delays, we need to keep all objects around instead of destroying them. Especially, creating the clones and updating the layout when workspaces and windows are created rather than when entering the overlay will help. I'll post a patch soon.
Comment 1 Milan Bouchet-Valat 2009-06-24 11:32:55 UTC
Created attachment 137302 [details] [review]
Don-t-recreate-the-workspaces-view-on-each-redisplay.patch

First attempt. The patch is mainly moving calls around so that most work happens on init rather than display.

That works, except that workspaces already present at start don't have their desktop clone for background. From a quick debugging, I've discovered that the desktop window is not found - that occurs 4 times at start, I guess one for every workspace created by default (3 are not shown?). Hints welcome!
Comment 2 Dan Winship 2009-06-24 18:40:34 UTC
There is discussion in bug 582341 about using clones for windowmanager effects, particularly switch-workspace. In that case, perhaps we'd want to just have one clone of every window at all times, managed separately from workspaces.js?

Originally the workspaces were sized and created once at startup, like in your patch, with a comment about "FIXME: what if the screen is rotated or resized". So I changed it to recreate it every time, so that if the screen changed while you were outside the overlay, it would be reflected in the workspaces the next time you went into the overlay. But there's still the problem of if you rotate the screen while the overlay is active, so that didn't really solve the problem...
Comment 3 Milan Bouchet-Valat 2010-12-06 17:40:45 UTC
This one can also be closed...