1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-06-13 06:33:30 -04:00

feat(Spotlight): Add a New Lightweight Spotlight style launcher option

This commit is contained in:
purian23
2026-05-16 17:34:56 -04:00
parent 05c7a77c8b
commit 9f2ae6241e
11 changed files with 1496 additions and 8 deletions
+9
View File
@@ -308,6 +308,15 @@ Item {
onToggled: checked => SettingsData.set("frameCloseGaps", !checked)
}
SettingsToggleRow {
settingKey: "frameUseSpotlightLauncher"
tags: ["frame", "connected", "launcher", "spotlight", "search", "minimal"]
text: I18n.tr("Use Spotlight Launcher")
description: I18n.tr("Use the centered minimal launcher instead of the connected V2 launcher")
checked: SettingsData.frameUseSpotlightLauncher
onToggled: checked => SettingsData.set("frameUseSpotlightLauncher", checked)
}
SettingsButtonGroupRow {
settingKey: "frameLauncherEmergeSide"
tags: ["frame", "connected", "launcher", "modal", "emerge", "direction", "bottom", "top"]
@@ -8,6 +8,8 @@ import qs.Modules.Settings.Widgets
Item {
id: root
property var parentModal: null
FileBrowserModal {
id: logoFileBrowser
browserTitle: I18n.tr("Select Launcher Logo")
@@ -30,6 +32,43 @@ Item {
anchors.horizontalCenter: parent.horizontalCenter
spacing: Theme.spacingXL
SettingsCard {
width: parent.width
iconName: "search"
title: I18n.tr("Launcher Style")
settingKey: "launcherStyle"
SettingsControlledByFrame {
visible: SettingsData.connectedFrameModeActive
parentModal: root.parentModal
settingLabel: I18n.tr("Launcher Style")
reason: I18n.tr("Managed by Frame Mode")
}
StyledText {
width: parent.width
visible: !SettingsData.connectedFrameModeActive
text: SettingsData.launcherStyle === "spotlight" ? I18n.tr("Minimal Spotlight-style bar: appears instantly at the top of the screen and expands as you type.") : I18n.tr("Full-featured launcher with mode tabs, grid view, and action panel.")
font.pixelSize: Theme.fontSizeSmall
color: Theme.surfaceVariantText
wrapMode: Text.WordWrap
}
SettingsButtonGroupRow {
visible: !SettingsData.connectedFrameModeActive
settingKey: "launcherStyleSelector"
tags: ["launcher", "style", "spotlight", "full", "minimal"]
text: I18n.tr("Style")
model: [I18n.tr("Full"), I18n.tr("Spotlight")]
currentIndex: SettingsData.launcherStyle === "spotlight" ? 1 : 0
onSelectionChanged: (index, selected) => {
if (!selected)
return;
SettingsData.set("launcherStyle", index === 1 ? "spotlight" : "full");
}
}
}
SettingsCard {
width: parent.width
iconName: "apps"