summaryrefslogtreecommitdiff
path: root/.local/bin/blocks/calendar
diff options
context:
space:
mode:
Diffstat (limited to '.local/bin/blocks/calendar')
-rwxr-xr-x.local/bin/blocks/calendar41
1 files changed, 41 insertions, 0 deletions
diff --git a/.local/bin/blocks/calendar b/.local/bin/blocks/calendar
new file mode 100755
index 0000000..eb8e210
--- /dev/null
+++ b/.local/bin/blocks/calendar
@@ -0,0 +1,41 @@
+#! /bin/sh
+
+WIDTH=${WIDTH:-200}
+HEIGHT=${HEIGHT:-200}
+DATEFMT=${DATEFMT:-"+%a %d.%m.%Y %H:%M:%S"}
+SHORTFMT=${SHORTFMT:-"+%H:%M:%S"}
+
+OPTIND=1
+while getopts ":f:W:H:" opt; do
+ case $opt in
+ f) DATEFMT="$OPTARG" ;;
+ W) WIDTH="$OPTARG" ;;
+ H) HEIGHT="$OPTARG" ;;
+ \?)
+ echo "Invalid option: -$OPTARG" >&2
+ exit 1
+ ;;
+ :)
+ echo "Option -$OPTARG requires an argument." >&2
+ exit 1
+ ;;
+ esac
+done
+
+case "$BLOCK_BUTTON" in
+ 1|2|3)
+
+ # the position of the upper left corner of the popup
+ # The size is hardcoded for a 1080p monitor.
+ posX=$((1899 - $WIDTH))
+ posY=$((35))
+
+ i3-msg -q "exec yad --calendar \
+ --width=$WIDTH --height=$HEIGHT \
+ --undecorated --fixed \
+ --close-on-unfocus --no-buttons \
+ --posx=$posX --posy=$posY \
+ > /dev/null"
+esac
+echo "$LABEL$(date "$DATEFMT")"
+echo "$LABEL$(date "$SHORTFMT")"