Merge status bar and launcher into morphing top bar

This commit is contained in:
2026-02-25 03:09:27 -08:00
parent ea9f96dab7
commit 86cf291663
7 changed files with 436 additions and 340 deletions

43
BarShape.qml Normal file
View File

@@ -0,0 +1,43 @@
import QtQuick
import QtQuick.Effects
import QtQuick.Shapes
Shape {
id: background
preferredRendererType: Shape.CurveRenderer
required property var color
required property var radius
ShapePath {
strokeWidth: 0
fillColor: color
startX: 0
startY: 0
PathArc {
x: radius; y: Math.min(radius, background.height/2)
radiusX: radius; radiusY: y
direction: PathArc.Clockwise
}
PathLine { x: radius; y: background.height - Math.min(radius, background.height/2) }
PathArc {
x: radius * 2; y: background.height
radiusX: radius; radiusY: Math.min(radius, background.height/2)
direction: PathArc.Counterclockwise
}
PathLine { x: background.width - radius * 2; y: background.height }
PathArc {
x: background.width - radius; y: background.height - Math.min(radius, background.height/2)
radiusX: radius; radiusY: Math.min(radius, background.height/2)
direction: PathArc.Counterclockwise
}
PathLine { x: background.width - radius; y: Math.min(radius, background.height/2) }
PathArc {
x: background.width; y: 0
radiusX: radius; radiusY: Math.min(radius, background.height/2)
direction: PathArc.Clockwise
}
}
layer.enabled: true
layer.effect: MultiEffect {
shadowEnabled: true
}
}