[gnome-shell/wip/exalm/gestures2: 8/9] workspaceAnimation: Group sticky windows and moving window
- From: Alexander Mikhaylenko <alexm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/exalm/gestures2: 8/9] workspaceAnimation: Group sticky windows and moving window
- Date: Thu, 16 Jul 2020 13:52:32 +0000 (UTC)
commit 9e81534a8ffe2b1f608864ac24b9b7675739dbff
Author: Alexander Mikhaylenko <exalm7659 gmail com>
Date: Sat Jun 20 23:44:24 2020 +0500
workspaceAnimation: Group sticky windows and moving window
Since the transitions consists of window clones now, all the clones appear
above sticky windows. Clone sticky windows as well, and treat them same as
moving window instead.
https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1326
js/ui/workspaceAnimation.js | 31 +++----------------------------
1 file changed, 3 insertions(+), 28 deletions(-)
---
diff --git a/js/ui/workspaceAnimation.js b/js/ui/workspaceAnimation.js
index 496bbd58db..2ec160aa58 100644
--- a/js/ui/workspaceAnimation.js
+++ b/js/ui/workspaceAnimation.js
@@ -129,8 +129,7 @@ var WorkspaceAnimationController = class {
const switchData = {};
this._switchData = switchData;
- switchData.movingWindowBin = new Clutter.Actor();
- switchData.movingWindow = null;
+ switchData.stickyGroup = new WorkspaceGroup(null, this.movingWindow);
switchData.workspaces = [];
switchData.gestureActivated = false;
switchData.inProgress = false;
@@ -140,7 +139,7 @@ var WorkspaceAnimationController = class {
Main.uiGroup.insert_child_above(switchData.background, global.window_group);
Main.uiGroup.insert_child_above(switchData.container, switchData.background);
- Main.uiGroup.insert_child_above(switchData.movingWindowBin, switchData.container);
+ Main.uiGroup.insert_child_above(switchData.stickyGroup, switchData.container);
let x = 0;
let y = 0;
@@ -190,21 +189,6 @@ var WorkspaceAnimationController = class {
else
switchData.container.x = -activeInfo.x;
- if (this.movingWindow) {
- const windowActor = this.movingWindow.get_compositor_private();
-
- switchData.movingWindow = {
- windowActor,
- parent: windowActor.get_parent(),
- };
-
- switchData.movingWindow.parent.remove_child(windowActor);
- switchData.movingWindowBin.add_child(windowActor);
- switchData.movingWindow.windowDestroyId = windowActor.connect('destroy', () => {
- switchData.movingWindow = null;
- });
- }
-
switchData.bgManager = new Background.BackgroundManager({
container: switchData.background,
monitorIndex: Main.layoutManager.primaryIndex,
@@ -214,18 +198,9 @@ var WorkspaceAnimationController = class {
_finishWorkspaceSwitch(switchData) {
this._switchData = null;
- if (switchData.movingWindow) {
- const record = switchData.movingWindow;
- record.windowActor.disconnect(record.windowDestroyId);
- switchData.movingWindowBin.remove_child(record.windowActor);
- record.parent.add_child(record.windowActor);
-
- switchData.movingWindow = null;
- }
-
switchData.background.destroy();
switchData.container.destroy();
- switchData.movingWindowBin.destroy();
+ switchData.stickyGroup.destroy();
this.movingWindow = null;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]