Closing/opening lid will toggle internal monitor on/off
This commit is contained in:
+13
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Disable the internal laptop display. No-op if already disabled or if it
|
||||
# would leave no active display.
|
||||
|
||||
if omarchy-hyprland-monitors-many; then
|
||||
if omarchy-hyprland-toggle-disabled internal-monitor-disable; then
|
||||
omarchy-hyprland-toggle internal-monitor-disable --enabled-notification " Internal display off"
|
||||
fi
|
||||
else
|
||||
notify-send -u low " Can't disable the only active display"
|
||||
exit 1
|
||||
fi
|
||||
Executable
+7
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Enable the internal laptop display. No-op if already enabled.
|
||||
|
||||
if omarchy-hyprland-toggle-enabled internal-monitor-disable; then
|
||||
omarchy-hyprland-toggle internal-monitor-disable --disabled-notification " Internal display on"
|
||||
fi
|
||||
@@ -4,11 +4,6 @@
|
||||
# are currently active (e.g. external got disconnected live, during sleep, or
|
||||
# wasn't present on boot).
|
||||
|
||||
if omarchy-hyprland-toggle-enabled internal-monitor-disable; then
|
||||
ACTIVE_COUNT=$(hyprctl monitors -j 2>/dev/null | jq 'length')
|
||||
if [[ ${ACTIVE_COUNT:-0} -eq 0 ]]; then
|
||||
omarchy-hyprland-toggle \
|
||||
--disabled-notification " Internal display restored (no external connected)" \
|
||||
internal-monitor-disable
|
||||
fi
|
||||
if omarchy-hyprland-monitors-none && omarchy-hyprland-toggle-enabled internal-monitor-disable; then
|
||||
omarchy-hyprland-monitor-internal-enable
|
||||
fi
|
||||
|
||||
@@ -2,15 +2,8 @@
|
||||
|
||||
# Toggle the internal laptop display on/off.
|
||||
|
||||
if omarchy-hyprland-toggle-disabled internal-monitor-disable; then
|
||||
ACTIVE_COUNT=$(hyprctl monitors -j | jq 'length')
|
||||
if [[ $ACTIVE_COUNT -le 1 ]]; then
|
||||
notify-send -u low " Can't disable the only active display"
|
||||
exit 1
|
||||
fi
|
||||
if omarchy-hyprland-toggle-enabled internal-monitor-disable; then
|
||||
omarchy-hyprland-monitor-internal-enable
|
||||
else
|
||||
omarchy-hyprland-monitor-internal-disable
|
||||
fi
|
||||
|
||||
omarchy-hyprland-toggle \
|
||||
--enabled-notification " Internal display off" \
|
||||
--disabled-notification " Internal display on" \
|
||||
internal-monitor-disable
|
||||
|
||||
Executable
+5
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Returns true when there are multiple monitors connected (so we can disable the internal one)
|
||||
|
||||
(( $(hyprctl monitors -j 2>/dev/null | jq length) > 1 ))
|
||||
Executable
+5
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Returns true when no monitors are connected
|
||||
|
||||
(( $(hyprctl monitors -j 2>/dev/null | jq length) == 0 ))
|
||||
Reference in New Issue
Block a user