add noctalia and fuzzel

This commit is contained in:
2026-05-23 21:20:58 +02:00
parent 364801f1a3
commit 9a3eceb3ab
599 changed files with 204318 additions and 0 deletions
@@ -0,0 +1,90 @@
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import qs.Commons
import qs.Services.System
import qs.Widgets
ColumnLayout {
id: root
spacing: Style.marginL
Layout.fillWidth: true
NToggle {
label: I18n.tr("panels.launcher.settings-clipboard-history-label")
description: I18n.tr("panels.launcher.settings-clipboard-history-description")
checked: Settings.data.appLauncher.enableClipboardHistory
onToggled: checked => Settings.data.appLauncher.enableClipboardHistory = checked
defaultValue: Settings.getDefaultValue("appLauncher.enableClipboardHistory")
}
NToggle {
label: I18n.tr("panels.launcher.settings-clip-preview-label")
description: I18n.tr("panels.launcher.settings-clip-preview-description")
checked: Settings.data.appLauncher.enableClipPreview
onToggled: checked => Settings.data.appLauncher.enableClipPreview = checked
defaultValue: Settings.getDefaultValue("appLauncher.enableClipPreview")
enabled: Settings.data.appLauncher.enableClipboardHistory
}
NToggle {
label: I18n.tr("panels.launcher.settings-clip-wrap-text-label")
description: I18n.tr("panels.launcher.settings-clip-wrap-text-description")
checked: Settings.data.appLauncher.clipboardWrapText
onToggled: checked => Settings.data.appLauncher.clipboardWrapText = checked
defaultValue: Settings.getDefaultValue("appLauncher.clipboardWrapText")
enabled: Settings.data.appLauncher.enableClipboardHistory
}
NToggle {
label: I18n.tr("panels.launcher.settings-auto-paste-label")
description: I18n.tr("panels.launcher.settings-auto-paste-description")
checked: Settings.data.appLauncher.autoPasteClipboard
onToggled: checked => Settings.data.appLauncher.autoPasteClipboard = checked
defaultValue: Settings.getDefaultValue("appLauncher.autoPasteClipboard")
enabled: Settings.data.appLauncher.enableClipboardHistory && ProgramCheckerService.wtypeAvailable
}
NToggle {
label: I18n.tr("panels.launcher.settings-clip-smart-icons-label")
description: I18n.tr("panels.launcher.settings-clip-smart-icons-description")
checked: Settings.data.appLauncher.enableClipboardSmartIcons
onToggled: checked => Settings.data.appLauncher.enableClipboardSmartIcons = checked
defaultValue: Settings.getDefaultValue("appLauncher.enableClipboardSmartIcons")
enabled: Settings.data.appLauncher.enableClipboardHistory
}
NToggle {
label: I18n.tr("panels.launcher.settings-clip-chips-label")
description: I18n.tr("panels.launcher.settings-clip-chips-description")
checked: Settings.data.appLauncher.enableClipboardChips
onToggled: checked => Settings.data.appLauncher.enableClipboardChips = checked
defaultValue: Settings.getDefaultValue("appLauncher.enableClipboardChips")
enabled: Settings.data.appLauncher.enableClipboardHistory
}
NDivider {
Layout.fillWidth: true
visible: Settings.data.appLauncher.enableClipboardHistory
}
NTextInput {
label: I18n.tr("panels.launcher.settings-clipboard-watch-text-label")
description: I18n.tr("panels.launcher.settings-clipboard-watch-text-description")
Layout.fillWidth: true
text: Settings.data.appLauncher.clipboardWatchTextCommand
onTextChanged: Settings.data.appLauncher.clipboardWatchTextCommand = text
enabled: Settings.data.appLauncher.enableClipboardHistory
visible: Settings.data.appLauncher.enableClipboardHistory
}
NTextInput {
label: I18n.tr("panels.launcher.settings-clipboard-watch-image-label")
description: I18n.tr("panels.launcher.settings-clipboard-watch-image-description")
Layout.fillWidth: true
text: Settings.data.appLauncher.clipboardWatchImageCommand
onTextChanged: Settings.data.appLauncher.clipboardWatchImageCommand = text
enabled: Settings.data.appLauncher.enableClipboardHistory
visible: Settings.data.appLauncher.enableClipboardHistory
}
}
@@ -0,0 +1,49 @@
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import qs.Commons
import qs.Services.System
import qs.Widgets
ColumnLayout {
id: root
spacing: Style.marginL
Layout.fillWidth: true
NTextInput {
label: I18n.tr("panels.launcher.settings-terminal-command-label")
description: I18n.tr("panels.launcher.settings-terminal-command-description")
Layout.fillWidth: true
text: Settings.data.appLauncher.terminalCommand
onTextChanged: {
Settings.data.appLauncher.terminalCommand = text;
}
}
NToggle {
label: I18n.tr("panels.launcher.settings-custom-launch-prefix-enabled-label")
description: I18n.tr("panels.launcher.settings-custom-launch-prefix-enabled-description")
checked: Settings.data.appLauncher.customLaunchPrefixEnabled
onToggled: checked => Settings.data.appLauncher.customLaunchPrefixEnabled = checked
defaultValue: Settings.getDefaultValue("appLauncher.customLaunchPrefixEnabled")
}
NTextInput {
label: I18n.tr("panels.launcher.settings-custom-launch-prefix-label")
description: I18n.tr("panels.launcher.settings-custom-launch-prefix-description")
Layout.fillWidth: true
text: Settings.data.appLauncher.customLaunchPrefix
enabled: Settings.data.appLauncher.customLaunchPrefixEnabled
visible: Settings.data.appLauncher.customLaunchPrefixEnabled
onTextChanged: Settings.data.appLauncher.customLaunchPrefix = text
}
NTextInput {
label: I18n.tr("panels.launcher.settings-annotation-tool-label")
description: I18n.tr("panels.launcher.settings-annotation-tool-description")
Layout.fillWidth: true
text: Settings.data.appLauncher.screenshotAnnotationTool
placeholderText: I18n.tr("panels.launcher.settings-annotation-tool-placeholder")
onTextChanged: Settings.data.appLauncher.screenshotAnnotationTool = text
}
}
@@ -0,0 +1,179 @@
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import qs.Commons
import qs.Widgets
ColumnLayout {
id: root
spacing: Style.marginL
Layout.fillWidth: true
NComboBox {
label: I18n.tr("common.position")
description: I18n.tr("panels.launcher.settings-position-description")
Layout.fillWidth: true
model: [
{
"key": "follow_bar",
"name": I18n.tr("positions.follow-bar")
},
{
"key": "center",
"name": I18n.tr("positions.center")
},
{
"key": "top_center",
"name": I18n.tr("positions.top-center")
},
{
"key": "top_left",
"name": I18n.tr("positions.top-left")
},
{
"key": "top_right",
"name": I18n.tr("positions.top-right")
},
{
"key": "bottom_left",
"name": I18n.tr("positions.bottom-left")
},
{
"key": "bottom_right",
"name": I18n.tr("positions.bottom-right")
},
{
"key": "bottom_center",
"name": I18n.tr("positions.bottom-center")
}
]
currentKey: Settings.data.appLauncher.position
onSelected: function (key) {
Settings.data.appLauncher.position = key;
}
defaultValue: Settings.getDefaultValue("appLauncher.position")
}
NToggle {
label: I18n.tr("panels.launcher.settings-overlay-layer-label")
description: I18n.tr("panels.launcher.settings-overlay-layer-description")
checked: Settings.data.appLauncher.overviewLayer
onToggled: checked => Settings.data.appLauncher.overviewLayer = checked
defaultValue: Settings.getDefaultValue("appLauncher.overviewLayer")
}
NComboBox {
label: I18n.tr("panels.launcher.settings-view-mode-label")
description: I18n.tr("panels.launcher.settings-view-mode-description")
Layout.fillWidth: true
model: [
{
"key": "list",
"name": I18n.tr("options.launcher-view-mode.list")
},
{
"key": "grid",
"name": I18n.tr("options.launcher-view-mode.grid")
}
]
currentKey: Settings.data.appLauncher.viewMode
onSelected: function (key) {
Settings.data.appLauncher.viewMode = key;
}
defaultValue: Settings.getDefaultValue("appLauncher.viewMode")
}
NComboBox {
label: I18n.tr("panels.launcher.settings-density-label")
description: I18n.tr("panels.launcher.settings-density-description")
Layout.fillWidth: true
model: [
{
"key": "compact",
"name": I18n.tr("options.launcher-density.compact")
},
{
"key": "default",
"name": I18n.tr("options.launcher-density.default")
},
{
"key": "comfortable",
"name": I18n.tr("options.launcher-density.comfortable")
}
]
currentKey: Settings.data.appLauncher.density || "compact"
onSelected: function (key) {
Settings.data.appLauncher.density = key;
}
defaultValue: Settings.getDefaultValue("appLauncher.density")
}
NToggle {
label: I18n.tr("panels.launcher.settings-show-categories-label")
description: I18n.tr("panels.launcher.settings-show-categories-description")
checked: Settings.data.appLauncher.showCategories
onToggled: checked => Settings.data.appLauncher.showCategories = checked
defaultValue: Settings.getDefaultValue("appLauncher.showCategories")
}
NToggle {
label: I18n.tr("panels.launcher.settings-icon-mode-label")
description: I18n.tr("panels.launcher.settings-icon-mode-description")
checked: Settings.data.appLauncher.iconMode === "native"
onToggled: checked => Settings.data.appLauncher.iconMode = checked ? "native" : "tabler"
defaultValue: Settings.getDefaultValue("appLauncher.iconMode") === "native"
}
NToggle {
label: I18n.tr("panels.launcher.settings-show-icon-background-label")
description: I18n.tr("panels.launcher.settings-show-icon-background-description")
checked: Settings.data.appLauncher.showIconBackground
onToggled: checked => Settings.data.appLauncher.showIconBackground = checked
defaultValue: Settings.getDefaultValue("appLauncher.showIconBackground")
}
NDivider {
Layout.fillWidth: true
}
NToggle {
label: I18n.tr("panels.launcher.settings-sort-by-usage-label")
description: I18n.tr("panels.launcher.settings-sort-by-usage-description")
checked: Settings.data.appLauncher.sortByMostUsed
onToggled: checked => Settings.data.appLauncher.sortByMostUsed = checked
defaultValue: Settings.getDefaultValue("appLauncher.sortByMostUsed")
}
NToggle {
label: I18n.tr("panels.launcher.settings-enable-settings-search-label")
description: I18n.tr("panels.launcher.settings-enable-settings-search-description")
checked: Settings.data.appLauncher.enableSettingsSearch
onToggled: checked => Settings.data.appLauncher.enableSettingsSearch = checked
defaultValue: Settings.getDefaultValue("appLauncher.enableSettingsSearch")
}
NToggle {
label: I18n.tr("panels.launcher.settings-enable-windows-search-label")
description: I18n.tr("panels.launcher.settings-enable-windows-search-description")
checked: Settings.data.appLauncher.enableWindowsSearch
onToggled: checked => Settings.data.appLauncher.enableWindowsSearch = checked
defaultValue: Settings.getDefaultValue("appLauncher.enableWindowsSearch")
}
NToggle {
label: I18n.tr("panels.launcher.settings-enable-session-search-label")
description: I18n.tr("panels.launcher.settings-enable-session-search-description")
checked: Settings.data.appLauncher.enableSessionSearch
onToggled: checked => Settings.data.appLauncher.enableSessionSearch = checked
defaultValue: Settings.getDefaultValue("appLauncher.enableSessionSearch")
}
NToggle {
label: I18n.tr("panels.launcher.settings-ignore-mouse-input-label")
description: I18n.tr("panels.launcher.settings-ignore-mouse-input-description")
checked: Settings.data.appLauncher.ignoreMouseInput
onToggled: checked => Settings.data.appLauncher.ignoreMouseInput = checked
defaultValue: Settings.getDefaultValue("appLauncher.ignoreMouseInput")
}
}
@@ -0,0 +1,48 @@
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import qs.Commons
import qs.Widgets
ColumnLayout {
id: root
spacing: 0
NTabBar {
id: subTabBar
Layout.fillWidth: true
Layout.bottomMargin: Style.marginM
distributeEvenly: true
currentIndex: tabView.currentIndex
NTabButton {
text: I18n.tr("common.general")
tabIndex: 0
checked: subTabBar.currentIndex === 0
}
NTabButton {
text: I18n.tr("common.clipboard")
tabIndex: 1
checked: subTabBar.currentIndex === 1
}
NTabButton {
text: I18n.tr("common.execute")
tabIndex: 2
checked: subTabBar.currentIndex === 2
}
}
Item {
Layout.fillWidth: true
Layout.preferredHeight: Style.marginL
}
NTabView {
id: tabView
currentIndex: subTabBar.currentIndex
GeneralSubTab {}
ClipboardSubTab {}
ExecuteSubTab {}
}
}