C++ / fmt (pull_request) Successful in 4s
JS/TS / fmt (pull_request) Successful in 11s
JS/TS / lint (pull_request) Successful in 23s
Python / lint (pull_request) Successful in 30s
Python / fmt (pull_request) Successful in 32s
Python / test (pull_request) Successful in 1m1s
Python / typecheck (pull_request) Failing after 52s
C++ / build (pull_request) Successful in 1m45s
Rust / fmt (pull_request) Successful in 57s
Rust / build (pull_request) Successful in 1m50s
Rust / clippy (pull_request) Successful in 1m44s
Python / buildcheck (pull_request) Successful in 2m29s
C++ / clang-tidy (pull_request) Successful in 3m31s
73 lines
1.5 KiB
QML
73 lines
1.5 KiB
QML
import QtQuick
|
|
import qs.Components
|
|
import qs.Config
|
|
|
|
CustomRect {
|
|
id: root
|
|
|
|
property bool first
|
|
property bool last
|
|
property string settingAnchor
|
|
|
|
function flashHighlight(): void {
|
|
flash.restart();
|
|
}
|
|
|
|
bottomLeftRadius: last ? Appearance.rounding.large : Appearance.rounding.extraSmall
|
|
bottomRightRadius: last ? Appearance.rounding.large : Appearance.rounding.extraSmall
|
|
color: DynamicColors.tPalette.m3surfaceContainer
|
|
opacity: enabled && parent.enabled ? 1 : 0.5
|
|
topLeftRadius: first ? Appearance.rounding.large : Appearance.rounding.extraSmall
|
|
topRightRadius: first ? Appearance.rounding.large : Appearance.rounding.extraSmall
|
|
|
|
Behavior on opacity {
|
|
Anim {
|
|
}
|
|
}
|
|
|
|
CustomRect {
|
|
id: highlight
|
|
|
|
anchors.fill: parent
|
|
bottomLeftRadius: parent.bottomLeftRadius
|
|
bottomRightRadius: parent.bottomRightRadius
|
|
color: DynamicColors.palette.m3primary
|
|
opacity: 0
|
|
radius: parent.radius
|
|
topLeftRadius: parent.topLeftRadius
|
|
topRightRadius: parent.topRightRadius
|
|
|
|
SequentialAnimation {
|
|
id: flash
|
|
|
|
Anim {
|
|
duration: Appearance.anim.durations.small
|
|
property: "opacity"
|
|
target: highlight
|
|
to: 0.2
|
|
}
|
|
|
|
Anim {
|
|
duration: Appearance.anim.durations.normal
|
|
property: "opacity"
|
|
target: highlight
|
|
to: 0.08
|
|
}
|
|
|
|
Anim {
|
|
duration: Appearance.anim.durations.small
|
|
property: "opacity"
|
|
target: highlight
|
|
to: 0.2
|
|
}
|
|
|
|
Anim {
|
|
duration: Appearance.anim.durations.extraLarge
|
|
property: "opacity"
|
|
target: highlight
|
|
to: 0
|
|
}
|
|
}
|
|
}
|
|
}
|