Everything in this release is the fixed editor's mouse handling, which now covers the three things that made it feel unfinished: the wheel went to the transcript wherever the pointer was, a selection could not leave the screen, and a tool box could only be expanded along with every other one.
All of it needs fixedEditor.enabled and fixedEditor.mouseScroll. See the fixed editor guide.
Added
Click a tool box to expand just that one (fixedEditor.clickToExpandTools, default on). ctrl+o expands every box in the transcript at once, which is a lot of screen for one line of output you wanted to see. Click a box's border — the rules or either vertical — or its … ctrl+o to expand hint, and only that box opens; click again to close it. Body rows keep double click for a word and triple click for the line. Works for every box Pi builds, restyled ones included.
The input box scrolls under the pointer. A wheel notch over a draft taller than the box scrolls the box instead of the conversation. Pi re-derives the editor's scroll position from the caret on every frame, so the caret comes along, exactly as holding the arrow keys would.
A selection can cover a draft taller than the box. Hold a drag past the text — on the frame, the metadata row, or up over the transcript — and the box scrolls, selecting the rows it brings in. What gets copied comes from the editor's buffer, so rows that have scrolled out of view come with it, and backspace or delete removes the whole range.
Fixed
The wheel now goes to whatever the pointer is over rather than always to the transcript.
A selection can run past the edge of the screen. Dragging to the top or bottom row scrolls the transcript and keeps selecting, and keeps going while you hold the pointer there — a trackpad reports nothing while your finger is still, so the scrolling is on a timer. Dragging down into the pinned editor counts as the bottom edge instead of handing the pointer to the input box mid-selection.
The wheel no longer kills the drag it arrives during. The selection's anchor is an absolute transcript line, so scrolling under a drag extends it instead of dropping it.
Mouse reports that share an input chunk are no longer dropped. A terminal coalesces a burst of motion, wheel and release reports into one read, and only the first was being parsed — which is how a wheel notch arriving mid-drag used to vanish, and why fast dragging stuttered.
Box frames stay out of a selection. Dragging across a tool box copied the box: every │ down both sides and both rules came along, and the frame lit up under the highlight. A markdown table keeps every one of its pipes — a frame is only recognised as one when the run of rows is capped by a rule, which a table's ┌─┬─┐ borders are not.
saveFixedEditorPatch no longer drops copyOnSelect when saving a partial config patch.