mirror of
https://github.com/noctalia-dev/noctalia-shell.git
synced 2026-05-11 17:08:27 +08:00
Keybinds.js: factorize keybind detection & display logic
LockScreen: remove hardcoded Keybinds Launcher: remove most hardcoded keybinds (except for Tab etc) MainScreen: remove most hardcoded keybinds (except for Home etc) SessionMenu: remove all hardcoded keybinds WallpaperPanel: remove all hardcoded keybinds
This commit is contained in:
@@ -102,12 +102,24 @@
|
||||
"lockScreenBlur": 0.0,
|
||||
"lockScreenTint": 0.0,
|
||||
"keybinds": {
|
||||
"keyUp": "Up",
|
||||
"keyDown": "Down",
|
||||
"keyLeft": "Left",
|
||||
"keyRight": "Right",
|
||||
"keyEnter": "Return",
|
||||
"keyEscape": "Esc"
|
||||
"keyUp": [
|
||||
"Up"
|
||||
],
|
||||
"keyDown": [
|
||||
"Down"
|
||||
],
|
||||
"keyLeft": [
|
||||
"Left"
|
||||
],
|
||||
"keyRight": [
|
||||
"Right"
|
||||
],
|
||||
"keyEnter": [
|
||||
"Return"
|
||||
],
|
||||
"keyEscape": [
|
||||
"Esc"
|
||||
]
|
||||
}
|
||||
},
|
||||
"ui": {
|
||||
@@ -340,27 +352,33 @@
|
||||
"powerOptions": [
|
||||
{
|
||||
"action": "lock",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "1"
|
||||
},
|
||||
{
|
||||
"action": "suspend",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "2"
|
||||
},
|
||||
{
|
||||
"action": "hibernate",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "3"
|
||||
},
|
||||
{
|
||||
"action": "reboot",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "4"
|
||||
},
|
||||
{
|
||||
"action": "logout",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "5"
|
||||
},
|
||||
{
|
||||
"action": "shutdown",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "6"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
+12
-6
@@ -559,27 +559,33 @@ Singleton {
|
||||
property list<var> powerOptions: [
|
||||
{
|
||||
"action": "lock",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "1"
|
||||
},
|
||||
{
|
||||
"action": "suspend",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "2"
|
||||
},
|
||||
{
|
||||
"action": "hibernate",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "3"
|
||||
},
|
||||
{
|
||||
"action": "reboot",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "4"
|
||||
},
|
||||
{
|
||||
"action": "logout",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "5"
|
||||
},
|
||||
{
|
||||
"action": "shutdown",
|
||||
"enabled": true
|
||||
"enabled": true,
|
||||
"keybind": "6"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -0,0 +1,111 @@
|
||||
function getKeybindString(event) {
|
||||
let keyStr = "";
|
||||
if (event.modifiers & Qt.ControlModifier)
|
||||
keyStr += "Ctrl+";
|
||||
if (event.modifiers & Qt.AltModifier)
|
||||
keyStr += "Alt+";
|
||||
if (event.modifiers & Qt.ShiftModifier)
|
||||
keyStr += "Shift+";
|
||||
|
||||
let keyName = "";
|
||||
let rawText = event.text;
|
||||
|
||||
if (event.key >= Qt.Key_A && event.key <= Qt.Key_Z || event.key >= Qt.Key_0 && event.key <= Qt.Key_9) {
|
||||
keyName = String.fromCharCode(event.key);
|
||||
} else if (event.key >= Qt.Key_F1 && event.key <= Qt.Key_F12) {
|
||||
keyName = "F" + (event.key - Qt.Key_F1 + 1);
|
||||
} else if (rawText && rawText.length > 0 && rawText.charCodeAt(0) > 31) {
|
||||
keyName = rawText.toUpperCase();
|
||||
|
||||
if (event.modifiers & Qt.ShiftModifier) {
|
||||
const shiftMap = {
|
||||
"!": "1",
|
||||
"\"": "2",
|
||||
"§": "3",
|
||||
"$": "4",
|
||||
"%": "5",
|
||||
"&": "6",
|
||||
"/": "7",
|
||||
"(": "8",
|
||||
")": "9",
|
||||
"=": "0",
|
||||
"@": "2",
|
||||
"#": "3",
|
||||
"^": "6",
|
||||
"*": "8"
|
||||
};
|
||||
if (shiftMap[keyName]) {
|
||||
keyName = shiftMap[keyName];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
switch (event.key) {
|
||||
case Qt.Key_Escape:
|
||||
keyName = "Esc";
|
||||
break;
|
||||
case Qt.Key_Space:
|
||||
keyName = "Space";
|
||||
break;
|
||||
case Qt.Key_Return:
|
||||
keyName = "Return";
|
||||
break;
|
||||
case Qt.Key_Enter:
|
||||
keyName = "Enter";
|
||||
break;
|
||||
case Qt.Key_Tab:
|
||||
keyName = "Tab";
|
||||
break;
|
||||
case Qt.Key_Backspace:
|
||||
keyName = "Backspace";
|
||||
break;
|
||||
case Qt.Key_Delete:
|
||||
keyName = "Del";
|
||||
break;
|
||||
case Qt.Key_Insert:
|
||||
keyName = "Ins";
|
||||
break;
|
||||
case Qt.Key_Home:
|
||||
keyName = "Home";
|
||||
break;
|
||||
case Qt.Key_End:
|
||||
keyName = "End";
|
||||
break;
|
||||
case Qt.Key_PageUp:
|
||||
keyName = "PgUp";
|
||||
break;
|
||||
case Qt.Key_PageDown:
|
||||
keyName = "PgDn";
|
||||
break;
|
||||
case Qt.Key_Left:
|
||||
keyName = "Left";
|
||||
break;
|
||||
case Qt.Key_Right:
|
||||
keyName = "Right";
|
||||
break;
|
||||
case Qt.Key_Up:
|
||||
keyName = "Up";
|
||||
break;
|
||||
case Qt.Key_Down:
|
||||
keyName = "Down";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!keyName)
|
||||
return "";
|
||||
return keyStr + keyName;
|
||||
}
|
||||
|
||||
function checkKey(event, settingName, settings) {
|
||||
// Map simplified names to the actual setting property names
|
||||
var propName = "key" + settingName.charAt(0).toUpperCase() + settingName.slice(1);
|
||||
var boundKeys = settings.data.general.keybinds[propName];
|
||||
if (!boundKeys || boundKeys.length === 0)
|
||||
return false;
|
||||
var eventString = getKeybindString(event);
|
||||
for (var i = 0; i < boundKeys.length; i++) {
|
||||
if (boundKeys[i] === eventString)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -11,6 +11,7 @@ import qs.Services.Keyboard
|
||||
import qs.Services.Media
|
||||
import qs.Services.UI
|
||||
import qs.Widgets
|
||||
import "../../Helpers/Keybinds.js" as Keybinds
|
||||
|
||||
Loader {
|
||||
id: root
|
||||
@@ -278,11 +279,11 @@ Loader {
|
||||
onTextChanged: lockContext.currentText = text
|
||||
|
||||
Keys.onPressed: function (event) {
|
||||
if (event.key === Qt.Key_Return || event.key === Qt.Key_Enter) {
|
||||
if (Keybinds.checkKey(event, 'enter', Settings)) {
|
||||
lockContext.tryUnlock();
|
||||
event.accepted = true;
|
||||
}
|
||||
if (event.key === Qt.Key_Escape && panelComponent.timerActive) {
|
||||
if (Keybinds.checkKey(event, 'escape', Settings) && panelComponent.timerActive) {
|
||||
panelComponent.cancelTimer();
|
||||
event.accepted = true;
|
||||
}
|
||||
|
||||
@@ -574,57 +574,4 @@ PanelWindow {
|
||||
onActivated: PanelService.openedPanel.onPageDownPressed()
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "1"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(1)
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "2"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(2)
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "3"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(3)
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "4"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(4)
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "5"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(5)
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "6"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(6)
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "7"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(7)
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "8"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(8)
|
||||
}
|
||||
|
||||
Shortcut {
|
||||
sequence: "9"
|
||||
enabled: root.isPanelOpen && (PanelService.openedPanel.onNumberPressed !== undefined)
|
||||
onActivated: PanelService.openedPanel.onNumberPressed(9)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import qs.Services.Keyboard
|
||||
import qs.Services.Noctalia
|
||||
import qs.Services.UI
|
||||
import qs.Widgets
|
||||
import "../../../Helpers/Keybinds.js" as Keybinds
|
||||
|
||||
// Core launcher logic and UI - shared between SmartPanel (Launcher.qml) and overlay (LauncherOverlayWindow.qml)
|
||||
Rectangle {
|
||||
@@ -484,116 +485,8 @@ Rectangle {
|
||||
}
|
||||
}
|
||||
|
||||
function getKeybindString(event) {
|
||||
let keyStr = "";
|
||||
if (event.modifiers & Qt.ControlModifier)
|
||||
keyStr += "Ctrl+";
|
||||
if (event.modifiers & Qt.AltModifier)
|
||||
keyStr += "Alt+";
|
||||
if (event.modifiers & Qt.ShiftModifier)
|
||||
keyStr += "Shift+";
|
||||
|
||||
let keyName = "";
|
||||
let rawText = event.text;
|
||||
|
||||
if (event.key >= Qt.Key_A && event.key <= Qt.Key_Z || event.key >= Qt.Key_0 && event.key <= Qt.Key_9) {
|
||||
keyName = String.fromCharCode(event.key);
|
||||
} else if (event.key >= Qt.Key_F1 && event.key <= Qt.Key_F12) {
|
||||
keyName = "F" + (event.key - Qt.Key_F1 + 1);
|
||||
} else if (rawText && rawText.length > 0 && rawText.charCodeAt(0) > 31) {
|
||||
keyName = rawText.toUpperCase();
|
||||
|
||||
if (event.modifiers & Qt.ShiftModifier) {
|
||||
const shiftMap = {
|
||||
"!": "1",
|
||||
"\"": "2",
|
||||
"§": "3",
|
||||
"$": "4",
|
||||
"%": "5",
|
||||
"&": "6",
|
||||
"/": "7",
|
||||
"(": "8",
|
||||
")": "9",
|
||||
"=": "0",
|
||||
"@": "2",
|
||||
"#": "3",
|
||||
"^": "6",
|
||||
"*": "8"
|
||||
};
|
||||
if (shiftMap[keyName]) {
|
||||
keyName = shiftMap[keyName];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
switch (event.key) {
|
||||
case Qt.Key_Escape:
|
||||
keyName = "Esc";
|
||||
break;
|
||||
case Qt.Key_Space:
|
||||
keyName = "Space";
|
||||
break;
|
||||
case Qt.Key_Return:
|
||||
keyName = "Return";
|
||||
break;
|
||||
case Qt.Key_Enter:
|
||||
keyName = "Enter";
|
||||
break;
|
||||
case Qt.Key_Tab:
|
||||
keyName = "Tab";
|
||||
break;
|
||||
case Qt.Key_Backspace:
|
||||
keyName = "Backspace";
|
||||
break;
|
||||
case Qt.Key_Delete:
|
||||
keyName = "Del";
|
||||
break;
|
||||
case Qt.Key_Insert:
|
||||
keyName = "Ins";
|
||||
break;
|
||||
case Qt.Key_Home:
|
||||
keyName = "Home";
|
||||
break;
|
||||
case Qt.Key_End:
|
||||
keyName = "End";
|
||||
break;
|
||||
case Qt.Key_PageUp:
|
||||
keyName = "PgUp";
|
||||
break;
|
||||
case Qt.Key_PageDown:
|
||||
keyName = "PgDn";
|
||||
break;
|
||||
case Qt.Key_Left:
|
||||
keyName = "Left";
|
||||
break;
|
||||
case Qt.Key_Right:
|
||||
keyName = "Right";
|
||||
break;
|
||||
case Qt.Key_Up:
|
||||
keyName = "Up";
|
||||
break;
|
||||
case Qt.Key_Down:
|
||||
keyName = "Down";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!keyName)
|
||||
return "";
|
||||
return keyStr + keyName;
|
||||
}
|
||||
|
||||
function checkKey(event, settingName) {
|
||||
// Map simplified names to the actual setting property names
|
||||
var propName = "key" + settingName.charAt(0).toUpperCase() + settingName.slice(1);
|
||||
var boundKeys = Settings.data.general.keybinds[propName];
|
||||
if (!boundKeys || boundKeys.length === 0)
|
||||
return false;
|
||||
var eventString = getKeybindString(event);
|
||||
for (var i = 0; i < boundKeys.length; i++) {
|
||||
if (boundKeys[i] === eventString)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
return Keybinds.checkKey(event, settingName, Settings);
|
||||
}
|
||||
|
||||
// Keyboard handler
|
||||
|
||||
@@ -11,6 +11,7 @@ import qs.Modules.MainScreen
|
||||
import qs.Services.Compositor
|
||||
import qs.Services.UI
|
||||
import qs.Widgets
|
||||
import "../../../Helpers/Keybinds.js" as Keybinds
|
||||
|
||||
SmartPanel {
|
||||
id: root
|
||||
@@ -343,116 +344,8 @@ SmartPanel {
|
||||
}
|
||||
}
|
||||
|
||||
function getKeybindString(event) {
|
||||
let keyStr = "";
|
||||
if (event.modifiers & Qt.ControlModifier)
|
||||
keyStr += "Ctrl+";
|
||||
if (event.modifiers & Qt.AltModifier)
|
||||
keyStr += "Alt+";
|
||||
if (event.modifiers & Qt.ShiftModifier)
|
||||
keyStr += "Shift+";
|
||||
|
||||
let keyName = "";
|
||||
let rawText = event.text;
|
||||
|
||||
if (event.key >= Qt.Key_A && event.key <= Qt.Key_Z || event.key >= Qt.Key_0 && event.key <= Qt.Key_9) {
|
||||
keyName = String.fromCharCode(event.key);
|
||||
} else if (event.key >= Qt.Key_F1 && event.key <= Qt.Key_F12) {
|
||||
keyName = "F" + (event.key - Qt.Key_F1 + 1);
|
||||
} else if (rawText && rawText.length > 0 && rawText.charCodeAt(0) > 31) {
|
||||
keyName = rawText.toUpperCase();
|
||||
|
||||
if (event.modifiers & Qt.ShiftModifier) {
|
||||
const shiftMap = {
|
||||
"!": "1",
|
||||
"\"": "2",
|
||||
"§": "3",
|
||||
"$": "4",
|
||||
"%": "5",
|
||||
"&": "6",
|
||||
"/": "7",
|
||||
"(": "8",
|
||||
")": "9",
|
||||
"=": "0",
|
||||
"@": "2",
|
||||
"#": "3",
|
||||
"^": "6",
|
||||
"*": "8"
|
||||
};
|
||||
if (shiftMap[keyName]) {
|
||||
keyName = shiftMap[keyName];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
switch (event.key) {
|
||||
case Qt.Key_Escape:
|
||||
keyName = "Esc";
|
||||
break;
|
||||
case Qt.Key_Space:
|
||||
keyName = "Space";
|
||||
break;
|
||||
case Qt.Key_Return:
|
||||
keyName = "Return";
|
||||
break;
|
||||
case Qt.Key_Enter:
|
||||
keyName = "Enter";
|
||||
break;
|
||||
case Qt.Key_Tab:
|
||||
keyName = "Tab";
|
||||
break;
|
||||
case Qt.Key_Backspace:
|
||||
keyName = "Backspace";
|
||||
break;
|
||||
case Qt.Key_Delete:
|
||||
keyName = "Del";
|
||||
break;
|
||||
case Qt.Key_Insert:
|
||||
keyName = "Ins";
|
||||
break;
|
||||
case Qt.Key_Home:
|
||||
keyName = "Home";
|
||||
break;
|
||||
case Qt.Key_End:
|
||||
keyName = "End";
|
||||
break;
|
||||
case Qt.Key_PageUp:
|
||||
keyName = "PgUp";
|
||||
break;
|
||||
case Qt.Key_PageDown:
|
||||
keyName = "PgDn";
|
||||
break;
|
||||
case Qt.Key_Left:
|
||||
keyName = "Left";
|
||||
break;
|
||||
case Qt.Key_Right:
|
||||
keyName = "Right";
|
||||
break;
|
||||
case Qt.Key_Up:
|
||||
keyName = "Up";
|
||||
break;
|
||||
case Qt.Key_Down:
|
||||
keyName = "Down";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!keyName)
|
||||
return "";
|
||||
return keyStr + keyName;
|
||||
}
|
||||
|
||||
function checkKey(event, settingName) {
|
||||
// Map simplified names to the actual setting property names
|
||||
var propName = "key" + settingName.charAt(0).toUpperCase() + settingName.slice(1);
|
||||
var boundKeys = Settings.data.general.keybinds[propName];
|
||||
if (!boundKeys || boundKeys.length === 0)
|
||||
return false;
|
||||
var eventString = getKeybindString(event);
|
||||
for (var i = 0; i < boundKeys.length; i++) {
|
||||
if (boundKeys[i] === eventString)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
return Keybinds.checkKey(event, settingName, Settings);
|
||||
}
|
||||
|
||||
function handleUp() {
|
||||
@@ -541,7 +434,7 @@ SmartPanel {
|
||||
return false;
|
||||
}
|
||||
|
||||
const pressedKeybind = getKeybindString(event);
|
||||
const pressedKeybind = Keybinds.getKeybindString(event);
|
||||
if (!pressedKeybind)
|
||||
return false;
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@ import qs.Modules.Panels.Settings
|
||||
import qs.Services.Theming
|
||||
import qs.Services.UI
|
||||
import qs.Widgets
|
||||
import "../../../Helpers/Keybinds.js" as Keybinds
|
||||
|
||||
SmartPanel {
|
||||
id: root
|
||||
@@ -420,51 +421,20 @@ SmartPanel {
|
||||
}
|
||||
|
||||
Keys.onPressed: event => {
|
||||
var boundKeys = Settings.data.general.keybinds.keyDown;
|
||||
if (!boundKeys || boundKeys.length === 0)
|
||||
return;
|
||||
|
||||
// Helper to check key string (duplicated from LauncherCore/SessionMenu logic for now)
|
||||
// Ideally this should be a shared helper
|
||||
let keyStr = "";
|
||||
if (event.modifiers & Qt.ControlModifier)
|
||||
keyStr += "Ctrl+";
|
||||
if (event.modifiers & Qt.AltModifier)
|
||||
keyStr += "Alt+";
|
||||
if (event.modifiers & Qt.ShiftModifier)
|
||||
keyStr += "Shift+";
|
||||
|
||||
let keyName = "";
|
||||
if (event.key >= Qt.Key_A && event.key <= Qt.Key_Z || event.key >= Qt.Key_0 && event.key <= Qt.Key_9) {
|
||||
keyName = String.fromCharCode(event.key);
|
||||
} else if (event.key === Qt.Key_Return || event.key === Qt.Key_Enter) {
|
||||
keyName = "Return"; // Standardize on Return for check
|
||||
} else if (event.key === Qt.Key_Escape) {
|
||||
keyName = "Esc";
|
||||
} else if (event.key === Qt.Key_Up)
|
||||
keyName = "Up";
|
||||
else if (event.key === Qt.Key_Down)
|
||||
keyName = "Down";
|
||||
else if (event.key === Qt.Key_Left)
|
||||
keyName = "Left";
|
||||
else if (event.key === Qt.Key_Right)
|
||||
keyName = "Right";
|
||||
|
||||
// If the key matches any bound key for Down
|
||||
if (boundKeys.indexOf(keyStr + keyName) !== -1) {
|
||||
if (Settings.data.wallpaper.useWallhaven) {
|
||||
if (wallhavenView && wallhavenView.gridView) {
|
||||
wallhavenView.gridView.forceActiveFocus();
|
||||
}
|
||||
} else {
|
||||
let currentView = screenRepeater.itemAt(currentScreenIndex);
|
||||
if (currentView && currentView.gridView) {
|
||||
currentView.gridView.forceActiveFocus();
|
||||
}
|
||||
}
|
||||
event.accepted = true;
|
||||
}
|
||||
}
|
||||
if (Keybinds.checkKey(event, 'down', Settings)) {
|
||||
if (Settings.data.wallpaper.useWallhaven) {
|
||||
if (wallhavenView && wallhavenView.gridView) {
|
||||
wallhavenView.gridView.forceActiveFocus();
|
||||
}
|
||||
} else {
|
||||
let currentView = screenRepeater.itemAt(currentScreenIndex);
|
||||
if (currentView && currentView.gridView) {
|
||||
currentView.gridView.forceActiveFocus();
|
||||
}
|
||||
}
|
||||
event.accepted = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
@@ -935,13 +905,13 @@ SmartPanel {
|
||||
}
|
||||
|
||||
onKeyPressed: event => {
|
||||
if (event.key === Qt.Key_Return || event.key === Qt.Key_Space) {
|
||||
if (currentIndex >= 0 && currentIndex < filteredItems.length) {
|
||||
selectItem(filteredItems[currentIndex]);
|
||||
}
|
||||
event.accepted = true;
|
||||
}
|
||||
}
|
||||
if (Keybinds.checkKey(event, 'enter', Settings)) {
|
||||
if (currentIndex >= 0 && currentIndex < filteredItems.length) {
|
||||
selectItem(filteredItems[currentIndex]);
|
||||
}
|
||||
event.accepted = true;
|
||||
}
|
||||
}
|
||||
|
||||
delegate: Item {
|
||||
id: wallpaperItemWrapper
|
||||
@@ -1296,14 +1266,14 @@ SmartPanel {
|
||||
}
|
||||
|
||||
onKeyPressed: event => {
|
||||
if (event.key === Qt.Key_Return || event.key === Qt.Key_Space) {
|
||||
if (currentIndex >= 0 && currentIndex < wallpapers.length) {
|
||||
let wallpaper = wallpapers[currentIndex];
|
||||
wallhavenDownloadAndApply(wallpaper);
|
||||
}
|
||||
event.accepted = true;
|
||||
}
|
||||
}
|
||||
if (Keybinds.checkKey(event, 'enter', Settings)) {
|
||||
if (currentIndex >= 0 && currentIndex < wallpapers.length) {
|
||||
let wallpaper = wallpapers[currentIndex];
|
||||
wallhavenDownloadAndApply(wallpaper);
|
||||
}
|
||||
event.accepted = true;
|
||||
}
|
||||
}
|
||||
|
||||
delegate: Item {
|
||||
id: wallhavenItemWrapper
|
||||
|
||||
Reference in New Issue
Block a user