diff --git a/shell/lock/LockInput.qml b/shell/lock/LockInput.qml index 48cdf1e..721e2e8 100644 --- a/shell/lock/LockInput.qml +++ b/shell/lock/LockInput.qml @@ -68,8 +68,6 @@ Item { Row { anchors.centerIn: parent spacing: 6 - width: Math.min(implicitWidth, root.width - root.height) - clip: implicitWidth > root.width - root.height Repeater { model: root.buffer.length diff --git a/shell/modules/Bar.qml b/shell/modules/Bar.qml index d7605fc..ff6d091 100644 --- a/shell/modules/Bar.qml +++ b/shell/modules/Bar.qml @@ -17,7 +17,15 @@ PanelWindow { right: true } - margins.right: S.DockState.reservedWidthAnimated + margins.right: S.DockState.reservedWidth + + Behavior on margins.right { + enabled: !S.Theme.reducedMotion + NumberAnimation { + duration: 200 + easing.type: Easing.OutCubic + } + } implicitHeight: S.Theme.barHeight exclusiveZone: implicitHeight diff --git a/shell/modules/BarGroup.qml b/shell/modules/BarGroup.qml index a0c00cc..544a8ae 100644 --- a/shell/modules/BarGroup.qml +++ b/shell/modules/BarGroup.qml @@ -15,7 +15,7 @@ Item { if (!scr) return 0.5; const gx = mapToGlobal(width / 2, 0).x - scr.x; - const effectiveWidth = scr.width - (S.DockState.reservedWidthAnimated ?? 0); + const effectiveWidth = scr.width - (S.DockState.reservedWidth ?? 0); return Math.max(0, Math.min(1, gx / (effectiveWidth > 0 ? effectiveWidth : scr.width))); } property color borderColor: Qt.rgba(S.Theme.base0C.r + (S.Theme.base09.r - S.Theme.base0C.r) * _posFrac, S.Theme.base0C.g + (S.Theme.base09.g - S.Theme.base0C.g) * _posFrac, S.Theme.base0C.b + (S.Theme.base09.b - S.Theme.base0C.b) * _posFrac, 1) diff --git a/shell/modules/ScreenCorners.qml b/shell/modules/ScreenCorners.qml index 3be436c..7c02d16 100644 --- a/shell/modules/ScreenCorners.qml +++ b/shell/modules/ScreenCorners.qml @@ -80,7 +80,7 @@ Item { corner: 1 anchors.top: true anchors.right: true - margins.right: S.DockState.reservedWidthAnimated + margins.right: S.DockState.reservedWidth } Corner { corner: 2 @@ -91,6 +91,6 @@ Item { corner: 3 anchors.bottom: true anchors.right: true - margins.right: S.DockState.reservedWidthAnimated + margins.right: S.DockState.reservedWidth } } diff --git a/shell/services/DockState.qml b/shell/services/DockState.qml index 1cdd735..ad3f3ca 100644 --- a/shell/services/DockState.qml +++ b/shell/services/DockState.qml @@ -11,19 +11,6 @@ QtObject { // Bar, screen corners, etc. read this to adjust layout. property int reservedWidth: 0 - // Animated version for smooth visual transitions. - // Consumers that need coordinated movement use this instead. - property int reservedWidthAnimated: 0 - - Behavior on reservedWidthAnimated { - NumberAnimation { - duration: 200 - easing.type: Easing.InOutCubic - } - } - - onReservedWidthChanged: reservedWidthAnimated = reservedWidth - onModeChanged: { if (mode !== "pinned") reservedWidth = 0; diff --git a/shell/shell.qml b/shell/shell.qml index 522a412..6e0122b 100644 --- a/shell/shell.qml +++ b/shell/shell.qml @@ -17,15 +17,6 @@ ShellRoot { id: scope required property var modelData - readonly property bool _isRightmost: { - let maxX = -Infinity; - for (let i = 0; i < Quickshell.screens.length; i++) { - if (Quickshell.screens[i].x > maxX) - maxX = Quickshell.screens[i].x; - } - return scope.modelData.x >= maxX; - } - Bar { screen: scope.modelData } @@ -70,14 +61,14 @@ ShellRoot { } LazyLoader { - active: Modules.dock.enable && scope._isRightmost + active: Modules.dock.enable Dock.AppletDock { screen: scope.modelData } } LazyLoader { - active: Modules.dock.enable && scope._isRightmost + active: Modules.dock.enable Dock.DockEdgeTrigger { screen: scope.modelData }