forked from Shinonome/alt-illogical-impulse
ac6d3adeb9
BREAKING CHANGE: Remove external dots-hyprland dependency - Imported all essential configs from dots-hyprland/installer-replication - Added complete configs/ directory with: - hypr/ - Hyprland configuration - quickshell/ - Quickshell widgets and config - applications/ - Application configurations - scripts/ - Utility scripts - matugen/ - Material You theming - Updated flake.nix to use local ./configs instead of external repo - Simplified update-flake script (removed external repo management) - Updated README to reflect self-contained architecture - All builds pass with local configurations Benefits: - No external repository dependencies - Faster builds (no network dependencies) - Version controlled configs in single repo - Easier maintenance and development - Complete installer replication in one place
50 lines
1.3 KiB
QML
50 lines
1.3 KiB
QML
import qs
|
|
import qs.services
|
|
import qs.modules.common
|
|
import qs.modules.common.widgets
|
|
import "layouts.js" as Layouts
|
|
import QtQuick
|
|
import QtQuick.Controls
|
|
import QtQuick.Layouts
|
|
import Quickshell
|
|
import Quickshell.Io
|
|
import Quickshell.Widgets
|
|
import Quickshell.Hyprland
|
|
|
|
Item {
|
|
id: root
|
|
property var layouts: Layouts.byName
|
|
property var activeLayoutName: (layouts.hasOwnProperty(Config.options?.osk.layout))
|
|
? Config.options?.osk.layout
|
|
: Layouts.defaultLayout
|
|
property var currentLayout: layouts[activeLayoutName]
|
|
|
|
implicitWidth: keyRows.implicitWidth
|
|
implicitHeight: keyRows.implicitHeight
|
|
|
|
ColumnLayout {
|
|
id: keyRows
|
|
anchors.fill: parent
|
|
spacing: 5
|
|
|
|
Repeater {
|
|
model: root.currentLayout.keys
|
|
|
|
delegate: RowLayout {
|
|
id: keyRow
|
|
required property var modelData
|
|
spacing: 5
|
|
|
|
Repeater {
|
|
model: modelData
|
|
// A normal key looks like this: {label: "a", labelShift: "A", shape: "normal", keycode: 30, type: "normal"}
|
|
delegate: OskKey {
|
|
required property var modelData
|
|
keyData: modelData
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|