summaryrefslogtreecommitdiff
path: root/mac/.config/sketchybar/plugins/dnd.sh
diff options
context:
space:
mode:
authorTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2025-01-24 20:35:27 +0900
committerTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2025-01-24 20:35:27 +0900
commitc80a54e42b52ce297f0f2f71af23c562832025c7 (patch)
treedcce8bb977a770f473325d48f6f70b21d9818a40 /mac/.config/sketchybar/plugins/dnd.sh
init
Diffstat (limited to 'mac/.config/sketchybar/plugins/dnd.sh')
-rw-r--r--mac/.config/sketchybar/plugins/dnd.sh33
1 files changed, 33 insertions, 0 deletions
diff --git a/mac/.config/sketchybar/plugins/dnd.sh b/mac/.config/sketchybar/plugins/dnd.sh
new file mode 100644
index 0000000..42c7ba6
--- /dev/null
+++ b/mac/.config/sketchybar/plugins/dnd.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+# Load global styles, colors and icons
+source "$CONFIG_DIR/globalstyles.sh"
+
+update() {
+ dnd_enabled=$(cat ~/Library/DoNotDisturb/DB/Assertions.json | jq .data[0].storeAssertionRecords)
+ # alternate method: defaults read com.apple.controlcenter "NSStatusItem Visible FocusModes"
+ ICON=􀆺
+
+ if [ "$dnd_enabled" = "null" ]; then
+ COLOR=$WHITE_25
+ # echo $NAME: "Disabled"
+ else
+ COLOR=$WHITE
+ # echo $NAME: "Enabled"
+ fi
+
+ sketchybar --set $NAME icon=$ICON icon.color=$COLOR
+}
+
+toggle() {
+ osascript -e 'tell application "System Events" to keystroke "\\" using {control down, shift down, command down, option down}'
+}
+
+case "$SENDER" in
+"routine" | "forced" | "focus_on" | "focus_off")
+ update
+ ;;
+"mouse.clicked")
+ toggle
+ ;;
+esac