Report unavailable protocols and services; send combos as real keys
Diagnostics collects what this session doesn't allow, logs it, and lists it in the settings panel (with a dot on the gear): KWin not launching sloposk as its keyboard (detected by WAYLAND_SOCKET, since KWin offers the input-method global to every client), fake input missing or too old, org.kde.keyboard unreachable, and the D-Bus control name taken. Modifier combos go through fake input even in text fields: KWin drops the input method's modifier mask for most clients, so Ctrl+A typed "a". The desktop file is generated with an absolute Exec, which KWin needs to match it: one for the installed binary, one for the build's. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -7,6 +7,7 @@ Window {
|
||||
required property LayoutModel layoutModel
|
||||
required property KeyboardController controller
|
||||
required property Settings settings
|
||||
required property Diagnostics diagnostics
|
||||
property var placement: null // FloatingWindow, set from C++
|
||||
property bool settingsOpen: false
|
||||
// Height of the key area, for C++ keeping key sizes when rows change.
|
||||
@@ -58,6 +59,7 @@ Window {
|
||||
visible: root.settingsOpen
|
||||
settings: root.settings
|
||||
layoutModel: root.layoutModel
|
||||
diagnostics: root.diagnostics
|
||||
}
|
||||
|
||||
DragHandle {
|
||||
@@ -69,6 +71,7 @@ Window {
|
||||
SettingsButton {
|
||||
anchors { left: parent.left; leftMargin: 8; bottom: parent.bottom }
|
||||
checked: root.settingsOpen
|
||||
alert: root.diagnostics.problems.length > 0
|
||||
onClicked: root.settingsOpen = !root.settingsOpen
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user