Function: claude-code-ide--terminal-reflow-filter
claude-code-ide--terminal-reflow-filter is a natively compiled
function defined in claude-code-ide.el.
Signature
(claude-code-ide--terminal-reflow-filter ORIGINAL-FN &rest ARGS)
Documentation
Filter terminal reflows to prevent height-only resize triggers.
This wraps ORIGINAL-FN to suppress reflow signals unless the terminal width has actually changed, working around the scrolling glitch.
Source Code
;; Defined in /nix/store/yjvbhwl7p6zrbw9xlnni7y4hra8sa3pl-emacs-packages-deps/share/emacs/site-lisp/claude-code-ide.el
(defun claude-code-ide--terminal-reflow-filter (original-fn &rest args)
"Filter terminal reflows to prevent height-only resize triggers.
This wraps ORIGINAL-FN to suppress reflow signals unless the terminal
width has actually changed, working around the scrolling glitch."
(let* ((base-result (apply original-fn args))
(dimensions-stable t))
;; Examine each window showing a Claude session
(dolist (win (window-list))
(when-let* ((buf (window-buffer win))
((claude-code-ide--session-buffer-p buf)))
(let* ((new-width (window-width win))
(cached-width (window-parameter win 'claude-code-ide-cached-width)))
;; Width change detected
(unless (eql new-width cached-width)
(setq dimensions-stable nil)
(set-window-parameter win 'claude-code-ide-cached-width new-width)))))
;; Decide whether to allow reflow
(cond
;; Not in a Claude buffer - pass through
((not (claude-code-ide--session-buffer-p (current-buffer)))
base-result)
;; In scroll mode - suppress reflow
((claude-code-ide--terminal-scroll-mode-active-p)
nil)
;; Dimensions changed - allow reflow
((not dimensions-stable)
base-result)
;; No width change - suppress reflow
(t nil))))