workspacesView: Do not animate primary view geometry when fading

When going straight to the app picker, we fade in the overview instead
of doing the full-blown zoom transition. In order to keep windows at
their floating position, we must apply the same to the view itself
and not transition to the overview geometry when fading.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1353
This commit is contained in:
Florian Müllner 2020-07-07 12:57:51 +02:00
parent ef56b14553
commit 9297d87775

View File

@ -558,7 +558,9 @@ class WorkspacesDisplay extends St.Widget {
animationType = AnimationType.ZOOM; animationType = AnimationType.ZOOM;
this._workspacesViews[i].animateToOverview(animationType); this._workspacesViews[i].animateToOverview(animationType);
} }
this._syncWorkspacesActualGeometry();
if (!fadeOnPrimary)
this._syncWorkspacesActualGeometry();
} }
this._restackedNotifyId = this._restackedNotifyId =
@ -586,7 +588,7 @@ class WorkspacesDisplay extends St.Widget {
Main.layoutManager.getWorkAreaForMonitor(primaryIndex); Main.layoutManager.getWorkAreaForMonitor(primaryIndex);
this._getPrimaryView().ease({ this._getPrimaryView().ease({
x, y, width, height, x, y, width, height,
duration: ANIMATION_TIME, duration: fadeOnPrimary ? 0 : ANIMATION_TIME,
mode: Clutter.AnimationMode.EASE_OUT_QUAD, mode: Clutter.AnimationMode.EASE_OUT_QUAD,
}); });
} }