i3-wallpaper-manager/main.go
Simon Vieille 098b04f5a5
Some checks are pending
ci/woodpecker/push/build Pipeline is pending approval
ci/woodpecker/push/test Pipeline is pending approval
refactoring: move logic in different files
2024-07-31 12:38:34 +02:00

38 lines
628 B
Go

package main
import (
"log"
"os"
"go.i3wm.org/i3"
)
func main() {
recv := i3.Subscribe(i3.WorkspaceEventType)
if len(os.Args) != 2 {
log.Printf("[ERROR] Configuration required!")
os.Exit(1)
}
config, err := LoadConfiguration(os.Args[1])
if err != nil {
log.Printf("[ERROR] %s", err.Error())
os.Exit(1)
}
for recv.Next() {
event := recv.Event().(*i3.WorkspaceEvent)
if event.Change == "focus" {
cmd, err := HandleFocusEvent(config)
if err != nil {
log.Printf("[ERROR] cmd=%s error=%s", cmd.String(), err.Error())
} else {
log.Printf("[SUCCESS] cmd=%s", cmd.String())
}
}
}
}