feat: utils margin ignore border

This commit is contained in:
2 * r + 2 * t 2026-05-06 19:38:25 +10:00
parent e29be58790
commit 776d2b75b4

View file

@ -2,6 +2,7 @@ pragma ComponentBehavior: Bound
import QtQuick import QtQuick
import Quickshell import Quickshell
import Caelestia
import Caelestia.Config import Caelestia.Config
import qs.components import qs.components
import qs.modules.sidebar as Sidebar import qs.modules.sidebar as Sidebar
@ -24,12 +25,13 @@ Item {
reloadableId: "utilities" reloadableId: "utilities"
} }
readonly property bool shouldBeActive: visibilities.sidebar || (visibilities.utilities && Config.utilities.enabled && !(visibilities.session && Config.session.enabled)) readonly property bool shouldBeActive: visibilities.sidebar || (visibilities.utilities && Config.utilities.enabled && !(visibilities.session && Config.session.enabled))
readonly property real totalPadding: content.anchors.margins + CUtils.clamp(content.anchors.margins - Config.border.thickness, 0, content.anchors.margins)
property real offsetScale: shouldBeActive ? 0 : 1 property real offsetScale: shouldBeActive ? 0 : 1
property real sidebarLerp property real sidebarLerp
visible: offsetScale < 1 visible: offsetScale < 1
anchors.bottomMargin: (-implicitHeight - 5) * offsetScale anchors.bottomMargin: (-implicitHeight - 5) * offsetScale
implicitHeight: content.implicitHeight + content.anchors.margins * 2 implicitHeight: content.implicitHeight + totalPadding
implicitWidth: sidebar.width * (1 - sidebar.offsetScale) * horizontalStretch * sidebarLerp + Tokens.sizes.utilities.width * (1 - sidebarLerp) implicitWidth: sidebar.width * (1 - sidebar.offsetScale) * horizontalStretch * sidebarLerp + Tokens.sizes.utilities.width * (1 - sidebarLerp)
opacity: 1 - offsetScale opacity: 1 - offsetScale
@ -78,7 +80,7 @@ Item {
active: root.shouldBeActive || root.visible active: root.shouldBeActive || root.visible
sourceComponent: Content { sourceComponent: Content {
implicitWidth: root.implicitWidth - content.anchors.margins * 2 implicitWidth: root.implicitWidth - root.totalPadding
props: root.props props: root.props
visibilities: root.visibilities visibilities: root.visibilities
popouts: root.popouts popouts: root.popouts