put randomwallpaper in services folder
This commit is contained in:
@@ -1,57 +0,0 @@
|
||||
import Quickshell
|
||||
import Quickshell.Io
|
||||
import QtQuick
|
||||
|
||||
Item {
|
||||
id: wallpaperHolder
|
||||
|
||||
// Store all wallpapers
|
||||
property var wallpapers: []
|
||||
property string wallpaperDir: Qt.resolvedUrl("file:///home/sem/Pictures/wallpapers")
|
||||
|
||||
// process to run the command to change the wallpaper
|
||||
Process {
|
||||
id: wallpaperProcess
|
||||
}
|
||||
|
||||
// Load wallpaper list once at startup
|
||||
Process {
|
||||
id: loadWallpapers
|
||||
command: ["bash", "-c", "find ~/Pictures/wallpapers -type f"]
|
||||
|
||||
stdout: StdioCollector {
|
||||
onStreamFinished: {
|
||||
console.log("wallpapers loaded!");
|
||||
wallpaperHolder.wallpapers = this.text.trim().split("\n");
|
||||
wallpaperHolder.setRandomWallpaper();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function setRandomWallpaper() {
|
||||
if (wallpapers.length === 0) {
|
||||
console.log("No wallpapers found");
|
||||
return;
|
||||
}
|
||||
|
||||
var index = Math.floor(Math.random() * wallpapers.length);
|
||||
var path = wallpapers[index];
|
||||
|
||||
// console.log("wallpaper set to " + path);
|
||||
|
||||
wallpaperProcess.command = ["awww", "img", path, "--transition-type", "grow", "--transition-fps", "60", "--transition-duration", "0.6"];
|
||||
|
||||
wallpaperProcess.running = true;
|
||||
}
|
||||
|
||||
Timer {
|
||||
interval: 60000
|
||||
running: true
|
||||
repeat: true
|
||||
onTriggered: wallpaperHolder.setRandomWallpaper()
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
loadWallpapers.running = true; // start loading wallpapers
|
||||
}
|
||||
}
|
||||
@@ -8,6 +8,7 @@ import QtQuick.Layouts
|
||||
import "."
|
||||
import "constants"
|
||||
import "ui"
|
||||
import "services"
|
||||
|
||||
// qmllint disable uncreatable-type
|
||||
PanelWindow {
|
||||
|
||||
Reference in New Issue
Block a user