Vendor the command set the menu and shell depend on
This commit is contained in:
Executable
+21
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
|
||||
# blob:summary=Returns true when Hyprland has an enabled monitor with no mode
|
||||
# blob:hidden=true
|
||||
|
||||
# A monitor powered off at boot answers with a partial EDID carrying no video
|
||||
# modes, so Hyprland brings it up at 0x0 and the screen stays black. Mirrors are
|
||||
# absent from plain `monitors`, hence `all` plus an explicit disabled filter.
|
||||
#
|
||||
# Exits 0 modeless, 1 not, 2 when the compositor cannot say. Nothing fires an
|
||||
# event for this state, so a caller that gave up on an unanswered query would
|
||||
# leave the screen black for good.
|
||||
monitors=$(hyprctl monitors all -j 2>/dev/null) || exit 2
|
||||
|
||||
state=$(jq 'if any(.[]; .disabled != true and (.width == 0 or .height == 0)) then 0 else 1 end' \
|
||||
<<<"$monitors" 2>/dev/null)
|
||||
|
||||
case $state in
|
||||
0 | 1) exit "$state" ;;
|
||||
*) exit 2 ;;
|
||||
esac
|
||||
Reference in New Issue
Block a user