- Double-space replaced the space via a Backspace keysym, which clients apply after the commit: use delete_surrounding_text with the commit - Tests use a shared FakeEngine that applies ops to a simulated field - Double-tap shift locks at a sentence start; typing between taps doesn't - Organization name set: config lives in ~/.config/sloposk/ - Settings (auto-capitalization, double-space period) with a ⚙ panel - Letter rows come from the compositor's XKB keymap; other letters of the layout become long-press alternates; globe switches the system layout over org.kde.keyboard - One JSON template for non-letter layers; stretch keys even out rows Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
34 lines
924 B
QML
34 lines
924 B
QML
import QtQuick
|
|
import Sloposk
|
|
|
|
// Replaces the keys while open. Binds straight to Settings, which persists.
|
|
Rectangle {
|
|
id: panel
|
|
|
|
required property Settings settings
|
|
|
|
color: Theme.background
|
|
radius: Theme.windowRadius
|
|
|
|
Column {
|
|
anchors { fill: parent; margins: 16 }
|
|
spacing: 4
|
|
|
|
ToggleRow {
|
|
width: parent.width
|
|
text: qsTr("Auto-Capitalization")
|
|
detail: qsTr("Shift at the start of a sentence")
|
|
checked: panel.settings.autoCapitalize
|
|
onToggled: checked => panel.settings.autoCapitalize = checked
|
|
}
|
|
|
|
ToggleRow {
|
|
width: parent.width
|
|
text: qsTr("“.” Shortcut")
|
|
detail: qsTr("Double-tap space for a period and a space")
|
|
checked: panel.settings.doubleSpacePeriod
|
|
onToggled: checked => panel.settings.doubleSpacePeriod = checked
|
|
}
|
|
}
|
|
}
|