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.
(cherry picked from commit f1e9121295)
This commit is contained in:
Huỳnh Thiện Lộc
2026-07-14 19:42:08 +07:00
committed by dms-ci[bot]
parent bd70a6286e
commit 660953ebc5
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)