Files
Panama/config/dot/quickshell/modules/settings/KeyRepeatRow.qml
T

87 lines
2.2 KiB
QML

// Key repeat: when a held key starts repeating, and how fast it goes.
//
// Two settings, one question. As separate rows they read as unrelated numbers
// with units nobody converts between; together, under one explanation, the
// pair is the single thing somebody came to change.
//
// The sliders are ordinary SliderRows, so the debounced commit, the refusal
// fallback and the schema's own labels and units all come along unchanged.
// This only puts them side by side, and stacks them when the window is too
// narrow to hold both.
import QtQuick
import qs.config
Column {
id: root
property bool divider: true
readonly property bool side: root.width >= 560
readonly property int columnWidth: root.side ? (root.width - 24) / 2 : root.width
width: parent ? parent.width : 620
spacing: 0
Item {
width: parent.width
height: copy.implicitHeight + 20
Column {
id: copy
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
spacing: 3
Text {
width: parent.width
text: "Key repeat"
color: Theme.fg
font.family: Theme.fontFamily
font.pixelSize: Theme.fontSize
font.weight: Font.Medium
}
Text {
width: parent.width
text: "Hold a key: when repeating starts, and how fast it goes"
color: Theme.fgDim
font.family: Theme.fontFamily
font.pixelSize: Theme.fontSizeSmall
wrapMode: Text.WordWrap
}
}
}
Flow {
width: parent.width
spacing: 24
SliderRow {
setting: "keyRepeatDelay"
width: root.columnWidth
divider: false
}
SliderRow {
setting: "keyRepeatRate"
width: root.columnWidth
divider: false
}
}
Item {
width: parent.width
height: 10
}
Rectangle {
width: parent.width
height: 1
visible: root.divider
color: Theme.alpha(Theme.fg, 0.065)
}
}