From c96d39f05de53b24f6475f5254ef12bd797d6eda Mon Sep 17 00:00:00 2001 From: Paul Wilde Date: Thu, 21 Mar 2024 10:16:29 +0000 Subject: [PATCH] better swaybg management in wl --- src/util/wallpapurr.nim | 15 +++++++++++++-- wm_tools.nimble | 2 +- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/util/wallpapurr.nim b/src/util/wallpapurr.nim index 17629b4..4024b8b 100644 --- a/src/util/wallpapurr.nim +++ b/src/util/wallpapurr.nim @@ -65,12 +65,21 @@ proc getImageFromDir(): string = notify.send("Found : ", img_file) return img_file +proc getCurrSwayBGPID(): string = + let pid = execCmdEx("pgrep swaybg") + return pid.output + +proc killCurrSwayBGPID(pid: string) = + discard execCmd("kill " & pid) + + proc setImage(img: string) = notify.send("Setting Background to:",img) if isWayland(): - let swaybg = "killall swaybg; swaybg -m fill -i " & img.escape & " &" - echo swaybg + let pid = getCurrSwayBGPID() + let swaybg = "swaybg -m fill -i " & img.escape & " &" discard execCmd(swaybg) + killCurrSwayBGPID(pid) else: let feh = "feh --bg-fill " & img.escape discard execCmdEx(feh) @@ -78,8 +87,10 @@ proc setImage(img: string) = proc setLast() = notify.send("Setting Background to Last", LAST) if isWayland(): + let pid = getCurrSwayBGPID() let swaybg = "killall swaybg; swaybg -m fill -i " & LAST.escape & " &" discard execCmd(swaybg) + killCurrSwayBGPID(pid) else: let feh = "feh --bg-fill " & LAST.escape discard execCmdEx(feh) diff --git a/wm_tools.nimble b/wm_tools.nimble index 5c9f840..f4eb1a8 100644 --- a/wm_tools.nimble +++ b/wm_tools.nimble @@ -1,6 +1,6 @@ # Package -version = "2.0.5" +version = "2.0.6" author = "Paul Wilde" description = "A set of informational tools" license = "AGPL-3.0-or-later"