HDR-Helper v1.0.0.0
This commit is contained in:
+91
@@ -0,0 +1,91 @@
|
||||
#!/bin/bash
|
||||
|
||||
_VERSION=1.0.0.0
|
||||
# MONITOR=<DP-1 | Enter your monitor ID from xrandr>
|
||||
# NATIVE_RES=<3440x1440@165 | Enter your native monitor resolution followed by the refresh rate>
|
||||
# TEMP_RES=<2560x1440@144 | Enter a different resolution or refresh rate from your native>
|
||||
MONITOR=DP-3
|
||||
NATIVE_RES=3440x1440@165
|
||||
TEMP_RES=2560x1440@144
|
||||
|
||||
show_hdr_status() {
|
||||
ICON="/usr/share/icons/breeze-dark/devices/64/monitor.svg"
|
||||
|
||||
if [[ $(kscreen-doctor -o | grep HDR) == *"enabled"* ]]; then
|
||||
notify-send -a "HDR Helper" -i $ICON "HDR Enabled"
|
||||
else
|
||||
notify-send -a "HDR Helper" -i $ICON "HDR Disabled"
|
||||
fi
|
||||
}
|
||||
|
||||
refresh_display() {
|
||||
kscreen-doctor output.$MONITOR.mode.$TEMP_RES
|
||||
kscreen-doctor output.$MONITOR.mode.$NATIVE_RES
|
||||
show_hdr_status
|
||||
}
|
||||
|
||||
enable_hdr () {
|
||||
kscreen-doctor output.$MONITOR.hdr.enable
|
||||
refresh_display
|
||||
}
|
||||
|
||||
disable_hdr() {
|
||||
kscreen-doctor output.$MONITOR.hdr.disable
|
||||
refresh_display
|
||||
}
|
||||
|
||||
auto_hdr() {
|
||||
if [[ $(kscreen-doctor -o | grep HDR) == *"enabled"* ]]; then
|
||||
disable_hdr
|
||||
else
|
||||
enable_hdr
|
||||
fi
|
||||
}
|
||||
|
||||
show_version() {
|
||||
echo "HDR Helper v"$_VERSION
|
||||
}
|
||||
|
||||
show_help () {
|
||||
echo "--- Usage ---"
|
||||
echo "hdr-helper | The default behaviour will automatically enable or disable HDR"
|
||||
echo "hdr-helper -e | Force enables HDR"
|
||||
echo "hdr-helper -d | Force disables HDR"
|
||||
echo "hdr-helper -s | Shows detected HDR status as a system notification"
|
||||
echo "hdr-helper -v | Displays version information"
|
||||
echo "hdr-helper -h | Displays this help screen"
|
||||
echo ""
|
||||
echo "--- Info ---"
|
||||
echo "Currently only KDE Plasma is supported running Wayland. Ensure that kscreen-doctor"
|
||||
echo "is present on your system for HDR Helper to function."
|
||||
echo ""
|
||||
echo "--- Config ---"
|
||||
echo "Please modify the MONITOR, NATIVE_RES and TEMP_RES values in this script."
|
||||
}
|
||||
|
||||
# Check Dependencies
|
||||
if [[ $(whereis kscreen-doctor) != *"kscreen-doctor" ]]; then
|
||||
echo "Error: kscreen-doctor cannot be detected, aborting."
|
||||
echo "Please note that only KDE Plasma is currently supported on Wayland."
|
||||
echo ""
|
||||
show_version
|
||||
|
||||
exit -1
|
||||
fi
|
||||
|
||||
# Handle Args
|
||||
if [[ $1 == "-e" ]] || [ $1 == "--enable" ]; then
|
||||
enable_hdr
|
||||
elif [[ $1 == "-d" ]] || [ $1 == "--disable" ]; then
|
||||
disable_hdr
|
||||
elif [[ $1 == "-s" ]] || [ $1 == "--status" ]; then
|
||||
show_hdr_status
|
||||
elif [[ $1 == "-v" ]] || [ $1 == "--version" ]; then
|
||||
show_version
|
||||
elif [[ $1 == "-h" ]] || [ $1 == "--help" ]; then
|
||||
show_help
|
||||
elif [[ $# -eq 0 ]]; then # Automatically Toggle HDR | Default Behaviour
|
||||
auto_hdr
|
||||
else
|
||||
show_help
|
||||
fi
|
||||
Reference in New Issue
Block a user