1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-08-01 19:18:28 -04:00

fix(Modal): respect targetScreen property instead of always using focused screen (#2861)

The open() method in both DankModalStandalone and DankModalConnected unconditionally set contentWindow.screen to the focused screen, ignoring the targetScreen property.

Fix: use root.targetScreen ?? CompositorService.getFocusedScreen() so the modal appears on the configured screen when set, and falls back to focused screen otherwise.
This commit is contained in:
Huỳnh Thiện Lộc
2026-07-14 19:42:08 +07:00
committed by GitHub
parent 9ff751b82a
commit f1e9121295
2 changed files with 2 additions and 2 deletions
@@ -217,7 +217,7 @@ Item {
frozenMotionOffsetX = modalContainer ? modalContainer.offsetX : 0;
frozenMotionOffsetY = modalContainer ? modalContainer.offsetY : animationOffset;
const focusedScreen = CompositorService.getFocusedScreen();
const focusedScreen = root.targetScreen ?? CompositorService.getFocusedScreen();
if (focusedScreen) {
contentWindow.screen = focusedScreen;
}
@@ -70,7 +70,7 @@ Item {
function open() {
closeTimer.stop();
isClosing = false;
const focusedScreen = CompositorService.getFocusedScreen();
const focusedScreen = root.targetScreen ?? CompositorService.getFocusedScreen();
const screenChanged = focusedScreen && contentWindow.screen !== focusedScreen;
if (focusedScreen) {
if (screenChanged)