TerminalScrollController constructor

TerminalScrollController({
  1. required TerminalEngine engine,
  2. required double cellHeight,
  3. required int scrollMultiplier,
  4. double scrollSensitivity = 1.15,
  5. double fastScrollSensitivity = 5.0,
  6. required int tuiScrollSensitivity,
})

Implementation

TerminalScrollController({
  required this.engine,
  required double cellHeight,
  required int scrollMultiplier,
  /// Orca/xterm history scrollSensitivity (default 1.15).
  double scrollSensitivity = 1.15,
  /// Orca/xterm fastScrollSensitivity when Alt is held (default 5).
  double fastScrollSensitivity = 5.0,
  /// Mouse-report wheel sensitivity (1..10). Applies to discrete/mouse-notch
  /// classification (large pixel deltas / legacy); trackpad-like small pixel
  /// streams stay 1:1 and ignore this knob (Orca parity). Flutter has no
  /// `wheelDeltaY`, so abs(dy)≥50 is treated as a discrete notch. Alternate-
  /// scroll continues to use [scrollMultiplier] × [scrollSensitivity].
  required int tuiScrollSensitivity,
})  : _baseMultiplier = scrollMultiplier / 3.0,
      _scrollSensitivity = scrollSensitivity,
      _fastScrollSensitivity = fastScrollSensitivity,
      _accumulator = ScrollAccumulator(cellHeight: cellHeight),
      _historyWheelAccumulator = ScrollAccumulator(cellHeight: cellHeight),
      _tuiScrollSensitivity =
          normalizeTuiScrollSensitivity(tuiScrollSensitivity);