Wallpaper: minor fixes for random wallpaper picking
This commit is contained in:
parent
a2ecc67643
commit
61d13a6cab
1 changed files with 21 additions and 9 deletions
|
|
@ -150,14 +150,28 @@ Singleton {
|
||||||
// -------------------------------------------------------------------
|
// -------------------------------------------------------------------
|
||||||
function setRandomWallpaper() {
|
function setRandomWallpaper() {
|
||||||
Logger.log("Wallpaper", "setRandomWallpaper")
|
Logger.log("Wallpaper", "setRandomWallpaper")
|
||||||
for (var i = 0; i < Quickshell.screens.length; i++) {
|
|
||||||
var screenName = Quickshell.screens[i].name
|
|
||||||
var wallpaperList = getWallpapersList(screenName)
|
|
||||||
|
|
||||||
|
if (Settings.data.wallpaper.enableMultiMonitorDirectories) {
|
||||||
|
// Pick a random wallpaper per screen
|
||||||
|
for (var i = 0; i < Quickshell.screens.length; i++) {
|
||||||
|
var screenName = Quickshell.screens[i].name
|
||||||
|
var wallpaperList = getWallpapersList(screenName)
|
||||||
|
|
||||||
|
if (wallpaperList.length > 0) {
|
||||||
|
var randomIndex = Math.floor(Math.random() * wallpaperList.length)
|
||||||
|
var randomPath = wallpaperList[randomIndex]
|
||||||
|
changeWallpaper(screenName, randomPath)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Pick a random wallpaper for all screens
|
||||||
|
// We can use any screenName here, so we just pick the primary one.
|
||||||
|
var wallpaperList = getWallpapersList(Screen.name)
|
||||||
if (wallpaperList.length > 0) {
|
if (wallpaperList.length > 0) {
|
||||||
var randomIndex = Math.floor(Math.random() * wallpaperList.length)
|
var randomIndex = Math.floor(Math.random() * wallpaperList.length)
|
||||||
var randomPath = wallpaperList[randomIndex]
|
var randomPath = wallpaperList[randomIndex]
|
||||||
setWallpaper(screenName, randomPath)
|
changeWallpaper(undefined, randomPath)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -165,11 +179,9 @@ Singleton {
|
||||||
// -------------------------------------------------------------------
|
// -------------------------------------------------------------------
|
||||||
function toggleRandomWallpaper() {
|
function toggleRandomWallpaper() {
|
||||||
Logger.log("Wallpaper", "toggleRandomWallpaper")
|
Logger.log("Wallpaper", "toggleRandomWallpaper")
|
||||||
if (Settings.data.wallpaper.randomEnabled && !randomWallpaperTimer.running) {
|
if (Settings.data.wallpaper.randomEnabled) {
|
||||||
randomWallpaperTimer.start()
|
randomWallpaperTimer.restart()
|
||||||
setRandomWallpaper()
|
setRandomWallpaper()
|
||||||
} else if (!Settings.data.wallpaper.randomEnabled && randomWallpaperTimer.running) {
|
|
||||||
randomWallpaperTimer.stop()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -211,7 +223,7 @@ Singleton {
|
||||||
Timer {
|
Timer {
|
||||||
id: randomWallpaperTimer
|
id: randomWallpaperTimer
|
||||||
interval: Settings.data.wallpaper.randomIntervalSec * 1000
|
interval: Settings.data.wallpaper.randomIntervalSec * 1000
|
||||||
running: false
|
running: Settings.data.wallpaper.randomEnabled
|
||||||
repeat: true
|
repeat: true
|
||||||
onTriggered: setRandomWallpaper()
|
onTriggered: setRandomWallpaper()
|
||||||
triggeredOnStart: false
|
triggeredOnStart: false
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue