C++ / fmt (pull_request) Successful in 4s
JS/TS / lint (pull_request) Successful in 19s
JS/TS / fmt (pull_request) Successful in 21s
Python / fmt (pull_request) Successful in 30s
Python / lint (pull_request) Successful in 31s
Python / test (pull_request) Successful in 1m2s
Python / typecheck (pull_request) Failing after 1m5s
Rust / fmt (pull_request) Successful in 43s
C++ / build (pull_request) Successful in 2m25s
Rust / build (pull_request) Successful in 1m42s
Python / buildcheck (pull_request) Successful in 2m27s
Rust / clippy (pull_request) Successful in 1m29s
C++ / clang-tidy (pull_request) Successful in 3m56s
60 lines
1.5 KiB
QML
60 lines
1.5 KiB
QML
pragma ComponentBehavior: Bound
|
|
|
|
import QtQuick
|
|
import QtQuick.Layouts
|
|
import Quickshell.Services.SystemTray
|
|
import qs.Components
|
|
import ZShell.Config
|
|
import qs.Modules.Bar.Components.Tray
|
|
import qs.Modules.Bar.Popouts
|
|
import qs.Services
|
|
|
|
CustomClippingRect {
|
|
id: root
|
|
|
|
required property bool horizontal
|
|
readonly property alias items: repeater
|
|
readonly property alias layout: sysGrid
|
|
required property GridLayout loader
|
|
readonly property int padding: Tokens.padding.small
|
|
required property Wrapper popouts
|
|
readonly property real shortSize: Math.max(Config.bar.height, Tokens.bar.innerSize)
|
|
readonly property real size: horizontal ? sysGrid.implicitWidth + Tokens.padding.small : sysGrid.implicitHeight + Tokens.padding.small
|
|
|
|
bottomLeftRadius: horizontal ? Tokens.rounding.full : Tokens.rounding.smallest / 2
|
|
bottomRightRadius: Tokens.rounding.smallest / 2
|
|
color: Colors.tPalette.m3surfaceContainer
|
|
implicitHeight: horizontal ? shortSize : size
|
|
implicitWidth: horizontal ? size : shortSize
|
|
radius: Tokens.rounding.full
|
|
topRightRadius: horizontal ? Tokens.rounding.smallest / 2 : Tokens.rounding.full
|
|
|
|
GridLayout {
|
|
id: sysGrid
|
|
|
|
anchors.centerIn: parent
|
|
columns: root.horizontal ? -1 : 1
|
|
rowSpacing: -2
|
|
|
|
Repeater {
|
|
id: repeater
|
|
|
|
model: SystemTray.items
|
|
|
|
TrayItem {
|
|
id: trayItem
|
|
|
|
required property int index
|
|
required property SystemTrayItem modelData
|
|
|
|
implicitHeight: 34
|
|
implicitWidth: 34
|
|
ind: index
|
|
item: modelData
|
|
loader: root.loader
|
|
popouts: root.popouts
|
|
}
|
|
}
|
|
}
|
|
}
|