install method

  1. @override
void install()
override

Wire the watcher's listening hook (event subscription, override, etc.).

Implementation

@override
void install() {
  // Release-build gate: skip unless the caller has opted in explicitly.
  if (!kDebugMode && !allowInRelease) return;

  if (_installed) return;
  _installed = true;

  // Chain-preserve: save whatever is registered as debugPrint right now
  // so Sentry, Bugsnag, or user-defined handlers are not silently masked.
  _previous = debugPrint;
  debugPrint = (String? message, {int? wrapWidth}) {
    TelescopeStore.recordDump(
      DumpRecord(
        message: message ?? '',
        time: DateTime.now(),
        wrapWidth: wrapWidth,
      ),
    );
    _previous(message, wrapWidth: wrapWidth);
  };
}