diff --git a/Modules/Launcher/Launcher.qml b/Modules/Launcher/Launcher.qml index d2c5553..7147bd2 100644 --- a/Modules/Launcher/Launcher.qml +++ b/Modules/Launcher/Launcher.qml @@ -28,6 +28,9 @@ NPanel { panelAnchorBottom: launcherPosition.startsWith("bottom_") panelAnchorTop: launcherPosition.startsWith("top_") + // Enable keyboard focus for launcher (needed for search) + panelKeyboardFocus: true + // Background opacity following bar's approach panelBackgroundColor: Qt.rgba(Color.mSurface.r, Color.mSurface.g, Color.mSurface.b, Settings.data.appLauncher.backgroundOpacity) diff --git a/Modules/SettingsPanel/SettingsPanel.qml b/Modules/SettingsPanel/SettingsPanel.qml index 9a9242f..896bb1f 100644 --- a/Modules/SettingsPanel/SettingsPanel.qml +++ b/Modules/SettingsPanel/SettingsPanel.qml @@ -24,6 +24,9 @@ NPanel { panelAnchorHorizontalCenter: true panelAnchorVerticalCenter: true + // Enable keyboard focus for settings panel + panelKeyboardFocus: true + // Tabs enumeration, order is NOT relevant enum Tab { About, diff --git a/Modules/WiFiPanel/WiFiPanel.qml b/Modules/WiFiPanel/WiFiPanel.qml index 80323de..f50aa86 100644 --- a/Modules/WiFiPanel/WiFiPanel.qml +++ b/Modules/WiFiPanel/WiFiPanel.qml @@ -14,6 +14,9 @@ NPanel { panelHeight: 500 * scaling panelAnchorRight: true + // Enable keyboard focus for WiFi panel (needed for password input) + panelKeyboardFocus: true + property string passwordPromptSsid: "" property string passwordInput: "" property bool showPasswordPrompt: false diff --git a/Widgets/NPanel.qml b/Widgets/NPanel.qml index bc61176..35a3730 100644 --- a/Widgets/NPanel.qml +++ b/Widgets/NPanel.qml @@ -40,6 +40,9 @@ Loader { property int buttonWidth: 0 property int buttonHeight: 0 + // Whether this panel should accept keyboard focus + property bool panelKeyboardFocus: false + // Animation properties readonly property real originalScale: 0.7 readonly property real originalOpacity: 0.0 @@ -148,7 +151,7 @@ Loader { WlrLayershell.exclusionMode: ExclusionMode.Ignore WlrLayershell.namespace: "noctalia-panel" - WlrLayershell.keyboardFocus: WlrKeyboardFocus.OnDemand + WlrLayershell.keyboardFocus: root.panelKeyboardFocus ? WlrKeyboardFocus.OnDemand : WlrKeyboardFocus.None Behavior on color { ColorAnimation {