Unify internal monitor detection across scripts
Four scripts matched internal panels with contains("eDP") while
omarchy-monitor-state used test("^(eDP|LVDS|DSI)-"), so laptops with
LVDS or DSI panels were internal to monitor-state but invisible to the
clamshell, mirror, and external-active logic. All five sites now share
the inclusive anchored pattern.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
1d87fa0188
commit
9914513a31
@@ -8,7 +8,7 @@ CLAMSHELL_FLAG="$TOGGLES_DIR/internal-monitor-clamshell.lua"
|
|||||||
MANUAL_DISABLE_FLAG="$TOGGLES_DIR/internal-monitor-disable.lua"
|
MANUAL_DISABLE_FLAG="$TOGGLES_DIR/internal-monitor-disable.lua"
|
||||||
SCALE_STATE="$TOGGLES_DIR/internal-monitor-scale"
|
SCALE_STATE="$TOGGLES_DIR/internal-monitor-scale"
|
||||||
|
|
||||||
INTERNAL=$(hyprctl monitors all -j | jq -r '.[] | select(.name | contains("eDP")).name' | head -n 1)
|
INTERNAL=$(hyprctl monitors all -j | jq -r '.[] | select(.name | test("^(eDP|LVDS|DSI)-")).name' | head -n 1)
|
||||||
|
|
||||||
valid_scale() {
|
valid_scale() {
|
||||||
[[ $1 =~ ^[0-9]+([.][0-9]+)?$ ]]
|
[[ $1 =~ ^[0-9]+([.][0-9]+)?$ ]]
|
||||||
|
|||||||
@@ -3,4 +3,4 @@
|
|||||||
# omarchy:summary=Returns true when Hyprland has an active external monitor
|
# omarchy:summary=Returns true when Hyprland has an active external monitor
|
||||||
# omarchy:hidden=true
|
# omarchy:hidden=true
|
||||||
|
|
||||||
hyprctl monitors -j | jq -e '.[] | select(.name | contains("eDP") | not) | select(.disabled == false)' >/dev/null 2>&1
|
hyprctl monitors -j | jq -e '.[] | select(.name | test("^(eDP|LVDS|DSI)-") | not) | select(.disabled == false)' >/dev/null 2>&1
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ TOGGLE_FLAG="$HOME/.local/state/omarchy/toggles/hypr/$TOGGLE.lua"
|
|||||||
MIRROR_TOGGLE="internal-monitor-mirror"
|
MIRROR_TOGGLE="internal-monitor-mirror"
|
||||||
|
|
||||||
# Get internal monitor name dynamically, including disabled outputs.
|
# Get internal monitor name dynamically, including disabled outputs.
|
||||||
INTERNAL=$(hyprctl monitors all -j | jq -r '.[] | select(.name | contains("eDP")).name' | head -n 1)
|
INTERNAL=$(hyprctl monitors all -j | jq -r '.[] | select(.name | test("^(eDP|LVDS|DSI)-")).name' | head -n 1)
|
||||||
|
|
||||||
wake() {
|
wake() {
|
||||||
hyprctl dispatch 'hl.dsp.dpms({ action = "enable" })' >/dev/null 2>&1 || true
|
hyprctl dispatch 'hl.dsp.dpms({ action = "enable" })' >/dev/null 2>&1 || true
|
||||||
|
|||||||
@@ -8,9 +8,9 @@ TOGGLE_FLAG="$HOME/.local/state/omarchy/toggles/hypr/$TOGGLE.lua"
|
|||||||
DISABLE_TOGGLE="internal-monitor-disable"
|
DISABLE_TOGGLE="internal-monitor-disable"
|
||||||
|
|
||||||
# Get names dynamically
|
# Get names dynamically
|
||||||
INTERNAL=$(hyprctl monitors -j | jq -r '.[] | select(.name | contains("eDP")).name' | head -n 1)
|
INTERNAL=$(hyprctl monitors -j | jq -r '.[] | select(.name | test("^(eDP|LVDS|DSI)-")).name' | head -n 1)
|
||||||
# Get the first available external monitor
|
# Get the first available external monitor
|
||||||
EXTERNAL=$(hyprctl monitors -j | jq -r '.[] | select(.name | contains("eDP") | not).name' | head -n 1)
|
EXTERNAL=$(hyprctl monitors -j | jq -r '.[] | select(.name | test("^(eDP|LVDS|DSI)-") | not).name' | head -n 1)
|
||||||
|
|
||||||
on() {
|
on() {
|
||||||
if [[ -z $EXTERNAL ]]; then
|
if [[ -z $EXTERNAL ]]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user