TerminalScrollController class
Owns scroll gesture state for TerminalView: pixel accumulator, routing, per-tick flush to either local history scroll or batched PTY writes.
Constructors
- TerminalScrollController({required TerminalEngine engine, required double cellHeight, required int scrollMultiplier})
Properties
- engine → TerminalEngine
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- historyScrollInFlight → bool
-
no setter
- isFlinging → bool
-
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
cancelPendingHistory(
) → void - Drop all pending history scroll state including wheel pixel remainder.
-
cancelPendingHistoryFlushes(
) → void - Drop coalesced history wheel/pan/fling deltas. Call before absolute scroll (scrollbar, ScrollTo*) so a pending flush cannot override the target position on the next microtask/frame.
-
dispose(
) → void -
drainHistoryScroll(
) → Future< void> - Waits until no history scroll flush is scheduled, in flight, or pending. Wired to TerminalEngine.onDrainHistoryScroll for absolute scroll paths.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onGestureStart(
) → void -
onPanDelta(
{required double dyPx, required bool shiftHeld}) → void -
onWheelSignal(
{required double dyPx, required bool shiftHeld}) → void -
setWheelCell(
{required int col, required int row}) → void -
startFling(
{required double velocityPxPerSec, required double deceleration, required bool shiftHeld, required Ticker createTicker(TickerCallback )}) → void -
stopFling(
) → void -
toString(
) → String -
A string representation of this object.
inherited
-
updateCellHeight(
double cellHeight) → void - Rebuilds the pixel accumulator when cell metrics change (font zoom). Sub-line ScrollAccumulator.remainderPx is intentionally discarded.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited