aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-20 10:59:30 -0400
committerCraig Jennings <c@cjennings.net>2026-06-20 10:59:30 -0400
commit0e4a84f085b63fa4f3ca291d9c26e20d25592fd0 (patch)
tree47293b7697f5e5dbd95ea1870258d3dd7fdf89bd
parent4f61b3558c9d057e153da19162c43a3db86202f9 (diff)
downloaddotemacs-0e4a84f085b63fa4f3ca291d9c26e20d25592fd0.tar.gz
dotemacs-0e4a84f085b63fa4f3ca291d9c26e20d25592fd0.zip
fix(windows): shrink the pull-away reveal to the minimum window height
minimize-window floors at window-min-height (4 lines), leaving roughly a 10% reveal. Bind window-min-height to 1 around it so the reveal opens at the ~2-line floor and the current window keeps almost the whole frame before the windsize arrows take over.
-rw-r--r--modules/ui-navigation.el7
-rw-r--r--todo.org2
2 files changed, 7 insertions, 2 deletions
diff --git a/modules/ui-navigation.el b/modules/ui-navigation.el
index f53924ebb..c099e0834 100644
--- a/modules/ui-navigation.el
+++ b/modules/ui-navigation.el
@@ -99,7 +99,12 @@ existing split does. No-op when SIDE is nil."
(when side
(let ((new (split-window (selected-window) nil side)))
(set-window-buffer new (other-buffer (current-buffer) t))
- (minimize-window new)
+ ;; Shrink the reveal to the smallest window Emacs allows (~2 lines, the
+ ;; mode line) so the current window keeps almost the whole frame; the
+ ;; sticky `windsize' arrows grow the reveal from there. `minimize-window'
+ ;; floors at `window-min-height' (4 by default), so bind it down to 1.
+ (let ((window-min-height 1))
+ (minimize-window new))
new)))
(defun cj/window-resize-sticky ()
diff --git a/todo.org b/todo.org
index b73a76faa..8b4f09e4f 100644
--- a/todo.org
+++ b/todo.org
@@ -116,7 +116,7 @@ Decided with Craig 2026-06-20: remove delete-to-trash entirely, bind =d= = =cj/d
Reported by .emacs.d 2026-06-12 01:01: the dedicated pager number (+15045173983, the Claude Pager Google Voice number on signal-cli) returns "User ... is not registered" on every send — Signal appears to have deregistered it (GV numbers get periodically re-verified). Re-registration requires captcha/SMS, which only you can do. Until then every page-signal call fails; .emacs.d's config-audit page fell back to email. Wrapper lives at claude-templates/bin/page-signal.
** 2026-06-20 Sat @ 10:29:42 -0400 C-; b + arrow pulls a window away from a sole window
-Decided with Craig 2026-06-20: when the selected window is the sole window, =C-; b= + arrow keeps that window on the arrow's edge and slivers =other-buffer= in on the opposite side (=minimize-window=, so the current window keeps almost the whole frame), focus staying put; each further arrow then shrinks it step by step via =windsize=, reading the same as resizing an existing split. Generalizes to any sole window, not just terminals — resize was a no-op there before. Built in =modules/ui-navigation.el= (=cj/window-pull-side= pure mapping + =cj/window--pull-away= + a =one-window-p= branch in =cj/window-resize-sticky=). ERT tests for the mapping and both sticky paths; geometry verified in a headless frame (down -> terminal 35/40 at the bottom, reveal slivered on top, windsize-down then steps it 35->33->31); full suite green; live-reloaded into the daemon. Refined from a first cut that split toward the arrow and jumped to 50%, per Craig's feedback. Manual gesture check filed under Manual testing and validation.
+Decided with Craig 2026-06-20: when the selected window is the sole window, =C-; b= + arrow keeps that window on the arrow's edge and slivers =other-buffer= in on the opposite side (=minimize-window=, so the current window keeps almost the whole frame), focus staying put; each further arrow then shrinks it step by step via =windsize=, reading the same as resizing an existing split. Generalizes to any sole window, not just terminals — resize was a no-op there before. Built in =modules/ui-navigation.el= (=cj/window-pull-side= pure mapping + =cj/window--pull-away= + a =one-window-p= branch in =cj/window-resize-sticky=). ERT tests for the mapping and both sticky paths; geometry verified in a headless frame (down -> terminal 37/40 at the bottom, reveal 2 lines slivered on top via window-min-height=1, windsize-down then steps it down); full suite green; live-reloaded into the daemon. Refined from a first cut that split toward the arrow and jumped to 50%, per Craig's feedback. Manual gesture check filed under Manual testing and validation.
** VERIFY [#C] Remove unused system-power keybindings :refactor:quick:next:
:PROPERTIES: