From 850cef23724a7f593d2c8cb33757880a89ee698d Mon Sep 17 00:00:00 2001 From: SirBlobby Date: Fri, 3 Jul 2026 16:12:19 -0400 Subject: [PATCH] Configure external monitors and fix lid-close display handling --- hypr/hyprland.conf | 5 +++++ hypr/monitors.conf | 34 +++++++++++++++++++--------------- 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 6478d1b..a1840af 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -19,5 +19,10 @@ source = ~/.config/hypr/bindings.conf source = ~/.config/hypr/looknfeel.conf source = ~/.config/hypr/autostart.conf +# Toggle config flags dynamically (e.g. the lid-close "disable internal display" +# flag written by omarchy-hyprland-monitor-internal). Without this the lid +# handler's disable never applies and the laptop workspace stays stranded. +source = ~/.local/state/omarchy/toggles/hypr/*.conf + # Add any other personal Hyprland configuration below # windowrule = workspace 5, match:class qemu diff --git a/hypr/monitors.conf b/hypr/monitors.conf index 019bc92..c01f8c5 100644 --- a/hypr/monitors.conf +++ b/hypr/monitors.conf @@ -2,22 +2,26 @@ # List current monitors and resolutions possible: hyprctl monitors # Format: monitor = [port], resolution, position, scale -# Optimized for retina-class 2x displays, like 13" 2.8K, 27" 5K, 32" 6K. -env = GDK_SCALE,2 -monitor=,preferred,auto,auto,vrr,1 +# --- Dual external monitor setup (laptop lid closed) --- +# Layout, left -> right: [ 1: C24 / DP-1 ] [ 2: F24 / HDMI-A-1 ] +# eDP-1 sits to the right of the externals and Hyprland automatically +# disables it when the lid is closed (since an external is connected). -# Good compromise for 27" or 32" 4K monitors (but fractional!) -# env = GDK_SCALE,1.75 -# monitor=,preferred,auto,1.6 +# Monitor 1 - C24 curved, DisplayPort via DP->HDMI adapter. +# NOTE: the DP2HDMI adapter caps this panel at 1920x1080@60 (no 75Hz mode). +monitor = DP-1, 1920x1080@60, 0x0, 1 -# Straight 1x setup for low-resolution displays like 1080p or 1440p -# Or for ultrawide monitors like 34" 3440x1440 or 49" 5120x1440 -# env = GDK_SCALE,1 -# monitor=,preferred,auto,1 +# Monitor 2 - Sceptre F24, HDMI, native 75Hz. +monitor = HDMI-A-1, 1920x1080@75, 1920x0, 1 -# Portrait/rotated secondary monitor (transform: 1 = 90°, 3 = 270°) -# monitor = DP-2, preferred, auto, 1, transform, 1 +# Laptop panel - only mode is 1920x1200@60. Parked right of the externals; +# auto-off on lid close so no windows get stranded on a closed screen. +monitor = eDP-1, 1920x1200@60, 3840x0, 1.5 -# Example for Framework 13 w/ 6K XDR Apple display -# monitor = DP-5, 6016x3384@60, auto, 2 -# monitor = eDP-1, 2880x1920@120, auto, 2 +# Catch-all fallback for any other/unknown display. +monitor = , preferred, auto, 1 + +# GDK_SCALE forced integer scaling is intentionally disabled: the external +# monitors run at 1x, so a global 2x would blow up GTK apps on them. The +# per-monitor scale factors above are enough. +# env = GDK_SCALE,2