dots-hyprland/.config/quickshell/ii/modules/notificationPopup/NotificationPopup.qml
2025-07-20 08:58:40 +07:00

50 lines
1.2 KiB
QML

import qs
import qs.modules.common
import qs.modules.common.widgets
import qs.services
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import Quickshell
import Quickshell.Wayland
import Quickshell.Hyprland
Scope {
id: notificationPopup
PanelWindow {
id: root
visible: (Notifications.popupList.length > 0) && !GlobalStates.screenLocked
screen: Quickshell.screens.find(s => s.name === Hyprland.focusedMonitor?.name) ?? null
WlrLayershell.namespace: "quickshell:notificationPopup"
WlrLayershell.layer: WlrLayer.Overlay
exclusiveZone: 0
anchors {
top: true
right: true
bottom: true
}
mask: Region {
item: listview.contentItem
}
color: "transparent"
implicitWidth: Appearance.sizes.notificationPopupWidth
NotificationListView {
id: listview
anchors {
top: parent.top
bottom: parent.bottom
right: parent.right
rightMargin: 4
topMargin: 4
}
implicitWidth: parent.width - Appearance.sizes.elevationMargin * 2
popup: true
}
}
}