aboutsummaryrefslogtreecommitdiffstats
path: root/config/hypr/scripts
diff options
context:
space:
mode:
authorDon Williams <don.e.williams@gmail.com>2025-11-02 17:23:53 -0500
committerDon Williams <don.e.williams@gmail.com>2025-11-02 17:23:53 -0500
commit7441f2cb05b6916ff7cb08a8c0f14b7ff865a1b1 (patch)
tree26097b0f6063f1f388ca3f1882049ef055a50bb7 /config/hypr/scripts
parent4687cfc8c6786ebaae169e19219f1cf9f3be982d (diff)
feat: Add smart AGS/Quickshell fallback with OverviewToggle wrapper
Implements a robust fallback mechanism for desktop overview functionality that handles both AGS and Quickshell installations gracefully. Changes: - Add OverviewToggle.sh wrapper script that tries Quickshell first, falls back to AGS if unavailable or broken - Update UserKeybinds.conf with new SUPER+A binding to OverviewToggle.sh - Preserve original AGS and Quickshell keybinds as commented references - Simplify copy.sh logic to enable both AGS and QS simultaneously - Remove conflicting keybind toggle logic from copy.sh Benefits: - Users can have both AGS and Quickshell installed simultaneously - Automatic fallback when one tool is broken or unavailable - Quickshell preferred (tried first) as it's more performant - Graceful degradation with user notification if neither available - Auto-starts AGS if installed but not running - Compatible with existing upgrade.sh and ComposeHyprConfigs.sh workflow Technical details: - OverviewToggle.sh checks for running processes before attempting toggle - Uses hyprctl dispatch for Quickshell's global dispatcher - Falls back to ags -t 'overview' with rofi cleanup for AGS - Shows desktop notification if neither tool is available - Script auto-made executable via existing chmod in copy.sh (line 1027) Addresses: Issue where AGS and Quickshell have had recent stability problems, requiring manual keybind switching between them
Diffstat (limited to 'config/hypr/scripts')
-rw-r--r--config/hypr/scripts/OverviewToggle.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/config/hypr/scripts/OverviewToggle.sh b/config/hypr/scripts/OverviewToggle.sh
new file mode 100644
index 00000000..18683984
--- /dev/null
+++ b/config/hypr/scripts/OverviewToggle.sh
@@ -0,0 +1,28 @@
+#!/usr/bin/env bash
+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
+# Overview toggle wrapper - tries quickshell first, falls back to AGS
+
+# Try quickshell first if installed
+if command -v qs >/dev/null 2>&1; then
+ # Check if quickshell is running
+ if pgrep -x qs >/dev/null 2>&1; then
+ # Try to toggle quickshell overview
+ hyprctl dispatch global quickshell:overviewToggle 2>/dev/null && exit 0
+ fi
+fi
+
+# Fall back to AGS if quickshell failed or isn't available
+if command -v ags >/dev/null 2>&1; then
+ # Check if AGS is running, start it if not
+ if ! pgrep -x ags >/dev/null 2>&1; then
+ ags &
+ sleep 0.5
+ fi
+ # Toggle AGS overview
+ pkill rofi || true
+ ags -t 'overview' 2>/dev/null && exit 0
+fi
+
+# If we get here, neither worked
+notify-send "Overview" "Neither Quickshell nor AGS is available" -u low 2>/dev/null || true
+exit 1
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage