GNOME Bugzilla – Bug 682002
Non-active workspaces occasionally "leak" during overview transition
Last modified: 2012-08-22 14:27:34 UTC
Matthias pointed me to this problems, where unexpected artifacts occasionally flash shortly below the top bar during the overview transition. It results that those artifacts are parts of a non-active workspace becoming unexpectedly visible during the transition. What's happening is the following: 1. during the transition, the clip on workspacesView is removed (for the zoom effect) 2. when leaving the overview by opening+activating a window on a previously empty workspace, the number of workspaces changes (as we append a new empty workspace at the end) 3. in response to that, we animate scrolling to the active workspace (which may change when the number of workspaces change) 4. during the animation, we make all workspaces visible So I think the bug is 3., as we should always receive a switch-workspace signal when actually changing workspace - attached patch was written at Guadec, so it has had a bit of testing here :-)
Created attachment 221366 [details] [review] workspacesView: Avoid an unnecessary animation Currently we animate scrolling to the active workspace both when the number of workspaces changed and after changing the active workspace. So in case we don't actually change workspace, this results in an unnecessary animation that may even have unwanted side effects: when done during the overview transition (e.g. in the case of opening and activating a window on an empty workspace), non-active workspaces become visible during the transition. To fix, don't scroll to the active workspace when the number of workspaces changes and rely on the 'switch-workspace' signal being emitted as necessary.
Yeah, I saw this one before. But that was while working on overview-relayout, because the aspect ratios were no longer the same. http://bugzilla-attachments.gnome.org/attachment.cgi?id=220828 was the fix I came up with.
Review of attachment 221366 [details] [review]: Sure.
Attachment 221366 [details] pushed as e92a6b3 - workspacesView: Avoid an unnecessary animation