pumpEvents method

  1. @override
void pumpEvents()
override

Drain queued terminal→host events and dispatch them (PtyWrite/Title/…). Kept on the binding so the client stays free of FRB event types.

Implementation

@override
void pumpEvents() {
  for (final e in engineTakeEvents(engine: _engine)) {
    if (e is EngineEvent_PtyWrite) {
      onPtyWrite(e.field0);
    } else if (e is EngineEvent_Title) {
      onTitle(e.field0);
    } else if (e is EngineEvent_ResetTitle) {
      onTitle(kDefaultTerminalTitle);
    } else if (e is EngineEvent_Bell) {
      onBell();
    } else if (e is EngineEvent_ClipboardStore) {
      onClipboard(e.field0);
    } else if (e is EngineEvent_ClipboardLoad) {
      onClipboardLoad();
    } else if (e is EngineEvent_WorkingDir) {
      onWorkingDir(e.field0);
    } else if (e is EngineEvent_Notify) {
      onNotify(e.field0);
    }
  }
}