From 0c4c5fc146312f94c061eb67cba5308fe13e5682 Mon Sep 17 00:00:00 2001 From: bbedward Date: Tue, 7 Jul 2026 09:16:54 -0400 Subject: [PATCH] changelog: enable for 1.5 --- .../Modals/Changelog/ChangelogContent.qml | 109 ++++++++++-------- .../Modals/Changelog/ChangelogModal.qml | 2 +- quickshell/Services/ChangelogService.qml | 4 +- quickshell/Services/PopoutService.qml | 20 +++- 4 files changed, 83 insertions(+), 52 deletions(-) diff --git a/quickshell/Modals/Changelog/ChangelogContent.qml b/quickshell/Modals/Changelog/ChangelogContent.qml index 8fd312906..338181507 100644 --- a/quickshell/Modals/Changelog/ChangelogContent.qml +++ b/quickshell/Modals/Changelog/ChangelogContent.qml @@ -65,7 +65,7 @@ Column { StyledText { id: codenameText anchors.centerIn: parent - text: "Saffron Bloom" + text: "The Wolverine" font.pixelSize: Theme.fontSizeSmall font.weight: Font.Medium color: Theme.primary @@ -74,7 +74,7 @@ Column { } StyledText { - text: "New launcher, enhanced plugin system, KDE Connect, & more" + text: "Frame Mode, DankCalendar, Spotlight, & more" font.pixelSize: Theme.fontSizeMedium color: Theme.surfaceVariantText } @@ -108,77 +108,99 @@ Column { ChangelogFeatureCard { width: (parent.width - Theme.spacingS) / 2 - iconName: "space_dashboard" - title: "Dank Launcher V2" - description: "New capabilities & plugins" - onClicked: PopoutService.openDankLauncherV2() + iconName: "border_outer" + title: "Frame Mode" + description: "Connected shell surfaces" + onClicked: PopoutService.openSettingsWithTab("frame") } ChangelogFeatureCard { width: (parent.width - Theme.spacingS) / 2 - iconName: "smartphone" - title: "Phone Connect" - description: "KDE Connect & Valent" - onClicked: Qt.openUrlExternally("https://github.com/AvengeMedia/dms-plugins/tree/master/DankKDEConnect") + iconName: "calendar_month" + title: "DankCalendar" + description: "Native calendar & events" + onClicked: Qt.openUrlExternally("https://github.com/AvengeMedia/dankcalendar") } ChangelogFeatureCard { width: (parent.width - Theme.spacingS) / 2 - iconName: "monitor_heart" - title: "System Monitor" - description: "Redesigned process list" - onClicked: PopoutService.showProcessListModal() + iconName: "search" + title: "Spotlight" + description: "Lightweight launcher" + onClicked: PopoutService.openSpotlightBar() } ChangelogFeatureCard { width: (parent.width - Theme.spacingS) / 2 iconName: "window" title: "Window Rules" - description: "niri window rule manager" - visible: CompositorService.isNiri + description: "Rules for all compositors" onClicked: PopoutService.openSettingsWithTab("window_rules") } ChangelogFeatureCard { width: (parent.width - Theme.spacingS) / 2 - iconName: "notifications_active" - title: "Enhanced Notifications" - description: "Configurable rules & styling" - visible: !CompositorService.isNiri - onClicked: PopoutService.openSettingsWithTab("notifications") + iconName: "display_settings" + title: "Display Profiles" + description: "Auto-switch monitor layouts" + onClicked: PopoutService.openSettingsWithTab("display_config") } ChangelogFeatureCard { width: (parent.width - Theme.spacingS) / 2 - iconName: "dock_to_bottom" - title: "Dock Enhancements" - description: "Bar dock widget & more" - onClicked: PopoutService.openSettingsWithTab("dock") + iconName: "dvr" + title: "Multiplexer Launcher" + description: "Attach to tmux sessions" + onClicked: PopoutService.openSettingsWithTab("multiplexers") } ChangelogFeatureCard { width: (parent.width - Theme.spacingS) / 2 - iconName: "volume_up" - title: "Audio Aliases" - description: "Custom device names" - onClicked: PopoutService.openSettingsWithTab("audio") + iconName: "edit_note" + title: "Notepad Rewrite" + description: "Popout & tiling support" + onClicked: PopoutService.openNotepad() } ChangelogFeatureCard { width: (parent.width - Theme.spacingS) / 2 - iconName: "extension" - title: "Enhanced Plugin System" - description: "Enables new types of plugins" - onClicked: PopoutService.openSettingsWithTab("plugins") - } - - ChangelogFeatureCard { - width: (parent.width - Theme.spacingS) / 2 - iconName: "light_mode" - title: "Auto Light/Dark" - description: "Automatic mode switching" + iconName: "gradient" + title: "M3 Shadows" + description: "Reworked elevation system" onClicked: PopoutService.openSettingsWithTab("theme") } + + ChangelogFeatureCard { + width: (parent.width - Theme.spacingS) / 2 + iconName: "login" + title: "Greeter Enhancements" + description: "Settings GUI & multi-user" + onClicked: PopoutService.openSettingsWithTab("greeter") + } + + ChangelogFeatureCard { + width: (parent.width - Theme.spacingS) / 2 + iconName: "content_paste" + title: "Clipboard Filtering" + description: "Text, image & pinned filters" + onClicked: PopoutService.openSettingsWithTab("clipboard") + } + + ChangelogFeatureCard { + width: (parent.width - Theme.spacingS) / 2 + iconName: "restart_alt" + title: "XDG Autostart" + description: "Manage apps at login" + onClicked: PopoutService.openSettingsWithTab("autostart") + } + + ChangelogFeatureCard { + width: (parent.width - Theme.spacingS) / 2 + iconName: "apps" + title: "Default Apps" + description: "Set preferred applications" + onClicked: PopoutService.openSettingsWithTab("default_apps") + } } } @@ -230,12 +252,7 @@ Column { ChangelogUpgradeNote { width: parent.width - text: "Spotlight replaced by Dank Launcher V2 — check settings for new options" - } - - ChangelogUpgradeNote { - width: parent.width - text: "Plugin API updated — third-party plugins may need updates" + text: "App ID changed to com.danklinux.dms — update any compositor window rules targeting the old ID" } } } diff --git a/quickshell/Modals/Changelog/ChangelogModal.qml b/quickshell/Modals/Changelog/ChangelogModal.qml index 2c30f1e93..8f89d04a9 100644 --- a/quickshell/Modals/Changelog/ChangelogModal.qml +++ b/quickshell/Modals/Changelog/ChangelogModal.qml @@ -131,7 +131,7 @@ FloatingWindow { iconName: "open_in_new" backgroundColor: Theme.surfaceContainerHighest textColor: Theme.surfaceText - onClicked: Qt.openUrlExternally("https://danklinux.com/blog/v1-4-release") + onClicked: Qt.openUrlExternally("https://danklinux.com/blog/v1-5-release") } DankButton { diff --git a/quickshell/Services/ChangelogService.qml b/quickshell/Services/ChangelogService.qml index c6977ab7d..74e57ea9d 100644 --- a/quickshell/Services/ChangelogService.qml +++ b/quickshell/Services/ChangelogService.qml @@ -12,8 +12,8 @@ Singleton { id: root readonly property var log: Log.scoped("ChangelogService") - readonly property string currentVersion: "1.4" - readonly property bool changelogEnabled: false + readonly property string currentVersion: "1.5" + readonly property bool changelogEnabled: true readonly property string configDir: Paths.strip(StandardPaths.writableLocation(StandardPaths.ConfigLocation)) + "/DankMaterialShell" readonly property string changelogMarkerPath: configDir + "/.changelog-" + currentVersion diff --git a/quickshell/Services/PopoutService.qml b/quickshell/Services/PopoutService.qml index 2c1e1d385..5b9cb4d01 100644 --- a/quickshell/Services/PopoutService.qml +++ b/quickshell/Services/PopoutService.qml @@ -4,6 +4,7 @@ import QtQuick import Quickshell import Quickshell.Wayland import qs.Common +import qs.Services Singleton { id: root @@ -850,10 +851,23 @@ Singleton { } } + function notepadSlideoutForFocusedScreen() { + if (!notepadSlideouts || notepadSlideouts.length === 0) + return null; + const focused = BarWidgetService.getFocusedScreenName(); + if (focused) { + for (var i = 0; i < notepadSlideouts.length; i++) { + if (notepadSlideouts[i]?.modelData?.name === focused) + return notepadSlideouts[i]; + } + } + return notepadSlideouts[0]; + } + function openNotepadSlideout() { notepadPopout?.hide(); if (notepadSlideouts.length > 0) { - notepadSlideouts[0]?.show(); + notepadSlideoutForFocusedScreen()?.show(); } } @@ -892,7 +906,7 @@ Singleton { return; } if (notepadSlideouts.length > 0) { - notepadSlideouts[0]?.hide(); + notepadSlideoutForFocusedScreen()?.hide(); } } @@ -902,7 +916,7 @@ Singleton { return; } if (notepadSlideouts.length > 0) { - notepadSlideouts[0]?.toggle(); + notepadSlideoutForFocusedScreen()?.toggle(); } }