show notification in fullscreen
Lint & Format (JS/TS) / lint-format (pull_request) Successful in 10s
Python / lint-format (pull_request) Successful in 18s
Python / test (pull_request) Successful in 27s
Lint & Format (Rust) / lint-format (pull_request) Successful in 1m11s

This commit is contained in:
2026-06-17 18:44:50 +02:00
parent 5fb137699f
commit a98a7944b9
9 changed files with 78 additions and 22 deletions
+10
View File
@@ -18,6 +18,7 @@ RowLayout {
required property Wrapper popouts
required property ClipWrapper popoutsWrapper
required property ShellScreen screen
required property bool fullscreen
readonly property int vPadding: 6
required property PersistentProperties visibilities
@@ -91,6 +92,7 @@ RowLayout {
delegate: WrappedLoader {
sourceComponent: HyprsunsetWidget {
visible: !root.fullscreen
}
}
}
@@ -109,6 +111,7 @@ RowLayout {
delegate: WrappedLoader {
sourceComponent: Workspaces {
screen: root.screen
visible: !root.fullscreen
}
}
}
@@ -120,6 +123,7 @@ RowLayout {
sourceComponent: TrayWidget {
loader: root
popouts: root.popouts
visible: !root.fullscreen
}
}
}
@@ -130,6 +134,7 @@ RowLayout {
delegate: WrappedLoader {
sourceComponent: Resources {
visibilities: root.visibilities
visible: !root.fullscreen
}
}
}
@@ -139,6 +144,7 @@ RowLayout {
delegate: WrappedLoader {
sourceComponent: UpdatesWidget {
visible: !root.fullscreen
}
}
}
@@ -150,6 +156,7 @@ RowLayout {
sourceComponent: NotifBell {
popouts: root.popouts
visibilities: root.visibilities
visible: !root.fullscreen
}
}
}
@@ -162,6 +169,7 @@ RowLayout {
loader: root
popouts: root.popouts
visibilities: root.visibilities
visible: !root.fullscreen
}
}
}
@@ -172,6 +180,7 @@ RowLayout {
delegate: WrappedLoader {
sourceComponent: WindowTitle {
bar: root
visible: !root.fullscreen
}
}
}
@@ -190,6 +199,7 @@ RowLayout {
delegate: WrappedLoader {
sourceComponent: MediaWidget {
visible: !root.fullscreen
}
}
}
+4 -2
View File
@@ -17,12 +17,13 @@ Item {
readonly property int contentHeight: Config.barConfig.height + padding * 2
readonly property int exclusiveZone: Config.barConfig.autoHide ? Config.barConfig.border : contentHeight
required property bool fullscreen
property bool isHovered
readonly property int padding: Math.max(Appearance.padding.smaller, Config.barConfig.border)
required property Wrapper popouts
required property ClipWrapper popoutsWrapper
required property ShellScreen screen
readonly property bool shouldBeVisible: (!Config.barConfig.autoHide || visibilities.bar || isHovered)
readonly property bool shouldBeVisible: !fullscreen && (!Config.barConfig.autoHide || visibilities.bar || isHovered)
readonly property int vPadding: 6
required property PersistentProperties visibilities
@@ -30,7 +31,7 @@ Item {
content.item?.checkPopout(x);
}
implicitHeight: Config.barConfig.border
implicitHeight: fullscreen ? 0 : Config.barConfig.border
visible: height > Config.barConfig.border
states: State {
@@ -75,6 +76,7 @@ Item {
anchors.right: parent.right
sourceComponent: Bar {
fullscreen: root.fullscreen
height: root.contentHeight
popouts: root.popouts
popoutsWrapper: root.popoutsWrapper
+2 -1
View File
@@ -8,6 +8,7 @@ import qs.Config
Item {
id: root
required property real borderThickness
readonly property alias content: content
property real offsetScale: y > 0 || content.hasCurrent ? 0 : 1
required property ShellScreen screen
@@ -17,7 +18,7 @@ Item {
implicitWidth: content.implicitWidth
visible: width > 0 && height > 0
x: {
const off = content.currentCenter - Config.barConfig.border - content.nonAnimWidth / 2;
const off = content.currentCenter - borderThickness - content.nonAnimWidth / 2;
const diff = parent.width - Math.floor(off + content.nonAnimWidth);
if (diff < 0)
return off + diff;
+2
View File
@@ -20,6 +20,7 @@ CustomRect {
required property NotifServer.Notif modelData
readonly property int nonAnimHeight: summary.implicitHeight + (root.expanded ? appName.height + body.height + actions.height + actions.anchors.topMargin : bodyPreview.height) + inner.anchors.margins * 2
clip: true
color: root.modelData.urgency === NotificationUrgency.Critical ? DynamicColors.palette.m3secondaryContainer : DynamicColors.tPalette.m3surfaceContainer
implicitHeight: inner.implicitHeight
implicitWidth: Config.notifs.sizes.width
@@ -435,6 +436,7 @@ CustomRect {
StateLayer {
color: root.modelData.urgency === NotificationUrgency.Critical ? DynamicColors.palette.m3onSecondary : DynamicColors.palette.m3onSurface
enabled: root.expanded
radius: Appearance.rounding.full
onClicked: {