- JSON layouts (en-US, sv-SE inheriting number/symbol layers via base) - LayoutModel + KeyGeometry: proportional rows, nearest-key hit testing - KeyboardSurface: multi-pointer touch/mouse routing to the controller - KeyboardController + ShiftState: iOS shift/caps-lock, layers, globe, dismiss - QML view with light/dark iPad palette and drag handle - DevHooks: SLOPOSK_AUTOTYPE, SLOPOSK_SCREENSHOT for headless checks - Unit tests for shift, loader, geometry and controller Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
20 lines
762 B
QML
20 lines
762 B
QML
pragma Singleton
|
|
|
|
import QtQuick
|
|
|
|
// iPad keyboard palette; follows the system light/dark preference.
|
|
QtObject {
|
|
readonly property bool dark: Qt.styleHints.colorScheme === Qt.ColorScheme.Dark
|
|
|
|
readonly property color background: dark ? "#2c2c2e" : "#d1d3d9"
|
|
readonly property color characterKey: dark ? "#6b6b6e" : "#ffffff"
|
|
readonly property color functionKey: dark ? "#464649" : "#abb0bc"
|
|
readonly property color keyShadow: dark ? "#141416" : "#88898d"
|
|
readonly property color text: dark ? "#ffffff" : "#000000"
|
|
readonly property color secondaryText: dark ? "#a5a5aa" : "#8a8a8e"
|
|
readonly property color handle: dark ? "#8e8e93" : "#7c7c80"
|
|
|
|
readonly property real windowRadius: 14
|
|
readonly property real keyRadius: 6
|
|
}
|