diff options
Diffstat (limited to '.local/bin/dmlog')
-rwxr-xr-x | .local/bin/dmlog | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/.local/bin/dmlog b/.local/bin/dmlog index 756d9b9..d209ee5 100755 --- a/.local/bin/dmlog +++ b/.local/bin/dmlog @@ -36,8 +36,13 @@ sub confirm for (@{+CONFIRM}) { $list .= $_ . "\n"; } + + my $menu = "dmenu -sb '$color' -shb '$color'"; + if (defined $ENV{WAYLAND_DISPLAY}) { + $menu = "wmenu -S '$color'"; + } $choice = `printf "%s" "$list" | \ - dmenu -i -p "$var?" -sb '$color' -shb '$color'`; + $menu -i -p "$var?"`; chomp $choice; if ($choice eq ${+CONFIRM}[1]) { return (1); @@ -52,12 +57,28 @@ sub action chomp $var; if ($var eq ${+LIST}[0]) { - exec(XSCREENSAVER_PATH, '-lock'); + if (defined $ENV{WAYLAND_DISPLAY}) { + exec("waylock", + "-init-color", "0x1d2021", + "-input-color", "0xd79921", + "-fail-color", "0xcc241d"); + } + else { + exec(XSCREENSAVER_PATH, '-lock'); + } } elsif ($var eq ${+LIST}[1]) { $pid = fork(); if (not $pid) { - exec(XSCREENSAVER_PATH, '-lock'); + if (defined $ENV{WAYLAND_DISPLAY}) { + exec("waylock", + "-init-color", "0x1d2021", + "-input-color", "0xd79921", + "-fail-color", "0xcc241d"); + } + else { + exec(XSCREENSAVER_PATH, '-lock'); + } } else { system( @@ -138,7 +159,12 @@ sub main for (@{+LIST}) { $list .= $_ . "\n"; } - $choice = `printf "%s" "$list" | dmenu -i -sb '$color' -shb '$color'`; + + my $menu = "dmenu -sb '$color' -shb '$color'"; + if (defined $ENV{WAYLAND_DISPLAY}) { + $menu = "wmenu -S '$color'"; + } + $choice = `printf "%s" "$list" | $menu -i`; action($choice, $color); return (0); } |