diff --git a/dots/.config/quickshell/ii/modules/common/Config.qml b/dots/.config/quickshell/ii/modules/common/Config.qml index 0ceb7dd1b..f2d058a18 100644 --- a/dots/.config/quickshell/ii/modules/common/Config.qml +++ b/dots/.config/quickshell/ii/modules/common/Config.qml @@ -148,6 +148,7 @@ Singleton { property JsonObject widgets: JsonObject { property JsonObject clock: JsonObject { property bool enable: true + property bool showOnlyWhenLocked: false property string placementStrategy: "leastBusy" // "free", "leastBusy", "mostBusy" property real x: 100 property real y: 100 @@ -274,7 +275,7 @@ Singleton { // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 property string superKey: "" property bool useMacSymbol: false - property bool splitButtons: true + property bool splitButtons: false property bool useMouseSymbol: false property bool useFnSymbol: false property JsonObject fontSize: JsonObject { @@ -380,7 +381,11 @@ Singleton { property JsonObject overlay: JsonObject { property bool openingZoomAnimation: true property bool darkenScreen: true - property real clickthroughOpacity: 0.7 + property real clickthroughOpacity: 0.8 + property JsonObject floatingImage: JsonObject { + property string imageSource: "https://cdn.discordapp.com/attachments/961693710968557598/1369635662390759434/image.gif?ex=6911cb1c&is=6910799c&hm=4450244066c0a7a6e5d2bdd195f47388eb5e7f9dd53d3931e99ad9642c638a00&" + property real scale: 0.5 + } } property JsonObject overview: JsonObject { diff --git a/dots/.config/quickshell/ii/modules/common/Directories.qml b/dots/.config/quickshell/ii/modules/common/Directories.qml index 59f3dab53..8e70506d3 100644 --- a/dots/.config/quickshell/ii/modules/common/Directories.qml +++ b/dots/.config/quickshell/ii/modules/common/Directories.qml @@ -24,6 +24,7 @@ Singleton { property string scriptPath: Quickshell.shellPath("scripts") property string favicons: FileUtils.trimFileProtocol(`${Directories.cache}/media/favicons`) property string coverArt: FileUtils.trimFileProtocol(`${Directories.cache}/media/coverart`) + property string tempImages: "/tmp/quickshell/media/images" property string booruPreviews: FileUtils.trimFileProtocol(`${Directories.cache}/media/boorus`) property string booruDownloads: FileUtils.trimFileProtocol(Directories.pictures + "/homework") property string booruDownloadsNsfw: FileUtils.trimFileProtocol(Directories.pictures + "/homework/🌶️") @@ -52,5 +53,6 @@ Singleton { Quickshell.execDetached(["bash", "-c", `rm -rf '${latexOutput}'; mkdir -p '${latexOutput}'`]) Quickshell.execDetached(["bash", "-c", `rm -rf '${cliphistDecode}'; mkdir -p '${cliphistDecode}'`]) Quickshell.execDetached(["mkdir", "-p", `${aiChats}`]) + Quickshell.execDetached(["rm", "-rf", `${tempImages}`]) } } diff --git a/dots/.config/quickshell/ii/modules/common/Persistent.qml b/dots/.config/quickshell/ii/modules/common/Persistent.qml index 171f150e6..212fc34b9 100644 --- a/dots/.config/quickshell/ii/modules/common/Persistent.qml +++ b/dots/.config/quickshell/ii/modules/common/Persistent.qml @@ -89,6 +89,22 @@ Singleton { property real width: 250 property real height: 100 } + property JsonObject floatingImage: JsonObject { + property bool pinned: false + property bool clickthrough: false + property real x: 1650 + property real y: 390 + property real width: 0 + property real height: 0 + } + property JsonObject fpsLimiter: JsonObject { + property bool pinned: false + property bool clickthrough: false + property real x: 1570 + property real y: 615 + property real width: 280 + property real height: 80 + } property JsonObject recorder: JsonObject { property bool pinned: false property bool clickthrough: false @@ -115,14 +131,6 @@ Singleton { property real height: 600 property int tabIndex: 0 } - property JsonObject fpsLimiter: JsonObject { - property bool pinned: false - property bool clickthrough: false - property real x: 1576 - property real y: 630 - property real width: 280 - property real height: 80 - } } property JsonObject timer: JsonObject { diff --git a/dots/.config/quickshell/ii/modules/common/utils/ImageDownloaderProcess.qml b/dots/.config/quickshell/ii/modules/common/utils/ImageDownloaderProcess.qml new file mode 100644 index 000000000..11ff92a6d --- /dev/null +++ b/dots/.config/quickshell/ii/modules/common/utils/ImageDownloaderProcess.qml @@ -0,0 +1,31 @@ +import QtQuick +import Quickshell +import Quickshell.Io +import qs.modules.common +import qs.modules.common.functions + +Process { + id: root + + signal done(string path, int width, int height); + required property string filePath; + required property string sourceUrl; + property string downloadUserAgent: Config.options?.networking.userAgent ?? "" + + function processFilePath() { + return StringUtils.shellSingleQuoteEscape(FileUtils.trimFileProtocol(filePath)); + } + + running: true + command: ["bash", "-c", + `mkdir -p $(dirname '${processFilePath(filePath)}'); [ -f '${processFilePath(filePath)}' ] || curl -sSL '${sourceUrl}' -o '${processFilePath(filePath)}' && magick identify -format '%w %h' '${processFilePath(filePath)}'[0]` + ] + stdout: StdioCollector { + id: imageSizeOutputCollector + onStreamFinished: { + const output = imageSizeOutputCollector.text.trim(); + const [width, height] = output.split(" ").map(Number); + root.done(root.filePath, width, height); + } + } +} diff --git a/dots/.config/quickshell/ii/modules/background/Background.qml b/dots/.config/quickshell/ii/modules/ii/background/Background.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/background/Background.qml rename to dots/.config/quickshell/ii/modules/ii/background/Background.qml index bb0e1a42f..68d8b1698 100644 --- a/dots/.config/quickshell/ii/modules/background/Background.qml +++ b/dots/.config/quickshell/ii/modules/ii/background/Background.qml @@ -14,9 +14,9 @@ import Quickshell.Io import Quickshell.Wayland import Quickshell.Hyprland -import qs.modules.background.widgets -import qs.modules.background.widgets.clock -import qs.modules.background.widgets.weather +import qs.modules.ii.background.widgets +import qs.modules.ii.background.widgets.clock +import qs.modules.ii.background.widgets.weather Variants { id: root diff --git a/dots/.config/quickshell/ii/modules/background/widgets/AbstractBackgroundWidget.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/AbstractBackgroundWidget.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/AbstractBackgroundWidget.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/AbstractBackgroundWidget.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/ClockWidget.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockWidget.qml similarity index 93% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/ClockWidget.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockWidget.qml index 84cc7e01b..cf8c739e0 100644 --- a/dots/.config/quickshell/ii/modules/background/widgets/clock/ClockWidget.qml +++ b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockWidget.qml @@ -6,7 +6,7 @@ import qs.modules.common import qs.modules.common.functions import qs.modules.common.widgets import qs.modules.common.widgets.widgetCanvas -import qs.modules.background.widgets +import qs.modules.ii.background.widgets AbstractBackgroundWidget { id: root @@ -16,8 +16,9 @@ AbstractBackgroundWidget { implicitHeight: contentColumn.implicitHeight implicitWidth: contentColumn.implicitWidth - property string clockStyle: Config.options.background.widgets.clock.style - property bool forceCenter: (GlobalStates.screenLocked && Config.options.lock.centerClock) + readonly property string clockStyle: Config.options.background.widgets.clock.style + readonly property bool forceCenter: (GlobalStates.screenLocked && Config.options.lock.centerClock) + readonly property bool shouldShow: (!Config.options.background.widgets.clock.showOnlyWhenLocked || GlobalStates.screenLocked) property bool wallpaperSafetyTriggered: false needsColText: clockStyle === "digital" x: forceCenter ? ((root.screenWidth - root.width) / 2) : targetX @@ -42,7 +43,7 @@ AbstractBackgroundWidget { FadeLoader { id: cookieClockLoader anchors.horizontalCenter: parent.horizontalCenter - shown: root.clockStyle === "cookie" + shown: root.clockStyle === "cookie" && (root.shouldShow) sourceComponent: Column { CookieClock { anchors.horizontalCenter: parent.horizontalCenter @@ -58,7 +59,7 @@ AbstractBackgroundWidget { FadeLoader { id: digitalClockLoader anchors.horizontalCenter: parent.horizontalCenter - shown: root.clockStyle === "digital" + shown: root.clockStyle === "digital" && (root.shouldShow) sourceComponent: ColumnLayout { id: clockColumn spacing: 6 diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/CookieClock.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/CookieClock.qml similarity index 98% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/CookieClock.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/CookieClock.qml index 1284e4299..7eaa04b98 100644 --- a/dots/.config/quickshell/ii/modules/background/widgets/clock/CookieClock.qml +++ b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/CookieClock.qml @@ -9,8 +9,8 @@ import QtQuick.Layouts import Qt5Compat.GraphicalEffects import Quickshell.Io -import qs.modules.background.widgets.clock.dateIndicator -import qs.modules.background.widgets.clock.minuteMarks +import qs.modules.ii.background.widgets.clock.dateIndicator +import qs.modules.ii.background.widgets.clock.minuteMarks Item { id: root diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/CookieQuote.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/CookieQuote.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/CookieQuote.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/CookieQuote.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/HourHand.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/HourHand.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/HourHand.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/HourHand.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/HourMarks.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/HourMarks.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/HourMarks.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/HourMarks.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/MinuteHand.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/MinuteHand.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/MinuteHand.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/MinuteHand.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/SecondHand.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/SecondHand.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/SecondHand.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/SecondHand.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/TimeColumn.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/TimeColumn.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/TimeColumn.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/TimeColumn.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/dateIndicator/BubbleDate.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/dateIndicator/BubbleDate.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/dateIndicator/BubbleDate.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/dateIndicator/BubbleDate.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/dateIndicator/DateIndicator.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/dateIndicator/DateIndicator.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/dateIndicator/DateIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/dateIndicator/DateIndicator.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/dateIndicator/RectangleDate.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/dateIndicator/RectangleDate.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/dateIndicator/RectangleDate.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/dateIndicator/RectangleDate.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/dateIndicator/RotatingDate.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/dateIndicator/RotatingDate.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/dateIndicator/RotatingDate.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/dateIndicator/RotatingDate.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/minuteMarks/BigHourNumbers.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/minuteMarks/BigHourNumbers.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/minuteMarks/BigHourNumbers.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/minuteMarks/BigHourNumbers.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/minuteMarks/Dots.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/minuteMarks/Dots.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/minuteMarks/Dots.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/minuteMarks/Dots.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/minuteMarks/Lines.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/minuteMarks/Lines.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/minuteMarks/Lines.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/minuteMarks/Lines.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/clock/minuteMarks/MinuteMarks.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/minuteMarks/MinuteMarks.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/background/widgets/clock/minuteMarks/MinuteMarks.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/clock/minuteMarks/MinuteMarks.qml diff --git a/dots/.config/quickshell/ii/modules/background/widgets/weather/WeatherWidget.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/weather/WeatherWidget.qml similarity index 97% rename from dots/.config/quickshell/ii/modules/background/widgets/weather/WeatherWidget.qml rename to dots/.config/quickshell/ii/modules/ii/background/widgets/weather/WeatherWidget.qml index 322772cbe..ef626700e 100644 --- a/dots/.config/quickshell/ii/modules/background/widgets/weather/WeatherWidget.qml +++ b/dots/.config/quickshell/ii/modules/ii/background/widgets/weather/WeatherWidget.qml @@ -5,7 +5,7 @@ import qs.modules.common import qs.modules.common.functions import qs.modules.common.widgets import qs.modules.common.widgets.widgetCanvas -import qs.modules.background.widgets +import qs.modules.ii.background.widgets AbstractBackgroundWidget { id: root diff --git a/dots/.config/quickshell/ii/modules/bar/ActiveWindow.qml b/dots/.config/quickshell/ii/modules/ii/bar/ActiveWindow.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/ActiveWindow.qml rename to dots/.config/quickshell/ii/modules/ii/bar/ActiveWindow.qml diff --git a/dots/.config/quickshell/ii/modules/bar/Bar.qml b/dots/.config/quickshell/ii/modules/ii/bar/Bar.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/Bar.qml rename to dots/.config/quickshell/ii/modules/ii/bar/Bar.qml diff --git a/dots/.config/quickshell/ii/modules/bar/BarContent.qml b/dots/.config/quickshell/ii/modules/ii/bar/BarContent.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/bar/BarContent.qml rename to dots/.config/quickshell/ii/modules/ii/bar/BarContent.qml index 03e01aa99..997e0209b 100644 --- a/dots/.config/quickshell/ii/modules/bar/BarContent.qml +++ b/dots/.config/quickshell/ii/modules/ii/bar/BarContent.qml @@ -1,4 +1,4 @@ -import qs.modules.bar.weather +import qs.modules.ii.bar.weather import QtQuick import QtQuick.Layouts import Quickshell @@ -178,7 +178,7 @@ Item { // Bar content region } BatteryIndicator { - visible: (root.useShortenedForm < 2 && UPower.displayDevice.isLaptopBattery) + visible: (root.useShortenedForm < 2 && Battery.available) Layout.alignment: Qt.AlignVCenter } } diff --git a/dots/.config/quickshell/ii/modules/bar/BarGroup.qml b/dots/.config/quickshell/ii/modules/ii/bar/BarGroup.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/BarGroup.qml rename to dots/.config/quickshell/ii/modules/ii/bar/BarGroup.qml diff --git a/dots/.config/quickshell/ii/modules/bar/BatteryIndicator.qml b/dots/.config/quickshell/ii/modules/ii/bar/BatteryIndicator.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/BatteryIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/bar/BatteryIndicator.qml diff --git a/dots/.config/quickshell/ii/modules/bar/BatteryPopup.qml b/dots/.config/quickshell/ii/modules/ii/bar/BatteryPopup.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/BatteryPopup.qml rename to dots/.config/quickshell/ii/modules/ii/bar/BatteryPopup.qml diff --git a/dots/.config/quickshell/ii/modules/bar/CircleUtilButton.qml b/dots/.config/quickshell/ii/modules/ii/bar/CircleUtilButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/CircleUtilButton.qml rename to dots/.config/quickshell/ii/modules/ii/bar/CircleUtilButton.qml diff --git a/dots/.config/quickshell/ii/modules/bar/ClockWidget.qml b/dots/.config/quickshell/ii/modules/ii/bar/ClockWidget.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/ClockWidget.qml rename to dots/.config/quickshell/ii/modules/ii/bar/ClockWidget.qml diff --git a/dots/.config/quickshell/ii/modules/bar/ClockWidgetPopup.qml b/dots/.config/quickshell/ii/modules/ii/bar/ClockWidgetPopup.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/ClockWidgetPopup.qml rename to dots/.config/quickshell/ii/modules/ii/bar/ClockWidgetPopup.qml diff --git a/dots/.config/quickshell/ii/modules/bar/HyprlandXkbIndicator.qml b/dots/.config/quickshell/ii/modules/ii/bar/HyprlandXkbIndicator.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/HyprlandXkbIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/bar/HyprlandXkbIndicator.qml diff --git a/dots/.config/quickshell/ii/modules/bar/LeftSidebarButton.qml b/dots/.config/quickshell/ii/modules/ii/bar/LeftSidebarButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/LeftSidebarButton.qml rename to dots/.config/quickshell/ii/modules/ii/bar/LeftSidebarButton.qml diff --git a/dots/.config/quickshell/ii/modules/bar/Media.qml b/dots/.config/quickshell/ii/modules/ii/bar/Media.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/Media.qml rename to dots/.config/quickshell/ii/modules/ii/bar/Media.qml diff --git a/dots/.config/quickshell/ii/modules/bar/NotificationUnreadCount.qml b/dots/.config/quickshell/ii/modules/ii/bar/NotificationUnreadCount.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/NotificationUnreadCount.qml rename to dots/.config/quickshell/ii/modules/ii/bar/NotificationUnreadCount.qml diff --git a/dots/.config/quickshell/ii/modules/bar/Resource.qml b/dots/.config/quickshell/ii/modules/ii/bar/Resource.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/Resource.qml rename to dots/.config/quickshell/ii/modules/ii/bar/Resource.qml diff --git a/dots/.config/quickshell/ii/modules/bar/Resources.qml b/dots/.config/quickshell/ii/modules/ii/bar/Resources.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/Resources.qml rename to dots/.config/quickshell/ii/modules/ii/bar/Resources.qml diff --git a/dots/.config/quickshell/ii/modules/bar/ResourcesPopup.qml b/dots/.config/quickshell/ii/modules/ii/bar/ResourcesPopup.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/ResourcesPopup.qml rename to dots/.config/quickshell/ii/modules/ii/bar/ResourcesPopup.qml diff --git a/dots/.config/quickshell/ii/modules/bar/ScrollHint.qml b/dots/.config/quickshell/ii/modules/ii/bar/ScrollHint.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/ScrollHint.qml rename to dots/.config/quickshell/ii/modules/ii/bar/ScrollHint.qml diff --git a/dots/.config/quickshell/ii/modules/bar/StyledPopup.qml b/dots/.config/quickshell/ii/modules/ii/bar/StyledPopup.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/StyledPopup.qml rename to dots/.config/quickshell/ii/modules/ii/bar/StyledPopup.qml diff --git a/dots/.config/quickshell/ii/modules/bar/StyledPopupHeaderRow.qml b/dots/.config/quickshell/ii/modules/ii/bar/StyledPopupHeaderRow.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/StyledPopupHeaderRow.qml rename to dots/.config/quickshell/ii/modules/ii/bar/StyledPopupHeaderRow.qml diff --git a/dots/.config/quickshell/ii/modules/bar/StyledPopupValueRow.qml b/dots/.config/quickshell/ii/modules/ii/bar/StyledPopupValueRow.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/StyledPopupValueRow.qml rename to dots/.config/quickshell/ii/modules/ii/bar/StyledPopupValueRow.qml diff --git a/dots/.config/quickshell/ii/modules/bar/SysTray.qml b/dots/.config/quickshell/ii/modules/ii/bar/SysTray.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/SysTray.qml rename to dots/.config/quickshell/ii/modules/ii/bar/SysTray.qml diff --git a/dots/.config/quickshell/ii/modules/bar/SysTrayItem.qml b/dots/.config/quickshell/ii/modules/ii/bar/SysTrayItem.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/SysTrayItem.qml rename to dots/.config/quickshell/ii/modules/ii/bar/SysTrayItem.qml diff --git a/dots/.config/quickshell/ii/modules/bar/SysTrayMenu.qml b/dots/.config/quickshell/ii/modules/ii/bar/SysTrayMenu.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/SysTrayMenu.qml rename to dots/.config/quickshell/ii/modules/ii/bar/SysTrayMenu.qml diff --git a/dots/.config/quickshell/ii/modules/bar/SysTrayMenuEntry.qml b/dots/.config/quickshell/ii/modules/ii/bar/SysTrayMenuEntry.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/SysTrayMenuEntry.qml rename to dots/.config/quickshell/ii/modules/ii/bar/SysTrayMenuEntry.qml diff --git a/dots/.config/quickshell/ii/modules/bar/UtilButtons.qml b/dots/.config/quickshell/ii/modules/ii/bar/UtilButtons.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/UtilButtons.qml rename to dots/.config/quickshell/ii/modules/ii/bar/UtilButtons.qml diff --git a/dots/.config/quickshell/ii/modules/bar/Workspaces.qml b/dots/.config/quickshell/ii/modules/ii/bar/Workspaces.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/Workspaces.qml rename to dots/.config/quickshell/ii/modules/ii/bar/Workspaces.qml diff --git a/dots/.config/quickshell/ii/modules/bar/weather/WeatherBar.qml b/dots/.config/quickshell/ii/modules/ii/bar/weather/WeatherBar.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/weather/WeatherBar.qml rename to dots/.config/quickshell/ii/modules/ii/bar/weather/WeatherBar.qml diff --git a/dots/.config/quickshell/ii/modules/bar/weather/WeatherCard.qml b/dots/.config/quickshell/ii/modules/ii/bar/weather/WeatherCard.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/bar/weather/WeatherCard.qml rename to dots/.config/quickshell/ii/modules/ii/bar/weather/WeatherCard.qml diff --git a/dots/.config/quickshell/ii/modules/bar/weather/WeatherPopup.qml b/dots/.config/quickshell/ii/modules/ii/bar/weather/WeatherPopup.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/bar/weather/WeatherPopup.qml rename to dots/.config/quickshell/ii/modules/ii/bar/weather/WeatherPopup.qml index 0c06932f7..85d9c1bac 100644 --- a/dots/.config/quickshell/ii/modules/bar/weather/WeatherPopup.qml +++ b/dots/.config/quickshell/ii/modules/ii/bar/weather/WeatherPopup.qml @@ -4,7 +4,7 @@ import qs.modules.common.widgets import QtQuick import QtQuick.Layouts -import qs.modules.bar +import qs.modules.ii.bar StyledPopup { id: root diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/Cheatsheet.qml b/dots/.config/quickshell/ii/modules/ii/cheatsheet/Cheatsheet.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/cheatsheet/Cheatsheet.qml rename to dots/.config/quickshell/ii/modules/ii/cheatsheet/Cheatsheet.qml diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/ii/cheatsheet/CheatsheetKeybinds.qml similarity index 93% rename from dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml rename to dots/.config/quickshell/ii/modules/ii/cheatsheet/CheatsheetKeybinds.qml index 1d7e3c4fe..e15a5b2ad 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/ii/cheatsheet/CheatsheetKeybinds.qml @@ -127,13 +127,12 @@ Item { const keybind = keybindSection.modelData.keybinds[i]; if (!Config.options.cheatsheet.splitButtons) { - - for (var j = 0; j < keybind.mods.length; j++) { - keybind.mods[j] = keySubstitutions[keybind.mods[j]] || keybind.mods[j]; - } - keybind.mods = [keybind.mods.join(' ') ] - keybind.mods[0] += !keyBlacklist.includes(keybind.key) && keybind.mods[0].length ? ' ' : '' - keybind.mods[0] += !keyBlacklist.includes(keybind.key) ? (keySubstitutions[keybind.key] || keybind.key) : '' + for (var j = 0; j < keybind.mods.length; j++) { + keybind.mods[j] = keySubstitutions[keybind.mods[j]] || keybind.mods[j]; + } + keybind.mods = [keybind.mods.join(' ') ] + keybind.mods[0] += !keyBlacklist.includes(keybind.key) && keybind.mods[0].length ? ' ' : '' + keybind.mods[0] += !keyBlacklist.includes(keybind.key) ? (keySubstitutions[keybind.key] || keybind.key) : '' } result.push({ diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetPeriodicTable.qml b/dots/.config/quickshell/ii/modules/ii/cheatsheet/CheatsheetPeriodicTable.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetPeriodicTable.qml rename to dots/.config/quickshell/ii/modules/ii/cheatsheet/CheatsheetPeriodicTable.qml diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/ElementTile.qml b/dots/.config/quickshell/ii/modules/ii/cheatsheet/ElementTile.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/cheatsheet/ElementTile.qml rename to dots/.config/quickshell/ii/modules/ii/cheatsheet/ElementTile.qml diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/periodic_table.js b/dots/.config/quickshell/ii/modules/ii/cheatsheet/periodic_table.js similarity index 100% rename from dots/.config/quickshell/ii/modules/cheatsheet/periodic_table.js rename to dots/.config/quickshell/ii/modules/ii/cheatsheet/periodic_table.js diff --git a/dots/.config/quickshell/ii/modules/dock/Dock.qml b/dots/.config/quickshell/ii/modules/ii/dock/Dock.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/dock/Dock.qml rename to dots/.config/quickshell/ii/modules/ii/dock/Dock.qml diff --git a/dots/.config/quickshell/ii/modules/dock/DockAppButton.qml b/dots/.config/quickshell/ii/modules/ii/dock/DockAppButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/dock/DockAppButton.qml rename to dots/.config/quickshell/ii/modules/ii/dock/DockAppButton.qml diff --git a/dots/.config/quickshell/ii/modules/dock/DockApps.qml b/dots/.config/quickshell/ii/modules/ii/dock/DockApps.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/dock/DockApps.qml rename to dots/.config/quickshell/ii/modules/ii/dock/DockApps.qml diff --git a/dots/.config/quickshell/ii/modules/dock/DockButton.qml b/dots/.config/quickshell/ii/modules/ii/dock/DockButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/dock/DockButton.qml rename to dots/.config/quickshell/ii/modules/ii/dock/DockButton.qml diff --git a/dots/.config/quickshell/ii/modules/dock/DockSeparator.qml b/dots/.config/quickshell/ii/modules/ii/dock/DockSeparator.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/dock/DockSeparator.qml rename to dots/.config/quickshell/ii/modules/ii/dock/DockSeparator.qml diff --git a/dots/.config/quickshell/ii/modules/lock/Lock.qml b/dots/.config/quickshell/ii/modules/ii/lock/Lock.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/lock/Lock.qml rename to dots/.config/quickshell/ii/modules/ii/lock/Lock.qml index 4266d03f7..e942f4fda 100644 --- a/dots/.config/quickshell/ii/modules/lock/Lock.qml +++ b/dots/.config/quickshell/ii/modules/ii/lock/Lock.qml @@ -3,7 +3,6 @@ import qs import qs.services import qs.modules.common import qs.modules.common.functions -import qs.modules.lock import QtQuick import Quickshell import Quickshell.Io diff --git a/dots/.config/quickshell/ii/modules/lock/LockContext.qml b/dots/.config/quickshell/ii/modules/ii/lock/LockContext.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/lock/LockContext.qml rename to dots/.config/quickshell/ii/modules/ii/lock/LockContext.qml diff --git a/dots/.config/quickshell/ii/modules/lock/LockSurface.qml b/dots/.config/quickshell/ii/modules/ii/lock/LockSurface.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/lock/LockSurface.qml rename to dots/.config/quickshell/ii/modules/ii/lock/LockSurface.qml index 526a7d3b4..da3e17627 100644 --- a/dots/.config/quickshell/ii/modules/lock/LockSurface.qml +++ b/dots/.config/quickshell/ii/modules/ii/lock/LockSurface.qml @@ -7,7 +7,7 @@ import qs.services import qs.modules.common import qs.modules.common.widgets import qs.modules.common.functions -import qs.modules.bar as Bar +import qs.modules.ii.bar as Bar import Quickshell import Quickshell.Services.SystemTray @@ -288,7 +288,7 @@ MouseArea { opacity: root.toolbarOpacity IconAndTextPair { - visible: UPower.displayDevice.isLaptopBattery + visible: Battery.available icon: Battery.isCharging ? "bolt" : "battery_android_full" text: Math.round(Battery.percentage * 100) color: (Battery.isLow && !Battery.isCharging) ? Appearance.colors.colError : Appearance.colors.colOnSurfaceVariant diff --git a/dots/.config/quickshell/ii/modules/lock/PasswordChars.qml b/dots/.config/quickshell/ii/modules/ii/lock/PasswordChars.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/lock/PasswordChars.qml rename to dots/.config/quickshell/ii/modules/ii/lock/PasswordChars.qml diff --git a/dots/.config/quickshell/ii/modules/lock/pam/fprintd.conf b/dots/.config/quickshell/ii/modules/ii/lock/pam/fprintd.conf similarity index 100% rename from dots/.config/quickshell/ii/modules/lock/pam/fprintd.conf rename to dots/.config/quickshell/ii/modules/ii/lock/pam/fprintd.conf diff --git a/dots/.config/quickshell/ii/modules/mediaControls/MediaControls.qml b/dots/.config/quickshell/ii/modules/ii/mediaControls/MediaControls.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/mediaControls/MediaControls.qml rename to dots/.config/quickshell/ii/modules/ii/mediaControls/MediaControls.qml index 75dca5926..fa60e0474 100644 --- a/dots/.config/quickshell/ii/modules/mediaControls/MediaControls.qml +++ b/dots/.config/quickshell/ii/modules/ii/mediaControls/MediaControls.qml @@ -1,8 +1,8 @@ pragma ComponentBehavior: Bound +import qs +import qs.services import qs.modules.common import qs.modules.common.widgets -import qs.services -import qs import qs.modules.common.functions import QtQuick import QtQuick.Layouts diff --git a/dots/.config/quickshell/ii/modules/mediaControls/PlayerControl.qml b/dots/.config/quickshell/ii/modules/ii/mediaControls/PlayerControl.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/mediaControls/PlayerControl.qml rename to dots/.config/quickshell/ii/modules/ii/mediaControls/PlayerControl.qml diff --git a/dots/.config/quickshell/ii/modules/notificationPopup/NotificationPopup.qml b/dots/.config/quickshell/ii/modules/ii/notificationPopup/NotificationPopup.qml similarity index 98% rename from dots/.config/quickshell/ii/modules/notificationPopup/NotificationPopup.qml rename to dots/.config/quickshell/ii/modules/ii/notificationPopup/NotificationPopup.qml index d954cbfb1..6ce998146 100644 --- a/dots/.config/quickshell/ii/modules/notificationPopup/NotificationPopup.qml +++ b/dots/.config/quickshell/ii/modules/ii/notificationPopup/NotificationPopup.qml @@ -4,7 +4,6 @@ import qs.modules.common.widgets import qs.services import QtQuick import QtQuick.Controls -import QtQuick.Layouts import Quickshell import Quickshell.Wayland import Quickshell.Hyprland diff --git a/dots/.config/quickshell/ii/modules/onScreenDisplay/OnScreenDisplay.qml b/dots/.config/quickshell/ii/modules/ii/onScreenDisplay/OnScreenDisplay.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/onScreenDisplay/OnScreenDisplay.qml rename to dots/.config/quickshell/ii/modules/ii/onScreenDisplay/OnScreenDisplay.qml diff --git a/dots/.config/quickshell/ii/modules/onScreenDisplay/OsdValueIndicator.qml b/dots/.config/quickshell/ii/modules/ii/onScreenDisplay/OsdValueIndicator.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/onScreenDisplay/OsdValueIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/onScreenDisplay/OsdValueIndicator.qml diff --git a/dots/.config/quickshell/ii/modules/onScreenDisplay/indicators/BrightnessIndicator.qml b/dots/.config/quickshell/ii/modules/ii/onScreenDisplay/indicators/BrightnessIndicator.qml similarity index 92% rename from dots/.config/quickshell/ii/modules/onScreenDisplay/indicators/BrightnessIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/onScreenDisplay/indicators/BrightnessIndicator.qml index 6041f8cfa..fbdbd7152 100644 --- a/dots/.config/quickshell/ii/modules/onScreenDisplay/indicators/BrightnessIndicator.qml +++ b/dots/.config/quickshell/ii/modules/ii/onScreenDisplay/indicators/BrightnessIndicator.qml @@ -2,7 +2,7 @@ import qs.services import QtQuick import Quickshell import Quickshell.Hyprland -import qs.modules.onScreenDisplay +import qs.modules.ii.onScreenDisplay OsdValueIndicator { id: root diff --git a/dots/.config/quickshell/ii/modules/onScreenDisplay/indicators/VolumeIndicator.qml b/dots/.config/quickshell/ii/modules/ii/onScreenDisplay/indicators/VolumeIndicator.qml similarity index 85% rename from dots/.config/quickshell/ii/modules/onScreenDisplay/indicators/VolumeIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/onScreenDisplay/indicators/VolumeIndicator.qml index 487befdac..da8a690b4 100644 --- a/dots/.config/quickshell/ii/modules/onScreenDisplay/indicators/VolumeIndicator.qml +++ b/dots/.config/quickshell/ii/modules/ii/onScreenDisplay/indicators/VolumeIndicator.qml @@ -1,6 +1,6 @@ import qs.services import QtQuick -import qs.modules.onScreenDisplay +import qs.modules.ii.onScreenDisplay OsdValueIndicator { id: osdValues diff --git a/dots/.config/quickshell/ii/modules/onScreenKeyboard/OnScreenKeyboard.qml b/dots/.config/quickshell/ii/modules/ii/onScreenKeyboard/OnScreenKeyboard.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/onScreenKeyboard/OnScreenKeyboard.qml rename to dots/.config/quickshell/ii/modules/ii/onScreenKeyboard/OnScreenKeyboard.qml diff --git a/dots/.config/quickshell/ii/modules/onScreenKeyboard/OskContent.qml b/dots/.config/quickshell/ii/modules/ii/onScreenKeyboard/OskContent.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/onScreenKeyboard/OskContent.qml rename to dots/.config/quickshell/ii/modules/ii/onScreenKeyboard/OskContent.qml diff --git a/dots/.config/quickshell/ii/modules/onScreenKeyboard/OskKey.qml b/dots/.config/quickshell/ii/modules/ii/onScreenKeyboard/OskKey.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/onScreenKeyboard/OskKey.qml rename to dots/.config/quickshell/ii/modules/ii/onScreenKeyboard/OskKey.qml diff --git a/dots/.config/quickshell/ii/modules/onScreenKeyboard/layouts.js b/dots/.config/quickshell/ii/modules/ii/onScreenKeyboard/layouts.js similarity index 100% rename from dots/.config/quickshell/ii/modules/onScreenKeyboard/layouts.js rename to dots/.config/quickshell/ii/modules/ii/onScreenKeyboard/layouts.js diff --git a/dots/.config/quickshell/ii/modules/overlay/Overlay.qml b/dots/.config/quickshell/ii/modules/ii/overlay/Overlay.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/overlay/Overlay.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/Overlay.qml diff --git a/dots/.config/quickshell/ii/modules/ii/overlay/OverlayBackground.qml b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayBackground.qml new file mode 100644 index 000000000..205307cab --- /dev/null +++ b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayBackground.qml @@ -0,0 +1,8 @@ +import QtQuick +import qs.modules.common + +Rectangle { + id: contentItem + anchors.fill: parent + color: Appearance.m3colors.m3surfaceContainer +} diff --git a/dots/.config/quickshell/ii/modules/overlay/OverlayContent.qml b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayContent.qml similarity index 98% rename from dots/.config/quickshell/ii/modules/overlay/OverlayContent.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/OverlayContent.qml index 546962185..9c8340c9c 100644 --- a/dots/.config/quickshell/ii/modules/overlay/OverlayContent.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayContent.qml @@ -8,8 +8,6 @@ import qs.modules.common import qs.modules.common.widgets import qs.modules.common.widgets.widgetCanvas -import qs.modules.overlay.crosshair - Item { id: root focus: true diff --git a/dots/.config/quickshell/ii/modules/overlay/OverlayContext.qml b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayContext.qml similarity index 94% rename from dots/.config/quickshell/ii/modules/overlay/OverlayContext.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/OverlayContext.qml index b228deda6..15e1ef91b 100644 --- a/dots/.config/quickshell/ii/modules/overlay/OverlayContext.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayContext.qml @@ -6,11 +6,12 @@ Singleton { id: root readonly property list availableWidgets: [ - { identifier: "recorder", materialSymbol: "screen_record" }, - { identifier: "volumeMixer", materialSymbol: "volume_up" }, { identifier: "crosshair", materialSymbol: "point_scan" }, { identifier: "fpsLimiter", materialSymbol: "animation" }, - { identifier: "resources", materialSymbol: "browse_activity" } + { identifier: "floatingImage", materialSymbol: "imagesmode" }, + { identifier: "recorder", materialSymbol: "screen_record" }, + { identifier: "resources", materialSymbol: "browse_activity" }, + { identifier: "volumeMixer", materialSymbol: "volume_up" }, ] readonly property bool hasPinnedWidgets: root.pinnedWidgetIdentifiers.length > 0 diff --git a/dots/.config/quickshell/ii/modules/overlay/OverlayTaskbar.qml b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayTaskbar.qml similarity index 72% rename from dots/.config/quickshell/ii/modules/overlay/OverlayTaskbar.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/OverlayTaskbar.qml index 65bb2a27e..232903474 100644 --- a/dots/.config/quickshell/ii/modules/overlay/OverlayTaskbar.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayTaskbar.qml @@ -49,8 +49,13 @@ Rectangle { } Separator {} - TimeWidget {} + Separator { + visible: Battery.available + } + BatteryWidget { + visible: Battery.available + } } component Separator: Rectangle { @@ -67,12 +72,44 @@ Rectangle { Layout.rightMargin: 6 text: DateTime.time + color: Appearance.colors.colOnSurface font { family: Appearance.font.family.numbers variableAxes: Appearance.font.variableAxes.numbers pixelSize: 22 } } + + component BatteryWidget: Row { + id: batteryWidget + Layout.alignment: Qt.AlignVCenter + Layout.leftMargin: 6 + Layout.rightMargin: 6 + spacing: 2 + property color colText: Battery.isLowAndNotCharging ? Appearance.colors.colError : Appearance.colors.colOnSurface + + MaterialSymbol { + id: boltIcon + anchors.verticalCenter: parent.verticalCenter + fill: 1 + text: Battery.isCharging ? "bolt" : "battery_android_full" + color: batteryWidget.colText + iconSize: 24 + animateChange: true + } + + StyledText { + id: batteryText + anchors.verticalCenter: parent.verticalCenter + text: Math.round(Battery.percentage * 100) + "%" + color: batteryWidget.colText + font { + family: Appearance.font.family.numbers + variableAxes: Appearance.font.variableAxes.numbers + pixelSize: 18 + } + } + } component WidgetButton: RippleButton { id: widgetButton diff --git a/dots/.config/quickshell/ii/modules/overlay/OverlayWidgetDelegateChooser.qml b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayWidgetDelegateChooser.qml similarity index 64% rename from dots/.config/quickshell/ii/modules/overlay/OverlayWidgetDelegateChooser.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/OverlayWidgetDelegateChooser.qml index fc75d1455..6e4bc6522 100644 --- a/dots/.config/quickshell/ii/modules/overlay/OverlayWidgetDelegateChooser.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/OverlayWidgetDelegateChooser.qml @@ -6,19 +6,21 @@ import QtQuick import QtQuick.Layouts import Quickshell import Quickshell.Bluetooth -import qs.modules.overlay.crosshair -import qs.modules.overlay.volumeMixer -import qs.modules.overlay.fpsLimiter -import qs.modules.overlay.recorder -import qs.modules.overlay.resources +import qs.modules.ii.overlay.crosshair +import qs.modules.ii.overlay.volumeMixer +import qs.modules.ii.overlay.fpsLimiter +import qs.modules.ii.overlay.recorder +import qs.modules.ii.overlay.resources +import qs.modules.ii.overlay.floatingImage DelegateChooser { id: root role: "identifier" DelegateChoice { roleValue: "crosshair"; Crosshair {} } - DelegateChoice { roleValue: "volumeMixer"; VolumeMixer {} } + DelegateChoice { roleValue: "floatingImage"; FloatingImage {} } DelegateChoice { roleValue: "fpsLimiter"; FpsLimiter {} } DelegateChoice { roleValue: "recorder"; Recorder {} } DelegateChoice { roleValue: "resources"; Resources {} } + DelegateChoice { roleValue: "volumeMixer"; VolumeMixer {} } } diff --git a/dots/.config/quickshell/ii/modules/overlay/StyledOverlayWidget.qml b/dots/.config/quickshell/ii/modules/ii/overlay/StyledOverlayWidget.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/overlay/StyledOverlayWidget.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/StyledOverlayWidget.qml index 9e13ca934..949cd2380 100644 --- a/dots/.config/quickshell/ii/modules/overlay/StyledOverlayWidget.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/StyledOverlayWidget.qml @@ -33,8 +33,8 @@ AbstractOverlayWidget { property string title: identifier.replace(/([A-Z])/g, " $1").replace(/^./, function(str){ return str.toUpperCase(); }) property var persistentStateEntry: Persistent.states.overlay[identifier] property real radius: Appearance.rounding.windowRounding - property real minimumWidth: 250 - property real minimumHeight: 100 + property real minimumWidth: contentItem.implicitWidth + property real minimumHeight: contentItem.implicitHeight property real resizeMargin: 8 property real padding: 6 property real contentRadius: radius - padding @@ -238,8 +238,8 @@ AbstractOverlayWidget { } StyledText { - text: root.title Layout.fillWidth: true + text: root.title elide: Text.ElideRight } diff --git a/dots/.config/quickshell/ii/modules/overlay/crosshair/Crosshair.qml b/dots/.config/quickshell/ii/modules/ii/overlay/crosshair/Crosshair.qml similarity index 93% rename from dots/.config/quickshell/ii/modules/overlay/crosshair/Crosshair.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/crosshair/Crosshair.qml index ea2f5a1ad..b68884421 100644 --- a/dots/.config/quickshell/ii/modules/overlay/crosshair/Crosshair.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/crosshair/Crosshair.qml @@ -2,7 +2,7 @@ import QtQuick import QtQuick.Layouts import Quickshell import qs.modules.common -import qs.modules.overlay +import qs.modules.ii.overlay StyledOverlayWidget { id: root diff --git a/dots/.config/quickshell/ii/modules/overlay/crosshair/CrosshairContent.qml b/dots/.config/quickshell/ii/modules/ii/overlay/crosshair/CrosshairContent.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/overlay/crosshair/CrosshairContent.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/crosshair/CrosshairContent.qml diff --git a/dots/.config/quickshell/ii/modules/ii/overlay/floatingImage/FloatingImage.qml b/dots/.config/quickshell/ii/modules/ii/overlay/floatingImage/FloatingImage.qml new file mode 100644 index 000000000..081f9eaad --- /dev/null +++ b/dots/.config/quickshell/ii/modules/ii/overlay/floatingImage/FloatingImage.qml @@ -0,0 +1,95 @@ +pragma ComponentBehavior: Bound +import QtQuick +import Qt5Compat.GraphicalEffects +import qs.modules.common +import qs.modules.common.functions +import qs.modules.common.utils +import qs.modules.ii.overlay + +StyledOverlayWidget { + id: root + showClickabilityButton: false + resizable: false + clickthrough: true + + property string imageSource: Config.options.overlay.floatingImage.imageSource + property real scaleFactor: Config.options.overlay.floatingImage.scale + property int imageWidth: 0 + property int imageHeight: 0 + + // Override to always save 0 size + function savePosition(xPos = root.x, yPos = root.y, width = 0, height = 0) { + root.persistentStateEntry.x = Math.round(xPos); + root.persistentStateEntry.y = Math.round(yPos); + root.persistentStateEntry.width = 0 + root.persistentStateEntry.height = 0 + } + + onImageSourceChanged: { + imageDownloader.running = false; + imageDownloader.sourceUrl = root.imageSource; + imageDownloader.filePath = Qt.resolvedUrl(Directories.tempImages + "/" + Qt.md5(root.imageSource)) + imageDownloader.running = true; + } + onScaleFactorChanged: { + setSize(); + } + + function setSize() { + bg.implicitWidth = root.imageWidth * root.scaleFactor; + bg.implicitHeight = root.imageHeight * root.scaleFactor; + } + + contentItem: OverlayBackground { + id: bg + color: ColorUtils.transparentize(Appearance.m3colors.m3surfaceContainer, root.actuallyPinned ? 1 : 0) + radius: root.contentRadius + + WheelHandler { + onWheel: (event) => { + if (event.angleDelta.y < 0) { + Config.options.overlay.floatingImage.scale = Math.max(0.1, Config.options.overlay.floatingImage.scale - 0.1); + } + else if (event.angleDelta.y > 0) { + Config.options.overlay.floatingImage.scale = Math.min(5.0, Config.options.overlay.floatingImage.scale + 0.1); + } + } + acceptedDevices: PointerDevice.Mouse | PointerDevice.TouchPad + } + + layer.enabled: true + layer.effect: OpacityMask { + maskSource: Rectangle { + width: bg.width + height: bg.height + radius: bg.radius + } + } + + AnimatedImage { + id: animatedImage + anchors.centerIn: parent + width: root.imageWidth * root.scaleFactor + height: root.imageHeight * root.scaleFactor + sourceSize.width: width + sourceSize.height: height + + playing: visible + asynchronous: true + source: "" + + ImageDownloaderProcess { + id: imageDownloader + filePath: Qt.resolvedUrl(Directories.tempImages + "/" + Qt.md5(root.imageSource)) + sourceUrl: root.imageSource + + onDone: (path, width, height) => { + root.imageWidth = width; + root.imageHeight = height; + root.setSize(); + animatedImage.source = path; + } + } + } + } +} diff --git a/dots/.config/quickshell/ii/modules/overlay/fpsLimiter/FpsLimiter.qml b/dots/.config/quickshell/ii/modules/ii/overlay/fpsLimiter/FpsLimiter.qml similarity index 89% rename from dots/.config/quickshell/ii/modules/overlay/fpsLimiter/FpsLimiter.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/fpsLimiter/FpsLimiter.qml index 65711c6d2..857a423df 100644 --- a/dots/.config/quickshell/ii/modules/overlay/fpsLimiter/FpsLimiter.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/fpsLimiter/FpsLimiter.qml @@ -1,7 +1,7 @@ import QtQuick import Quickshell import qs.modules.common -import qs.modules.overlay +import qs.modules.ii.overlay StyledOverlayWidget { id: root diff --git a/dots/.config/quickshell/ii/modules/overlay/fpsLimiter/FpsLimiterContent.qml b/dots/.config/quickshell/ii/modules/ii/overlay/fpsLimiter/FpsLimiterContent.qml similarity index 96% rename from dots/.config/quickshell/ii/modules/overlay/fpsLimiter/FpsLimiterContent.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/fpsLimiter/FpsLimiterContent.qml index a67bf40c1..def4a6c60 100644 --- a/dots/.config/quickshell/ii/modules/overlay/fpsLimiter/FpsLimiterContent.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/fpsLimiter/FpsLimiterContent.qml @@ -6,16 +6,15 @@ import Quickshell import Quickshell.Io import qs.modules.common import qs.modules.common.widgets +import qs.modules.ii.overlay -Rectangle { +OverlayBackground { id: root enum State { Normal, Success, Error } - anchors.fill: parent property real padding: 16 property var currentState: FpsLimiterContent.State.Normal - color: Appearance.m3colors.m3surfaceContainer implicitWidth: content.implicitWidth + (padding * 2) implicitHeight: content.implicitHeight + (padding * 2) diff --git a/dots/.config/quickshell/ii/modules/overlay/recorder/Recorder.qml b/dots/.config/quickshell/ii/modules/ii/overlay/recorder/Recorder.qml similarity index 96% rename from dots/.config/quickshell/ii/modules/overlay/recorder/Recorder.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/recorder/Recorder.qml index 05c0fa680..2c70b312e 100644 --- a/dots/.config/quickshell/ii/modules/overlay/recorder/Recorder.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/recorder/Recorder.qml @@ -5,18 +5,16 @@ import Quickshell import qs import qs.modules.common import qs.modules.common.widgets -import qs.modules.overlay +import qs.modules.ii.overlay StyledOverlayWidget { id: root minimumWidth: 310 minimumHeight: 130 - contentItem: Rectangle { + contentItem: OverlayBackground { id: contentItem - anchors.fill: parent radius: root.contentRadius - color: Appearance.m3colors.m3surfaceContainer property real padding: 8 ColumnLayout { id: contentColumn diff --git a/dots/.config/quickshell/ii/modules/overlay/resources/Resources.qml b/dots/.config/quickshell/ii/modules/ii/overlay/resources/Resources.qml similarity index 96% rename from dots/.config/quickshell/ii/modules/overlay/resources/Resources.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/resources/Resources.qml index 0dcd6d0f6..8bec779bd 100644 --- a/dots/.config/quickshell/ii/modules/overlay/resources/Resources.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/resources/Resources.qml @@ -10,7 +10,7 @@ import qs import qs.services import qs.modules.common import qs.modules.common.widgets -import qs.modules.overlay +import qs.modules.ii.overlay StyledOverlayWidget { id: root @@ -37,10 +37,8 @@ StyledOverlayWidget { }, ] - contentItem: Rectangle { + contentItem: OverlayBackground { id: contentItem - anchors.fill: parent - color: Appearance.m3colors.m3surfaceContainer radius: root.contentRadius property real padding: 4 ColumnLayout { diff --git a/dots/.config/quickshell/ii/modules/overlay/volumeMixer/VolumeMixer.qml b/dots/.config/quickshell/ii/modules/ii/overlay/volumeMixer/VolumeMixer.qml similarity index 92% rename from dots/.config/quickshell/ii/modules/overlay/volumeMixer/VolumeMixer.qml rename to dots/.config/quickshell/ii/modules/ii/overlay/volumeMixer/VolumeMixer.qml index 228ea575d..9a93e80b5 100644 --- a/dots/.config/quickshell/ii/modules/overlay/volumeMixer/VolumeMixer.qml +++ b/dots/.config/quickshell/ii/modules/ii/overlay/volumeMixer/VolumeMixer.qml @@ -5,17 +5,15 @@ import Quickshell import qs.services import qs.modules.common import qs.modules.common.widgets -import qs.modules.overlay -import qs.modules.sidebarRight.volumeMixer +import qs.modules.ii.overlay +import qs.modules.ii.sidebarRight.volumeMixer StyledOverlayWidget { id: root minimumWidth: 300 minimumHeight: 380 - contentItem: Rectangle { - anchors.fill: parent - color: Appearance.m3colors.m3surfaceContainer + contentItem: OverlayBackground { radius: root.contentRadius property real padding: 6 diff --git a/dots/.config/quickshell/ii/modules/overview/Overview.qml b/dots/.config/quickshell/ii/modules/ii/overview/Overview.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/overview/Overview.qml rename to dots/.config/quickshell/ii/modules/ii/overview/Overview.qml diff --git a/dots/.config/quickshell/ii/modules/overview/OverviewWidget.qml b/dots/.config/quickshell/ii/modules/ii/overview/OverviewWidget.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/overview/OverviewWidget.qml rename to dots/.config/quickshell/ii/modules/ii/overview/OverviewWidget.qml diff --git a/dots/.config/quickshell/ii/modules/overview/OverviewWindow.qml b/dots/.config/quickshell/ii/modules/ii/overview/OverviewWindow.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/overview/OverviewWindow.qml rename to dots/.config/quickshell/ii/modules/ii/overview/OverviewWindow.qml diff --git a/dots/.config/quickshell/ii/modules/overview/SearchBar.qml b/dots/.config/quickshell/ii/modules/ii/overview/SearchBar.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/overview/SearchBar.qml rename to dots/.config/quickshell/ii/modules/ii/overview/SearchBar.qml diff --git a/dots/.config/quickshell/ii/modules/overview/SearchItem.qml b/dots/.config/quickshell/ii/modules/ii/overview/SearchItem.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/overview/SearchItem.qml rename to dots/.config/quickshell/ii/modules/ii/overview/SearchItem.qml diff --git a/dots/.config/quickshell/ii/modules/overview/SearchWidget.qml b/dots/.config/quickshell/ii/modules/ii/overview/SearchWidget.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/overview/SearchWidget.qml rename to dots/.config/quickshell/ii/modules/ii/overview/SearchWidget.qml diff --git a/dots/.config/quickshell/ii/modules/polkit/Polkit.qml b/dots/.config/quickshell/ii/modules/ii/polkit/Polkit.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/polkit/Polkit.qml rename to dots/.config/quickshell/ii/modules/ii/polkit/Polkit.qml diff --git a/dots/.config/quickshell/ii/modules/polkit/PolkitContent.qml b/dots/.config/quickshell/ii/modules/ii/polkit/PolkitContent.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/polkit/PolkitContent.qml rename to dots/.config/quickshell/ii/modules/ii/polkit/PolkitContent.qml diff --git a/dots/.config/quickshell/ii/modules/regionSelector/CircleSelectionDetails.qml b/dots/.config/quickshell/ii/modules/ii/regionSelector/CircleSelectionDetails.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/regionSelector/CircleSelectionDetails.qml rename to dots/.config/quickshell/ii/modules/ii/regionSelector/CircleSelectionDetails.qml diff --git a/dots/.config/quickshell/ii/modules/regionSelector/OptionsToolbar.qml b/dots/.config/quickshell/ii/modules/ii/regionSelector/OptionsToolbar.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/regionSelector/OptionsToolbar.qml rename to dots/.config/quickshell/ii/modules/ii/regionSelector/OptionsToolbar.qml diff --git a/dots/.config/quickshell/ii/modules/regionSelector/RectCornersSelectionDetails.qml b/dots/.config/quickshell/ii/modules/ii/regionSelector/RectCornersSelectionDetails.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/regionSelector/RectCornersSelectionDetails.qml rename to dots/.config/quickshell/ii/modules/ii/regionSelector/RectCornersSelectionDetails.qml diff --git a/dots/.config/quickshell/ii/modules/regionSelector/RegionFunctions.qml b/dots/.config/quickshell/ii/modules/ii/regionSelector/RegionFunctions.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/regionSelector/RegionFunctions.qml rename to dots/.config/quickshell/ii/modules/ii/regionSelector/RegionFunctions.qml diff --git a/dots/.config/quickshell/ii/modules/regionSelector/RegionSelection.qml b/dots/.config/quickshell/ii/modules/ii/regionSelector/RegionSelection.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/regionSelector/RegionSelection.qml rename to dots/.config/quickshell/ii/modules/ii/regionSelector/RegionSelection.qml diff --git a/dots/.config/quickshell/ii/modules/regionSelector/RegionSelector.qml b/dots/.config/quickshell/ii/modules/ii/regionSelector/RegionSelector.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/regionSelector/RegionSelector.qml rename to dots/.config/quickshell/ii/modules/ii/regionSelector/RegionSelector.qml diff --git a/dots/.config/quickshell/ii/modules/regionSelector/TargetRegion.qml b/dots/.config/quickshell/ii/modules/ii/regionSelector/TargetRegion.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/regionSelector/TargetRegion.qml rename to dots/.config/quickshell/ii/modules/ii/regionSelector/TargetRegion.qml diff --git a/dots/.config/quickshell/ii/modules/screenCorners/ScreenCorners.qml b/dots/.config/quickshell/ii/modules/ii/screenCorners/ScreenCorners.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/screenCorners/ScreenCorners.qml rename to dots/.config/quickshell/ii/modules/ii/screenCorners/ScreenCorners.qml diff --git a/dots/.config/quickshell/ii/modules/sessionScreen/SessionActionButton.qml b/dots/.config/quickshell/ii/modules/ii/sessionScreen/SessionActionButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sessionScreen/SessionActionButton.qml rename to dots/.config/quickshell/ii/modules/ii/sessionScreen/SessionActionButton.qml diff --git a/dots/.config/quickshell/ii/modules/sessionScreen/SessionScreen.qml b/dots/.config/quickshell/ii/modules/ii/sessionScreen/SessionScreen.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sessionScreen/SessionScreen.qml rename to dots/.config/quickshell/ii/modules/ii/sessionScreen/SessionScreen.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/AiChat.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/AiChat.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/sidebarLeft/AiChat.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/AiChat.qml index e4ded1eeb..0e0eeb2b9 100644 --- a/dots/.config/quickshell/ii/modules/sidebarLeft/AiChat.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/AiChat.qml @@ -3,7 +3,7 @@ import qs.services import qs.modules.common import qs.modules.common.widgets import qs.modules.common.functions -import qs.modules.sidebarLeft.aiChat +import qs.modules.ii.sidebarLeft.aiChat import QtQuick import QtQuick.Controls import QtQuick.Layouts diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/Anime.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/Anime.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/sidebarLeft/Anime.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/Anime.qml index ff4b22d42..a30b1ef15 100644 --- a/dots/.config/quickshell/ii/modules/sidebarLeft/Anime.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/Anime.qml @@ -3,7 +3,7 @@ import qs.services import qs.modules.common import qs.modules.common.widgets import qs.modules.common.functions -import qs.modules.sidebarLeft.anime +import qs.modules.ii.sidebarLeft.anime import QtQuick import QtQuick.Controls import QtQuick.Layouts diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/ApiCommandButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/ApiCommandButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/ApiCommandButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/ApiCommandButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/ApiInputBoxIndicator.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/ApiInputBoxIndicator.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/ApiInputBoxIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/ApiInputBoxIndicator.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/DescriptionBox.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/DescriptionBox.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/DescriptionBox.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/DescriptionBox.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/ScrollToBottomButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/ScrollToBottomButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/ScrollToBottomButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/ScrollToBottomButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/SidebarLeft.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/SidebarLeft.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/SidebarLeft.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/SidebarLeft.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/SidebarLeftContent.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/SidebarLeftContent.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/SidebarLeftContent.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/SidebarLeftContent.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/Translator.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/Translator.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/sidebarLeft/Translator.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/Translator.qml index bde48f532..4cd25449c 100644 --- a/dots/.config/quickshell/ii/modules/sidebarLeft/Translator.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/Translator.qml @@ -2,7 +2,7 @@ import qs.services import qs.modules.common import qs.modules.common.widgets import qs.modules.common.functions -import qs.modules.sidebarLeft.translator +import qs.modules.ii.sidebarLeft.translator import QtQuick import QtQuick.Layouts import Quickshell diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/AiMessage.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/AiMessage.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/AiMessage.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/AiMessage.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/AiMessageControlButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/AiMessageControlButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/AiMessageControlButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/AiMessageControlButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/AnnotationSourceButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/AnnotationSourceButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/AnnotationSourceButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/AnnotationSourceButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/AttachedFileIndicator.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/AttachedFileIndicator.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/AttachedFileIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/AttachedFileIndicator.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/MessageCodeBlock.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/MessageCodeBlock.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/MessageCodeBlock.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/MessageCodeBlock.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/MessageTextBlock.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/MessageTextBlock.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/MessageTextBlock.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/MessageTextBlock.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/MessageThinkBlock.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/MessageThinkBlock.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/MessageThinkBlock.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/MessageThinkBlock.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/SearchQueryButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/SearchQueryButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/SearchQueryButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/SearchQueryButton.qml index 4ad60ac9c..1c1d03608 100644 --- a/dots/.config/quickshell/ii/modules/sidebarLeft/aiChat/SearchQueryButton.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/aiChat/SearchQueryButton.qml @@ -1,7 +1,7 @@ import qs +import qs.services import qs.modules.common import qs.modules.common.widgets -import qs.services import qs.modules.common.functions import QtQuick import QtQuick.Layouts diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/anime/BooruImage.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/anime/BooruImage.qml similarity index 92% rename from dots/.config/quickshell/ii/modules/sidebarLeft/anime/BooruImage.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/anime/BooruImage.qml index 99f6f1ab3..e403417ba 100644 --- a/dots/.config/quickshell/ii/modules/sidebarLeft/anime/BooruImage.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/anime/BooruImage.qml @@ -1,7 +1,8 @@ import qs.services import qs.modules.common -import qs.modules.common.widgets import qs.modules.common.functions +import qs.modules.common.utils +import qs.modules.common.widgets import QtQml import QtQuick import QtQuick.Controls @@ -25,18 +26,19 @@ Button { property real imageRadius: Appearance.rounding.small property bool showActions: false - Process { - id: downloadProcess - running: false - command: ["bash", "-c", `mkdir -p '${root.previewDownloadPath}' && [ -f ${root.filePath} ] || curl -sSL '${root.imageData.preview_url ?? root.imageData.sample_url}' -o '${root.filePath}'`] - onExited: (exitCode, exitStatus) => { - imageObject.source = `${previewDownloadPath}/${root.fileName}` - } - } - - Component.onCompleted: { - if (root.manualDownload) { - downloadProcess.running = true + ImageDownloaderProcess { + id: imageDownloader + running: root.manualDownload + filePath: root.filePath + sourceUrl: root.imageData.preview_url ?? root.imageData.sample_url + onDone: (path, width, height) => { + imageObject.source = "" + imageObject.source = path + if (!modelData.width || !modelData.height) { + modelData.width = width + modelData.height = height + modelData.aspect_ratio = width / height + } } } diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/anime/BooruResponse.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/anime/BooruResponse.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/sidebarLeft/anime/BooruResponse.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/anime/BooruResponse.qml index 6b1711a40..f67db79b5 100644 --- a/dots/.config/quickshell/ii/modules/sidebarLeft/anime/BooruResponse.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/anime/BooruResponse.qml @@ -3,7 +3,7 @@ import qs.services import qs.modules.common import qs.modules.common.widgets import qs.modules.common.functions -import qs.modules.sidebarLeft +import qs.modules.ii.sidebarLeft import QtQuick import QtQuick.Controls import QtQuick.Layouts diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/translator/LanguageSelectorButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/translator/LanguageSelectorButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/translator/LanguageSelectorButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/translator/LanguageSelectorButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarLeft/translator/TextCanvas.qml b/dots/.config/quickshell/ii/modules/ii/sidebarLeft/translator/TextCanvas.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarLeft/translator/TextCanvas.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarLeft/translator/TextCanvas.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/BottomWidgetGroup.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/BottomWidgetGroup.qml similarity index 98% rename from dots/.config/quickshell/ii/modules/sidebarRight/BottomWidgetGroup.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/BottomWidgetGroup.qml index 244464069..f81e9db13 100644 --- a/dots/.config/quickshell/ii/modules/sidebarRight/BottomWidgetGroup.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarRight/BottomWidgetGroup.qml @@ -1,9 +1,9 @@ import qs.modules.common import qs.modules.common.widgets import qs.services -import qs.modules.sidebarRight.calendar -import qs.modules.sidebarRight.todo -import qs.modules.sidebarRight.pomodoro +import qs.modules.ii.sidebarRight.calendar +import qs.modules.ii.sidebarRight.todo +import qs.modules.ii.sidebarRight.pomodoro import QtQuick import QtQuick.Layouts diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/CenterWidgetGroup.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/CenterWidgetGroup.qml similarity index 80% rename from dots/.config/quickshell/ii/modules/sidebarRight/CenterWidgetGroup.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/CenterWidgetGroup.qml index 007006ca9..4e7747eb6 100644 --- a/dots/.config/quickshell/ii/modules/sidebarRight/CenterWidgetGroup.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarRight/CenterWidgetGroup.qml @@ -1,8 +1,7 @@ import qs.modules.common import qs.modules.common.widgets import qs.services -import qs.modules.sidebarRight.notifications -import qs.modules.sidebarRight.volumeMixer +import qs.modules.ii.sidebarRight.notifications import Qt5Compat.GraphicalEffects import QtQuick import QtQuick.Controls diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/QuickSliders.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/QuickSliders.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/QuickSliders.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/QuickSliders.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/SidebarRight.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/SidebarRight.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/SidebarRight.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/SidebarRight.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/SidebarRightContent.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/SidebarRightContent.qml similarity index 97% rename from dots/.config/quickshell/ii/modules/sidebarRight/SidebarRightContent.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/SidebarRightContent.qml index f2aee10fe..0f733ed82 100644 --- a/dots/.config/quickshell/ii/modules/sidebarRight/SidebarRightContent.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarRight/SidebarRightContent.qml @@ -9,13 +9,13 @@ import Quickshell import Quickshell.Bluetooth import Quickshell.Hyprland -import qs.modules.sidebarRight.quickToggles -import qs.modules.sidebarRight.quickToggles.classicStyle +import qs.modules.ii.sidebarRight.quickToggles +import qs.modules.ii.sidebarRight.quickToggles.classicStyle -import qs.modules.sidebarRight.bluetoothDevices -import qs.modules.sidebarRight.nightLight -import qs.modules.sidebarRight.volumeMixer -import qs.modules.sidebarRight.wifiNetworks +import qs.modules.ii.sidebarRight.bluetoothDevices +import qs.modules.ii.sidebarRight.nightLight +import qs.modules.ii.sidebarRight.volumeMixer +import qs.modules.ii.sidebarRight.wifiNetworks Item { id: root diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/bluetoothDevices/BluetoothDeviceItem.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/bluetoothDevices/BluetoothDeviceItem.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/bluetoothDevices/BluetoothDeviceItem.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/bluetoothDevices/BluetoothDeviceItem.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/bluetoothDevices/BluetoothDialog.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/bluetoothDevices/BluetoothDialog.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/bluetoothDevices/BluetoothDialog.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/bluetoothDevices/BluetoothDialog.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/calendar/CalendarDayButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/calendar/CalendarDayButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/calendar/CalendarDayButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/calendar/CalendarDayButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/calendar/CalendarHeaderButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/calendar/CalendarHeaderButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/calendar/CalendarHeaderButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/calendar/CalendarHeaderButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/calendar/CalendarWidget.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/calendar/CalendarWidget.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/calendar/CalendarWidget.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/calendar/CalendarWidget.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/calendar/calendar_layout.js b/dots/.config/quickshell/ii/modules/ii/sidebarRight/calendar/calendar_layout.js similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/calendar/calendar_layout.js rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/calendar/calendar_layout.js diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/nightLight/NightLightDialog.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/nightLight/NightLightDialog.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/nightLight/NightLightDialog.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/nightLight/NightLightDialog.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/notifications/NotificationList.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/notifications/NotificationList.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/notifications/NotificationList.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/notifications/NotificationList.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/notifications/NotificationStatusButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/notifications/NotificationStatusButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/notifications/NotificationStatusButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/notifications/NotificationStatusButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/pomodoro/PomodoroTimer.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/pomodoro/PomodoroTimer.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/pomodoro/PomodoroTimer.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/pomodoro/PomodoroTimer.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/pomodoro/PomodoroWidget.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/pomodoro/PomodoroWidget.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/pomodoro/PomodoroWidget.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/pomodoro/PomodoroWidget.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/pomodoro/Stopwatch.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/pomodoro/Stopwatch.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/pomodoro/Stopwatch.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/pomodoro/Stopwatch.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/AbstractQuickPanel.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/AbstractQuickPanel.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/AbstractQuickPanel.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/AbstractQuickPanel.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/AndroidQuickPanel.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/AndroidQuickPanel.qml similarity index 99% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/AndroidQuickPanel.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/AndroidQuickPanel.qml index f8c93bfff..8457b3cd3 100644 --- a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/AndroidQuickPanel.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/AndroidQuickPanel.qml @@ -6,7 +6,7 @@ import QtQuick.Layouts import Quickshell import Quickshell.Bluetooth -import qs.modules.sidebarRight.quickToggles.androidStyle +import qs.modules.ii.sidebarRight.quickToggles.androidStyle AbstractQuickPanel { id: root diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/ClassicQuickPanel.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/ClassicQuickPanel.qml similarity index 93% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/ClassicQuickPanel.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/ClassicQuickPanel.qml index cf52886a0..3aff842df 100644 --- a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/ClassicQuickPanel.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/ClassicQuickPanel.qml @@ -5,7 +5,7 @@ import QtQuick import QtQuick.Layouts import Quickshell.Bluetooth -import qs.modules.sidebarRight.quickToggles.classicStyle +import qs.modules.ii.sidebarRight.quickToggles.classicStyle AbstractQuickPanel { id: root diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidAntiFlashbangToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidAntiFlashbangToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidAntiFlashbangToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidAntiFlashbangToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidAudioToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidAudioToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidAudioToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidAudioToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidBluetoothToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidBluetoothToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidBluetoothToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidBluetoothToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidCloudflareWarpToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidCloudflareWarpToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidCloudflareWarpToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidCloudflareWarpToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidColorPickerToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidColorPickerToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidColorPickerToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidColorPickerToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidDarkModeToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidDarkModeToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidDarkModeToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidDarkModeToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidEasyEffectsToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidEasyEffectsToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidEasyEffectsToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidEasyEffectsToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidGameModeToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidGameModeToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidGameModeToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidGameModeToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidIdleInhibitorToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidIdleInhibitorToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidIdleInhibitorToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidIdleInhibitorToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidMicToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidMicToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidMicToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidMicToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidMusicRecognition.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidMusicRecognition.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidMusicRecognition.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidMusicRecognition.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidNetworkToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidNetworkToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidNetworkToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidNetworkToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidNightLightToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidNightLightToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidNightLightToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidNightLightToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidNotificationToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidNotificationToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidNotificationToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidNotificationToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidOnScreenKeyboardToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidOnScreenKeyboardToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidOnScreenKeyboardToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidOnScreenKeyboardToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidPowerProfileToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidPowerProfileToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidPowerProfileToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidPowerProfileToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidQuickToggleButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidQuickToggleButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidQuickToggleButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidQuickToggleButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidScreenSnipToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidScreenSnipToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidScreenSnipToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidScreenSnipToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidToggleDelegateChooser.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidToggleDelegateChooser.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/androidStyle/AndroidToggleDelegateChooser.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/androidStyle/AndroidToggleDelegateChooser.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/BluetoothToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/BluetoothToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/BluetoothToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/BluetoothToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/CloudflareWarp.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/CloudflareWarp.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/CloudflareWarp.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/CloudflareWarp.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/EasyEffectsToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/EasyEffectsToggle.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/EasyEffectsToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/EasyEffectsToggle.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/GameMode.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/GameMode.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/GameMode.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/GameMode.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/IdleInhibitor.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/IdleInhibitor.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/IdleInhibitor.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/IdleInhibitor.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/NetworkToggle.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/NetworkToggle.qml similarity index 93% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/NetworkToggle.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/NetworkToggle.qml index cc3ac3fca..63fdb85bc 100644 --- a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/NetworkToggle.qml +++ b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/NetworkToggle.qml @@ -2,7 +2,7 @@ import qs.services import qs.modules.common import qs.modules.common.widgets import qs.modules.common.functions -import qs.modules.sidebarRight.quickToggles +import qs.modules.ii.sidebarRight.quickToggles import qs import QtQuick import Quickshell diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/NightLight.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/NightLight.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/NightLight.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/NightLight.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/QuickToggleButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/QuickToggleButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/quickToggles/classicStyle/QuickToggleButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/quickToggles/classicStyle/QuickToggleButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/todo/TaskList.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/todo/TaskList.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/todo/TaskList.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/todo/TaskList.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/todo/TodoItemActionButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/todo/TodoItemActionButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/todo/TodoItemActionButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/todo/TodoItemActionButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/todo/TodoWidget.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/todo/TodoWidget.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/todo/TodoWidget.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/todo/TodoWidget.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/volumeMixer/AudioDeviceSelectorButton.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/volumeMixer/AudioDeviceSelectorButton.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/volumeMixer/AudioDeviceSelectorButton.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/volumeMixer/AudioDeviceSelectorButton.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/volumeMixer/VolumeDialog.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/volumeMixer/VolumeDialog.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/volumeMixer/VolumeDialog.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/volumeMixer/VolumeDialog.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/volumeMixer/VolumeDialogContent.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/volumeMixer/VolumeDialogContent.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/volumeMixer/VolumeDialogContent.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/volumeMixer/VolumeDialogContent.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/volumeMixer/VolumeMixerEntry.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/volumeMixer/VolumeMixerEntry.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/volumeMixer/VolumeMixerEntry.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/volumeMixer/VolumeMixerEntry.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/wifiNetworks/WifiDialog.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/wifiNetworks/WifiDialog.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/wifiNetworks/WifiDialog.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/wifiNetworks/WifiDialog.qml diff --git a/dots/.config/quickshell/ii/modules/sidebarRight/wifiNetworks/WifiNetworkItem.qml b/dots/.config/quickshell/ii/modules/ii/sidebarRight/wifiNetworks/WifiNetworkItem.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/sidebarRight/wifiNetworks/WifiNetworkItem.qml rename to dots/.config/quickshell/ii/modules/ii/sidebarRight/wifiNetworks/WifiNetworkItem.qml diff --git a/dots/.config/quickshell/ii/modules/verticalBar/BatteryIndicator.qml b/dots/.config/quickshell/ii/modules/ii/verticalBar/BatteryIndicator.qml similarity index 98% rename from dots/.config/quickshell/ii/modules/verticalBar/BatteryIndicator.qml rename to dots/.config/quickshell/ii/modules/ii/verticalBar/BatteryIndicator.qml index b134b12fe..d2b729244 100644 --- a/dots/.config/quickshell/ii/modules/verticalBar/BatteryIndicator.qml +++ b/dots/.config/quickshell/ii/modules/ii/verticalBar/BatteryIndicator.qml @@ -3,7 +3,7 @@ import qs.modules.common.widgets import qs.services import QtQuick import QtQuick.Layouts -import qs.modules.bar as Bar +import qs.modules.ii.bar as Bar MouseArea { id: root diff --git a/dots/.config/quickshell/ii/modules/verticalBar/Resource.qml b/dots/.config/quickshell/ii/modules/ii/verticalBar/Resource.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/verticalBar/Resource.qml rename to dots/.config/quickshell/ii/modules/ii/verticalBar/Resource.qml diff --git a/dots/.config/quickshell/ii/modules/verticalBar/Resources.qml b/dots/.config/quickshell/ii/modules/ii/verticalBar/Resources.qml similarity index 97% rename from dots/.config/quickshell/ii/modules/verticalBar/Resources.qml rename to dots/.config/quickshell/ii/modules/ii/verticalBar/Resources.qml index ddbb1c399..353874723 100644 --- a/dots/.config/quickshell/ii/modules/verticalBar/Resources.qml +++ b/dots/.config/quickshell/ii/modules/ii/verticalBar/Resources.qml @@ -2,7 +2,7 @@ import qs.services import qs.modules.common import QtQuick import QtQuick.Layouts -import qs.modules.bar as Bar +import qs.modules.ii.bar as Bar MouseArea { id: root diff --git a/dots/.config/quickshell/ii/modules/verticalBar/VerticalBar.qml b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalBar.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/verticalBar/VerticalBar.qml rename to dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalBar.qml diff --git a/dots/.config/quickshell/ii/modules/verticalBar/VerticalBarContent.qml b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalBarContent.qml similarity index 98% rename from dots/.config/quickshell/ii/modules/verticalBar/VerticalBarContent.qml rename to dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalBarContent.qml index ac6be80cd..d3326188e 100644 --- a/dots/.config/quickshell/ii/modules/verticalBar/VerticalBarContent.qml +++ b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalBarContent.qml @@ -8,7 +8,7 @@ import qs.services import qs.modules.common import qs.modules.common.widgets import qs.modules.common.functions -import qs.modules.bar as Bar +import qs.modules.ii.bar as Bar Item { // Bar content region id: root @@ -148,11 +148,11 @@ Item { // Bar content region } HorizontalBarSeparator { - visible: UPower.displayDevice.isLaptopBattery + visible: Battery.available } BatteryIndicator { - visible: UPower.displayDevice.isLaptopBattery + visible: Battery.available Layout.fillWidth: true Layout.fillHeight: false } diff --git a/dots/.config/quickshell/ii/modules/verticalBar/VerticalClockWidget.qml b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalClockWidget.qml similarity index 97% rename from dots/.config/quickshell/ii/modules/verticalBar/VerticalClockWidget.qml rename to dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalClockWidget.qml index 921f63603..15a49c5a5 100644 --- a/dots/.config/quickshell/ii/modules/verticalBar/VerticalClockWidget.qml +++ b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalClockWidget.qml @@ -3,7 +3,7 @@ import qs.modules.common.widgets import qs.services import QtQuick import QtQuick.Layouts -import qs.modules.bar as Bar +import qs.modules.ii.bar as Bar Item { id: root diff --git a/dots/.config/quickshell/ii/modules/verticalBar/VerticalDateWidget.qml b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalDateWidget.qml similarity index 98% rename from dots/.config/quickshell/ii/modules/verticalBar/VerticalDateWidget.qml rename to dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalDateWidget.qml index aaf17ca4f..bf76ebe67 100644 --- a/dots/.config/quickshell/ii/modules/verticalBar/VerticalDateWidget.qml +++ b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalDateWidget.qml @@ -4,7 +4,7 @@ import qs.services import QtQuick import QtQuick.Shapes import QtQuick.Layouts -import qs.modules.bar as Bar +import qs.modules.ii.bar as Bar Item { // Full hitbox id: root diff --git a/dots/.config/quickshell/ii/modules/verticalBar/VerticalMedia.qml b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalMedia.qml similarity index 98% rename from dots/.config/quickshell/ii/modules/verticalBar/VerticalMedia.qml rename to dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalMedia.qml index 677941d64..8d38caa76 100644 --- a/dots/.config/quickshell/ii/modules/verticalBar/VerticalMedia.qml +++ b/dots/.config/quickshell/ii/modules/ii/verticalBar/VerticalMedia.qml @@ -8,7 +8,7 @@ import QtQuick import QtQuick.Layouts import Quickshell.Services.Mpris -import qs.modules.bar as Bar +import qs.modules.ii.bar as Bar MouseArea { id: root diff --git a/dots/.config/quickshell/ii/modules/wallpaperSelector/WallpaperDirectoryItem.qml b/dots/.config/quickshell/ii/modules/ii/wallpaperSelector/WallpaperDirectoryItem.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/wallpaperSelector/WallpaperDirectoryItem.qml rename to dots/.config/quickshell/ii/modules/ii/wallpaperSelector/WallpaperDirectoryItem.qml diff --git a/dots/.config/quickshell/ii/modules/wallpaperSelector/WallpaperSelector.qml b/dots/.config/quickshell/ii/modules/ii/wallpaperSelector/WallpaperSelector.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/wallpaperSelector/WallpaperSelector.qml rename to dots/.config/quickshell/ii/modules/ii/wallpaperSelector/WallpaperSelector.qml diff --git a/dots/.config/quickshell/ii/modules/wallpaperSelector/WallpaperSelectorContent.qml b/dots/.config/quickshell/ii/modules/ii/wallpaperSelector/WallpaperSelectorContent.qml similarity index 100% rename from dots/.config/quickshell/ii/modules/wallpaperSelector/WallpaperSelectorContent.qml rename to dots/.config/quickshell/ii/modules/ii/wallpaperSelector/WallpaperSelectorContent.qml diff --git a/dots/.config/quickshell/ii/modules/settings/BackgroundConfig.qml b/dots/.config/quickshell/ii/modules/settings/BackgroundConfig.qml index 3b388583f..ec9dc320d 100644 --- a/dots/.config/quickshell/ii/modules/settings/BackgroundConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/BackgroundConfig.qml @@ -97,6 +97,15 @@ ContentPage { } } + ConfigSwitch { + buttonIcon: "lock_clock" + text: Translation.tr("Show only when locked") + checked: Config.options.background.widgets.clock.showOnlyWhenLocked + onCheckedChanged: { + Config.options.background.widgets.clock.showOnlyWhenLocked = checked; + } + } + ContentSubsection { title: Translation.tr("Clock style") ConfigSelectionArray { diff --git a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml index c57406a7f..738578585 100644 --- a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml @@ -328,6 +328,21 @@ ContentPage { } } + ContentSection { + icon: "point_scan" + title: Translation.tr("Overlay: Floating Image") + + MaterialTextArea { + Layout.fillWidth: true + placeholderText: Translation.tr("Image source") + text: Config.options.overlay.floatingImage.imageSource + wrapMode: TextEdit.Wrap + onTextChanged: { + Config.options.overlay.floatingImage.imageSource = text; + } + } + } + ContentSection { icon: "screenshot_frame_2" title: Translation.tr("Region selector (screen snipping/Google Lens)") diff --git a/dots/.config/quickshell/ii/shell.qml b/dots/.config/quickshell/ii/shell.qml index 209597fcf..81bd468b1 100644 --- a/dots/.config/quickshell/ii/shell.qml +++ b/dots/.config/quickshell/ii/shell.qml @@ -8,25 +8,25 @@ import qs.modules.common -import qs.modules.background -import qs.modules.bar -import qs.modules.cheatsheet -import qs.modules.dock -import qs.modules.lock -import qs.modules.mediaControls -import qs.modules.notificationPopup -import qs.modules.onScreenDisplay -import qs.modules.onScreenKeyboard -import qs.modules.overview -import qs.modules.polkit -import qs.modules.regionSelector -import qs.modules.screenCorners -import qs.modules.sessionScreen -import qs.modules.sidebarLeft -import qs.modules.sidebarRight -import qs.modules.overlay -import qs.modules.verticalBar -import qs.modules.wallpaperSelector +import qs.modules.ii.background +import qs.modules.ii.bar +import qs.modules.ii.cheatsheet +import qs.modules.ii.dock +import qs.modules.ii.lock +import qs.modules.ii.mediaControls +import qs.modules.ii.notificationPopup +import qs.modules.ii.onScreenDisplay +import qs.modules.ii.onScreenKeyboard +import qs.modules.ii.overview +import qs.modules.ii.polkit +import qs.modules.ii.regionSelector +import qs.modules.ii.screenCorners +import qs.modules.ii.sessionScreen +import qs.modules.ii.sidebarLeft +import qs.modules.ii.sidebarRight +import qs.modules.ii.overlay +import qs.modules.ii.verticalBar +import qs.modules.ii.wallpaperSelector import QtQuick import QtQuick.Window diff --git a/sdata/dist-arch/illogical-impulse-hyprland/PKGBUILD b/sdata/dist-arch/illogical-impulse-hyprland/PKGBUILD index 8722c9246..b8473bb1d 100644 --- a/sdata/dist-arch/illogical-impulse-hyprland/PKGBUILD +++ b/sdata/dist-arch/illogical-impulse-hyprland/PKGBUILD @@ -1,6 +1,6 @@ pkgname=illogical-impulse-hyprland pkgver=1.0 -pkgrel=1 +pkgrel=2 pkgdesc='Illogical Impulse Hyprland relatated packages' arch=(any) license=(None) diff --git a/sdata/dist-fedora/SPECS/hyprland-qt-support.spec b/sdata/dist-fedora/SPECS/hyprland-qt-support.spec new file mode 100644 index 000000000..c4f8bf057 --- /dev/null +++ b/sdata/dist-fedora/SPECS/hyprland-qt-support.spec @@ -0,0 +1,46 @@ +# Original-Spec: https://copr-dist-git.fedorainfracloud.org/packages/solopasha/hyprland/hyprland-qt-support.git/plain/hyprland-qt-support.spec?h=master + +Name: hyprland-qt-support +Version: 0.1.0 +Release: %autorelease -b9 +Summary: A Qt6 Qml style provider for hypr* apps +License: BSD-3-Clause +URL: https://github.com/hyprwm/hyprland-qt-support +Source: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz + +# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} + +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: qt6-rpm-macros + +BuildRequires: cmake(Qt6Quick) +BuildRequires: cmake(Qt6QuickControls2) +BuildRequires: cmake(Qt6Qml) + +BuildRequires: pkgconfig(hyprlang) + +%description +%{summary}. + +%prep +wget --content-disposition -q -N -P %{_sourcedir} %{url}/archive/v%{version}/%{name}-%{version}.tar.gz +%autosetup -p1 + +%build +%cmake -DINSTALL_QMLDIR=%{_qt6_qmldir} +%cmake_build + +%install +%cmake_install + +%files +%license LICENSE +%doc README.md +%{_prefix}/lib/libhyprland-quick-style-impl.so +%{_prefix}/lib/libhyprland-quick-style.so +%{_qt6_qmldir}/org/hyprland/ + +%changelog +%autochangelog diff --git a/sdata/dist-fedora/SPECS/quickshell-git.spec b/sdata/dist-fedora/SPECS/quickshell-git.spec new file mode 100644 index 000000000..a0b23bfd8 --- /dev/null +++ b/sdata/dist-fedora/SPECS/quickshell-git.spec @@ -0,0 +1,89 @@ +# Original-Spec: https://copr-dist-git.fedorainfracloud.org/packages/errornointernet/quickshell/quickshell-git.git/plain/quickshell-git.spec?h=master + +%bcond_with asan + +%global commit db1777c20b936a86528c1095cbcb1ebd92801402 +%global commits 699 +%global snapdate 20251030 +%global tag 0.2.1 + +Name: quickshell-git +Version: %{tag}^%{commits}.git%(c=%{commit}; echo ${c:0:7}) +Release: 0%{?dist} +Summary: Flexible QtQuick based desktop shell toolkit + +License: LGPL-3.0-only AND GPL-3.0-only +URL: https://github.com/quickshell-mirror/quickshell +Source0: %{url}/archive/%{commit}/quickshell-%{commit}.tar.gz + +Conflicts: quickshell <= %{tag} + +%if 0%{fedora} >= 43 +BuildRequires: breakpad-static +%endif +BuildRequires: cmake +BuildRequires: cmake(Qt6Core) +BuildRequires: cmake(Qt6Qml) +BuildRequires: cmake(Qt6ShaderTools) +BuildRequires: cmake(Qt6WaylandClient) +BuildRequires: gcc-c++ +BuildRequires: ninja-build +BuildRequires: pkgconfig(breakpad) +BuildRequires: pkgconfig(CLI11) +BuildRequires: pkgconfig(gbm) +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(jemalloc) +BuildRequires: pkgconfig(libdrm) +BuildRequires: pkgconfig(libpipewire-0.3) +BuildRequires: pkgconfig(pam) +BuildRequires: pkgconfig(polkit-agent-1) +BuildRequires: pkgconfig(wayland-client) +BuildRequires: pkgconfig(wayland-protocols) +BuildRequires: qt6-qtbase-private-devel +BuildRequires: spirv-tools + +%if %{with asan} +BuildRequires: libasan +%endif + +Provides: desktop-notification-daemon + +%description +Flexible toolkit for making desktop shells with QtQuick, targeting +Wayland and X11. + +%prep +wget --content-disposition -q -N -P %{_sourcedir} %{url}/archive/%{commit}/quickshell-%{commit}.tar.gz +%autosetup -n quickshell-%{commit} -p1 + +%build +%cmake -GNinja \ +%if %{with asan} + -DASAN=ON \ +%endif + -DBUILD_SHARED_LIBS=OFF \ + -DCMAKE_BUILD_TYPE=Release \ + -DDISTRIBUTOR="Fedora COPR (errornointernet/quickshell)" \ + -DDISTRIBUTOR_DEBUGINFO_AVAILABLE=YES \ + -DGIT_REVISION=%{commit} \ + -DINSTALL_QML_PREFIX=%{_lib}/qt6/qml +%cmake_build + +%install +%cmake_install + +%files +%license LICENSE +%license LICENSE-GPL +%doc BUILD.md +%doc CONTRIBUTING.md +%doc README.md +%doc changelog/v%{tag}.md +%{_bindir}/qs +%{_bindir}/quickshell +%{_datadir}/applications/org.quickshell.desktop +%{_datadir}/icons/hicolor/scalable/apps/org.quickshell.svg +%{_libdir}/qt6/qml/Quickshell + +%changelog +%autochangelog diff --git a/sdata/dist-fedora/install-deps.sh b/sdata/dist-fedora/install-deps.sh index 8f813da84..7a4da7138 100644 --- a/sdata/dist-fedora/install-deps.sh +++ b/sdata/dist-fedora/install-deps.sh @@ -13,7 +13,7 @@ case $SKIP_SYSUPDATE in esac # Development-tools installation -v sudo dnf install @development-tools fedora-packager rpmdevtools fonts-rpm-macros -y +v sudo dnf install @development-tools fedora-packager rpmdevtools fonts-rpm-macros qt6-rpm-macros -y # COPR repositories v sudo dnf copr enable solopasha/hyprland -y @@ -42,17 +42,12 @@ v sudo dnf install ${themes_deps[@]} -y # Hyprland hyprland_deps=( - hypridle hyprland hyprlock hyprpicker - hyprsunset xdg-desktop-portal-hyprland wl-clipboard + hypridle hyprland hyprlock hyprpicker hyprsunset + xdg-desktop-portal-hyprland wl-clipboard ) v sudo dnf install --setopt="install_weak_deps=False" "${hyprland_deps[@]}" -y - -## About `hyprland-qtutils` and `hyprland-qt-support` -# The hyprland-qt-support's GitHub repository requires Qt 6.6 or higher, which I think makes DNF's requirement of Qt 6.9 too strict; it should also support Qt 6.10. -# On distro like Arch Linux, `hyprland-qtutils` and `hyprland-qt-support` are in dependency chain already so no need to add them as deps explicitly; -# However on Fedora, if this package is not installed, a yellow warning⚠️ will appear every time you log in to Hyprland. -v dnf download hyprland-qt-support && v sudo rpm -ivh --nodeps hyprland-qt-support-*.fc$(rpm -E %fedora).$(uname -m).rpm -v sudo dnf install hyprland-qtutils -y +# hyprland-qt-support's build deps +v sudo dnf install hyprlang-devel -y # KDE v sudo dnf install bluedevil gnome-keyring NetworkManager plasma-nm polkit-kde dolphin plasma-systemsettings -y @@ -79,17 +74,15 @@ quickshell_custom_deps=( qt6-qtquicktimeline qt6-qtsensors qt6-qttools qt6-qttranslations qt6-qtvirtualkeyboard qt6-qtwayland kdialog kf6-syntax-highlighting ) +quickshell_build_deps=( + breakpad-static breakpad-devel gcc-c++ ninja-build mesa-libgbm-devel cli11-devel glib2-devel + jemalloc-devel libdrm-devel pipewire-devel pam-devel polkit-devel wayland-devel wayland-protocols-devel + qt6-qtdeclarative-devel qt6-qtshadertools-devel qt6-qtbase-private-devel spirv-tools + libasan +) v sudo dnf install "${quickshell_deps[@]}" -y v sudo dnf install "${quickshell_custom_deps[@]}" -y -# Dynamically control the version of quickshell -qs_version=$(dnf list --showduplicates quickshell-git 2>/dev/null | - grep -E "\.git${_qs_shortcommit}(-|$)" | - awk '{print $2}' | - sort -V | - tail -n1) -v sudo dnf versionlock delete quickshell-git 2>/dev/null -v sudo dnf install quickshell-git-${qs_version} -v sudo dnf versionlock add quickshell-git +v sudo dnf install "${quickshell_build_deps[@]}" -y # Screencapture v sudo dnf install hyprshot slurp swappy tesseract tesseract-langpack-eng tesseract-langpack-chi_sim wf-recorder -y @@ -114,10 +107,13 @@ install_RPMS() { x rpmbuild -bb --define "_topdir $rpmbuildroot" $spec_file done mapfile -t -d '' local_rpms < <(find "$rpmbuildroot/RPMS" -maxdepth 2 -type f -name '*.rpm' -not -name '*debug*' -print0) - echo "${STY_BLUE}Next command:${STY_RST} sudo dnf install ${local_rpms[@]} -y" + echo -e "${STY_BLUE}Next command:${STY_RST} sudo dnf install ${local_rpms[@]} -y" x sudo dnf install "${local_rpms[@]}" -y x cd ${REPO_ROOT} } showfun install_RPMS v install_RPMS + +# hyprland-qtutils depends on hyprland-qt-support +v sudo dnf install hyprland-qtutils -y \ No newline at end of file diff --git a/sdata/lib/environment-variables.sh b/sdata/lib/environment-variables.sh index b2153ae0a..71ca6d023 100644 --- a/sdata/lib/environment-variables.sh +++ b/sdata/lib/environment-variables.sh @@ -26,6 +26,4 @@ STY_RST='\e[00m' # Used by register_temp_file() declare -a TEMP_FILES_TO_CLEANUP=() -# Pinned commit for quickshell -_qs_commit='db1777c20b936a86528c1095cbcb1ebd92801402' -_qs_shortcommit=$(echo ${_qs_commit} | cut -c1-7) +