preserve xterm viewport intent when switching terminal tabs so
bottom-pinned sessions stay pinned and manually scrolled sessions
keep their history position
unify viewport restoration across activation, fit, and resize
paths to avoid losing scroll state after terminal reflow