From fac72b257c7257e578cd9f275b4bfd4e0bcc5eaa Mon Sep 17 00:00:00 2001 From: LemmyCook Date: Mon, 1 Sep 2025 19:56:43 -0400 Subject: [PATCH 1/2] Recompiled stripes shader --- Shaders/qsb/wp_stripes.frag.qsb | Bin 5180 -> 5320 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Shaders/qsb/wp_stripes.frag.qsb b/Shaders/qsb/wp_stripes.frag.qsb index 4466bce27f0aa81f9befd685f4dd31d76dd86474..7f739ae7fa38d28d3478c6370a6c913152a358aa 100644 GIT binary patch literal 5320 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 From cb7b1d92c6e91607362fa3c1f9e0360fb419458a Mon Sep 17 00:00:00 2001 From: LemmyCook Date: Mon, 1 Sep 2025 19:58:05 -0400 Subject: [PATCH 2/2] Wallpaper: improved over conditional wallpaper management - hide all wallpaper settings if feature is disabled - hide wallpaper selector if feature is disabled - hide quick access wallpaper if feature is disabled --- Modules/SettingsPanel/SettingsPanel.qml | 156 +++++++++++--------- Modules/SettingsPanel/Tabs/WallpaperTab.qml | 7 +- Modules/SidePanel/Cards/UtilitiesCard.qml | 1 + 3 files changed, 96 insertions(+), 68 deletions(-) diff --git a/Modules/SettingsPanel/SettingsPanel.qml b/Modules/SettingsPanel/SettingsPanel.qml index 896bb1f..4dfcfad 100644 --- a/Modules/SettingsPanel/SettingsPanel.qml +++ b/Modules/SettingsPanel/SettingsPanel.qml @@ -46,6 +46,18 @@ NPanel { property int requestedTab: SettingsPanel.Tab.General property int currentTabIndex: 0 + property var tabsModel: [] + + Connections { + target: Settings.data.wallpaper + function onEnabledChanged() { + updateTabsModel() + } + } + + Component.onCompleted: { + updateTabsModel() + } Component { id: generalTab @@ -102,75 +114,87 @@ NPanel { } // Order *DOES* matter - property var tabsModel: [{ - "id": SettingsPanel.Tab.General, - "label": "General", - "icon": "tune", - "source": generalTab - }, { - "id": SettingsPanel.Tab.Bar, - "label": "Bar", - "icon": "web_asset", - "source": barTab - }, { - "id": SettingsPanel.Tab.Launcher, - "label": "Launcher", - "icon": "apps", - "source": launcherTab - }, { - "id": SettingsPanel.Tab.AudioService, - "label": "Audio", - "icon": "volume_up", - "source": audioTab - }, { - "id": SettingsPanel.Tab.Display, - "label": "Display", - "icon": "monitor", - "source": displayTab - }, { - "id": SettingsPanel.Tab.Network, - "label": "Network", - "icon": "lan", - "source": networkTab - }, { - "id": SettingsPanel.Tab.Brightness, - "label": "Brightness", - "icon": "brightness_6", - "source": brightnessTab - }, { - "id": SettingsPanel.Tab.TimeWeather, - "label": "Time & Weather", - "icon": "schedule", - "source": timeWeatherTab - }, { - "id": SettingsPanel.Tab.ColorScheme, - "label": "Color Scheme", - "icon": "palette", - "source": colorSchemeTab - }, { - "id": SettingsPanel.Tab.Wallpaper, - "label": "Wallpaper", - "icon": "image", - "source": wallpaperTab - }, { - "id": SettingsPanel.Tab.WallpaperSelector, - "label": "Wallpaper Selector", - "icon": "wallpaper_slideshow", - "source": wallpaperSelectorTab - }, { - "id": SettingsPanel.Tab.ScreenRecorder, - "label": "Screen Recorder", - "icon": "videocam", - "source": screenRecorderTab - }, { - "id": SettingsPanel.Tab.About, - "label": "About", - "icon": "info", - "source": aboutTab - }] + function updateTabsModel() { + let newTabs = [{ + "id": SettingsPanel.Tab.General, + "label": "General", + "icon": "tune", + "source": generalTab + }, { + "id": SettingsPanel.Tab.Bar, + "label": "Bar", + "icon": "web_asset", + "source": barTab + }, { + "id": SettingsPanel.Tab.Launcher, + "label": "Launcher", + "icon": "apps", + "source": launcherTab + }, { + "id": SettingsPanel.Tab.AudioService, + "label": "Audio", + "icon": "volume_up", + "source": audioTab + }, { + "id": SettingsPanel.Tab.Display, + "label": "Display", + "icon": "monitor", + "source": displayTab + }, { + "id": SettingsPanel.Tab.Network, + "label": "Network", + "icon": "lan", + "source": networkTab + }, { + "id": SettingsPanel.Tab.Brightness, + "label": "Brightness", + "icon": "brightness_6", + "source": brightnessTab + }, { + "id": SettingsPanel.Tab.TimeWeather, + "label": "Time & Weather", + "icon": "schedule", + "source": timeWeatherTab + }, { + "id": SettingsPanel.Tab.ColorScheme, + "label": "Color Scheme", + "icon": "palette", + "source": colorSchemeTab + }, { + "id": SettingsPanel.Tab.Wallpaper, + "label": "Wallpaper", + "icon": "image", + "source": wallpaperTab + }] + // Only add the Wallpaper Selector tab if the feature is enabled + if (Settings.data.wallpaper.enabled) { + newTabs.push({ + "id": SettingsPanel.Tab.WallpaperSelector, + "label": "Wallpaper Selector", + "icon": "wallpaper_slideshow", + "source": wallpaperSelectorTab + }) + } + + newTabs.push({ + "id": SettingsPanel.Tab.ScreenRecorder, + "label": "Screen Recorder", + "icon": "videocam", + "source": screenRecorderTab + }, { + "id": SettingsPanel.Tab.About, + "label": "About", + "icon": "info", + "source": aboutTab + }) + + root.tabsModel = newTabs // Assign the generated list to the model + } // When the panel opens, choose the appropriate tab onOpened: { + updateTabsModel() + var initialIndex = SettingsPanel.Tab.General if (root.requestedTab !== null) { for (var i = 0; i < root.tabsModel.length; i++) { diff --git a/Modules/SettingsPanel/Tabs/WallpaperTab.qml b/Modules/SettingsPanel/Tabs/WallpaperTab.qml index 6696e8d..fcf715b 100644 --- a/Modules/SettingsPanel/Tabs/WallpaperTab.qml +++ b/Modules/SettingsPanel/Tabs/WallpaperTab.qml @@ -12,13 +12,14 @@ ColumnLayout { NToggle { label: "Enable Wallpaper Management" - description: "Let Quickshell manage your wallpaper. Disable this if you use an external wallpaper daemon like swww." + description: "Manage wallpapers with Noctalia. (Uncheck if you prefer using another application)." checked: Settings.data.wallpaper.enabled onToggled: checked => Settings.data.wallpaper.enabled = checked + Layout.bottomMargin: Style.marginL * scaling } ColumnLayout { - enabled: Settings.data.wallpaper.enabled + visible: Settings.data.wallpaper.enabled spacing: Style.marginL * scaling Layout.fillWidth: true NTextInput { @@ -77,12 +78,14 @@ ColumnLayout { } NDivider { + visible: Settings.data.wallpaper.enabled Layout.fillWidth: true Layout.topMargin: Style.marginXL * scaling Layout.bottomMargin: Style.marginXL * scaling } ColumnLayout { + visible: Settings.data.wallpaper.enabled spacing: Style.marginL * scaling Layout.fillWidth: true diff --git a/Modules/SidePanel/Cards/UtilitiesCard.qml b/Modules/SidePanel/Cards/UtilitiesCard.qml index 11ecced..6c8ce28 100644 --- a/Modules/SidePanel/Cards/UtilitiesCard.qml +++ b/Modules/SidePanel/Cards/UtilitiesCard.qml @@ -47,6 +47,7 @@ NBox { // Wallpaper NIconButton { + visible: Settings.data.wallpaper.enabled icon: "image" tooltipText: "Left click: Open wallpaper selector\nRight click: Set random wallpaper" onClicked: {