Skip to content

Commit 030723a

Browse files
committed
WIP: allow switch to empty monitor
1 parent 14028f3 commit 030723a

1 file changed

Lines changed: 14 additions & 8 deletions

File tree

tiling.js

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1225,20 +1225,26 @@ export class Space extends Array {
12251225

12261226
const newMonitor = Main.layoutManager.monitors[i];
12271227
const newSpace = spaces.monitors.get(newMonitor);
1228+
newSpace.activate(false, false);
1229+
Navigator.finishNavigation();
1230+
Navigator.getNavigator().showMinimap(newSpace);
1231+
1232+
// New monitor is empty, just move the mouse there
1233+
if (newSpace.length === 0) {
1234+
Utils.warpPointerToMonitor(newMonitor);
1235+
return;
1236+
}
1237+
12281238
const visibleColumns = newSpace.filter((column) => newSpace.isVisible(column[0]));
1239+
12291240
if (visibleColumns.length === 0) {
12301241
return;
12311242
}
12321243

1233-
const newColumn = dir === Meta.DisplayDirection.LEFT
1234-
? visibleColumns[visibleColumns.length - 1]
1235-
: visibleColumns[0];
1236-
const newRow = Math.min(row, newColumn.length - 1);
1237-
const newWindow = newColumn[newRow];
1244+
const newIndex = dir === Meta.DisplayDirection.LEFT ? visibleColumns.length - 1 : 0;
1245+
const newColumn = visibleColumns[newIndex];
1246+
const newWindow = sortWindows(newSpace, newColumn)[newColumn.length - 1];
12381247

1239-
newSpace.activate(false, false);
1240-
Navigator.finishNavigation();
1241-
Navigator.getNavigator().showMinimap(newSpace);
12421248
ensureViewport(newWindow, newSpace);
12431249
return
12441250
}

0 commit comments

Comments
 (0)