
Simplify the logic a bit. Introduce WorkspaceAnimation class that reparents the windows from current, surrounding and destination workspaces and manages them. Expose 'progress' property and have WorkspaceAnimationController animate it instead of animating everything separately. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/605