nosignal-shell/modules/osd/Wrapper.qml
2025-08-24 17:22:00 +10:00

54 lines
1.1 KiB
QML

import qs.components
import qs.services
import qs.config
import Quickshell
import QtQuick
Item {
id: root
required property ShellScreen screen
required property bool visibility
visible: width > 0
implicitWidth: 0
implicitHeight: content.implicitHeight
states: State {
name: "visible"
when: root.visibility && Config.osd.enabled
PropertyChanges {
root.implicitWidth: content.implicitWidth
}
}
transitions: [
Transition {
from: ""
to: "visible"
Anim {
target: root
property: "implicitWidth"
easing.bezierCurve: Appearance.anim.curves.expressiveDefaultSpatial
}
},
Transition {
from: "visible"
to: ""
Anim {
target: root
property: "implicitWidth"
easing.bezierCurve: Appearance.anim.curves.emphasized
}
}
]
Content {
id: content
monitor: Brightness.getMonitorForScreen(root.screen)
}
}