aboutsummaryrefslogtreecommitdiff
path: root/assets
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-25 13:14:40 -0500
committerCraig Jennings <c@cjennings.net>2026-05-25 13:14:40 -0500
commit3bd514d9841429ba8a5b02819e7e10950c62ab8e (patch)
tree6ccc73edaca3dd7e8d43785f21dabd699afa98e5 /assets
parent32cfe216b4f5917b1a979e0372edf9b8f1ab62ea (diff)
downloaddotemacs-3bd514d9841429ba8a5b02819e7e10950c62ab8e.tar.gz
dotemacs-3bd514d9841429ba8a5b02819e7e10950c62ab8e.zip
feat(auto-dim): dim vterm windows by blending terminal colors
Window dimming via face-remap never reached vterm. The terminal resolves its own colors per cell while redrawing, so it bypasses the remapped faces, and agent and shell windows stayed bright when they lost focus. I advise vterm--get-color to blend each looked-up color toward the auto-dim faces whenever every window showing the buffer is dimmed. The foreground and background blend amounts are separate defcustoms (foreground stays more legible, background fades harder). After a dim-state change I force a full vterm repaint by briefly nudging the terminal size, because vterm only repaints the rows libvterm marked dirty. A post-command hook and a select-window advice cover the windmove and Shift-arrow focus paths that window-selection-change-functions misses. Tests cover the dimmed-buffer predicate, the color blend, the selection-change scheduling, and the auto-dim-before-repaint ordering.
Diffstat (limited to 'assets')
0 files changed, 0 insertions, 0 deletions