Files
noctalia-shell/Modules/Panels/Settings/Tabs/LauncherTab.qml
T
Ly-sec 0db78a0abe UserInterface: add universal opacity slider (except for bar)
LauncherTab: remove opacity slider
Settings: add migration
i18n: add opacity slider translation
2025-11-12 20:32:11 +01:00

123 lines
4.3 KiB
QML

import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import qs.Commons
import qs.Services.System
import qs.Widgets
ColumnLayout {
id: root
spacing: Style.marginL
NHeader {
label: I18n.tr("settings.launcher.settings.section.label")
description: I18n.tr("settings.launcher.settings.section.description")
}
NComboBox {
label: I18n.tr("settings.launcher.settings.position.label")
description: I18n.tr("settings.launcher.settings.position.description")
Layout.fillWidth: true
model: [{
"key": "follow_bar",
"name": I18n.tr("options.launcher.position.follow_bar")
}, {
"key": "center",
"name": I18n.tr("options.launcher.position.center")
}, {
"key": "top_center",
"name": I18n.tr("options.launcher.position.top_center")
}, {
"key": "top_left",
"name": I18n.tr("options.launcher.position.top_left")
}, {
"key": "top_right",
"name": I18n.tr("options.launcher.position.top_right")
}, {
"key": "bottom_left",
"name": I18n.tr("options.launcher.position.bottom_left")
}, {
"key": "bottom_right",
"name": I18n.tr("options.launcher.position.bottom_right")
}, {
"key": "bottom_center",
"name": I18n.tr("options.launcher.position.bottom_center")
}]
currentKey: Settings.data.appLauncher.position
onSelected: function (key) {
Settings.data.appLauncher.position = key
}
}
NToggle {
label: I18n.tr("settings.launcher.settings.clipboard-history.label")
description: I18n.tr("settings.launcher.settings.clipboard-history.description")
checked: Settings.data.appLauncher.enableClipboardHistory
onToggled: checked => Settings.data.appLauncher.enableClipboardHistory = checked
}
NToggle {
label: I18n.tr("settings.launcher.settings.sort-by-usage.label")
description: I18n.tr("settings.launcher.settings.sort-by-usage.description")
checked: Settings.data.appLauncher.sortByMostUsed
onToggled: checked => Settings.data.appLauncher.sortByMostUsed = checked
}
NToggle {
label: I18n.tr("settings.launcher.settings.use-app2unit.label")
description: I18n.tr("settings.launcher.settings.use-app2unit.description")
checked: Settings.data.appLauncher.useApp2Unit && ProgramCheckerService.app2unitAvailable
enabled: ProgramCheckerService.app2unitAvailable && !Settings.data.appLauncher.customLaunchPrefixEnabled
opacity: ProgramCheckerService.app2unitAvailable ? 1.0 : 0.6
onToggled: checked => {
if (ProgramCheckerService.app2unitAvailable) {
Settings.data.appLauncher.useApp2Unit = checked
if (checked) {
Settings.data.appLauncher.customLaunchPrefixEnabled = false
}
}
}
}
NTextInput {
label: I18n.tr("settings.launcher.settings.terminal-command.label")
description: I18n.tr("settings.launcher.settings.terminal-command.description")
Layout.fillWidth: true
text: Settings.data.appLauncher.terminalCommand
onEditingFinished: {
Settings.data.appLauncher.terminalCommand = text
}
}
NToggle {
label: I18n.tr("settings.launcher.settings.custom-launch-prefix-enabled.label")
description: I18n.tr("settings.launcher.settings.custom-launch-prefix-enabled.description")
checked: Settings.data.appLauncher.customLaunchPrefixEnabled
enabled: !Settings.data.appLauncher.useApp2Unit
onToggled: checked => {
Settings.data.appLauncher.customLaunchPrefixEnabled = checked
if (checked) {
Settings.data.appLauncher.useApp2Unit = false
}
}
}
NTextInput {
label: I18n.tr("settings.launcher.settings.custom-launch-prefix.label")
description: I18n.tr("settings.launcher.settings.custom-launch-prefix.description")
Layout.fillWidth: true
text: Settings.data.appLauncher.customLaunchPrefix
enabled: Settings.data.appLauncher.customLaunchPrefixEnabled
visible: Settings.data.appLauncher.customLaunchPrefixEnabled
onEditingFinished: {
Settings.data.appLauncher.customLaunchPrefix = text
}
}
NDivider {
Layout.fillWidth: true
Layout.topMargin: Style.marginL
Layout.bottomMargin: Style.marginL
}
}