89 lines
2.3 KiB
QML
89 lines
2.3 KiB
QML
//@ pragma Env QS_NO_RELOAD_POPUP=1
|
|
//@ pragma AppId space.darkest.nova-shell
|
|
|
|
import "modules"
|
|
import "services"
|
|
import "dock" as Dock
|
|
import "lock" as Lock
|
|
import NovaStats as NS
|
|
import Quickshell
|
|
|
|
ShellRoot {
|
|
Lock.Lock {}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
Scope {
|
|
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
|
|
}
|
|
|
|
Tooltip {
|
|
screen: scope.modelData
|
|
assignedScreen: scope.modelData
|
|
}
|
|
|
|
LazyLoader {
|
|
active: NS.ModulesService.notificationsMaxPopups > 0
|
|
NotifPopup {
|
|
screen: scope.modelData
|
|
}
|
|
}
|
|
|
|
LazyLoader {
|
|
active: NS.ModulesService.backgroundOverlayEnable
|
|
BackgroundOverlay {
|
|
screen: scope.modelData
|
|
}
|
|
}
|
|
|
|
LazyLoader {
|
|
active: NS.ModulesService.overviewBackdropEnable && NiriIpc.available
|
|
OverviewBackdrop {
|
|
screen: scope.modelData
|
|
}
|
|
}
|
|
|
|
LazyLoader {
|
|
active: NS.ModulesService.lockEnable && NS.ModulesService.lockScreenshot
|
|
ScreenCapture {
|
|
screen: scope.modelData
|
|
}
|
|
}
|
|
|
|
LazyLoader {
|
|
active: NS.ModulesService.screenCornersEnable
|
|
ScreenCorners {
|
|
screen: scope.modelData
|
|
}
|
|
}
|
|
|
|
LazyLoader {
|
|
active: NS.ModulesService.dockEnable && scope._isRightmost
|
|
Dock.AppletDock {
|
|
screen: scope.modelData
|
|
}
|
|
}
|
|
|
|
LazyLoader {
|
|
active: NS.ModulesService.dockEnable && scope._isRightmost
|
|
Dock.DockEdgeTrigger {
|
|
screen: scope.modelData
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|