83 lines
1.8 KiB
QML
83 lines
1.8 KiB
QML
import Quickshell
|
|
import QtQuick
|
|
import QtQuick.Shapes
|
|
import qs.Modules as Modules
|
|
import qs.Modules.Notifications as Notifications
|
|
import qs.Modules.Notifications.Sidebar as Sidebar
|
|
import qs.Modules.Notifications.Sidebar.Utils as Utils
|
|
import qs.Modules.Dashboard as Dashboard
|
|
import qs.Modules.Osd as Osd
|
|
import qs.Modules.Launcher as Launcher
|
|
import qs.Modules.Settings as Settings
|
|
|
|
Shape {
|
|
id: root
|
|
|
|
required property Item bar
|
|
required property Panels panels
|
|
required property PersistentProperties visibilities
|
|
|
|
anchors.fill: parent
|
|
// anchors.margins: 8
|
|
anchors.topMargin: bar.implicitHeight
|
|
preferredRendererType: Shape.CurveRenderer
|
|
|
|
Component.onCompleted: console.log(root.bar.implicitHeight, root.bar.anchors.topMargin)
|
|
|
|
Osd.Background {
|
|
startX: root.width - root.panels.sidebar.width
|
|
startY: (root.height - wrapper.height) / 2 - rounding
|
|
wrapper: root.panels.osd
|
|
}
|
|
|
|
Modules.Background {
|
|
invertBottomRounding: wrapper.x <= 0
|
|
startX: wrapper.x - 8
|
|
startY: wrapper.y
|
|
wrapper: root.panels.popouts
|
|
}
|
|
|
|
Notifications.Background {
|
|
sidebar: sidebar
|
|
startX: root.width
|
|
startY: 0
|
|
wrapper: root.panels.notifications
|
|
}
|
|
|
|
Launcher.Background {
|
|
startX: (root.width - wrapper.width) / 2 - rounding
|
|
startY: root.height
|
|
wrapper: root.panels.launcher
|
|
}
|
|
|
|
Dashboard.Background {
|
|
startX: root.width - root.panels.dashboard.width - rounding
|
|
startY: 0
|
|
wrapper: root.panels.dashboard
|
|
}
|
|
|
|
Utils.Background {
|
|
sidebar: sidebar
|
|
startX: root.width
|
|
startY: root.height
|
|
wrapper: root.panels.utilities
|
|
}
|
|
|
|
Sidebar.Background {
|
|
id: sidebar
|
|
|
|
panels: root.panels
|
|
startX: root.width
|
|
startY: root.panels.notifications.height
|
|
wrapper: root.panels.sidebar
|
|
}
|
|
|
|
Settings.Background {
|
|
id: settings
|
|
|
|
startX: (root.width - wrapper.width) / 2 - rounding
|
|
startY: 0
|
|
wrapper: root.panels.settings
|
|
}
|
|
}
|