createChannelHandler method

  1. @visibleForTesting
ChannelHandler createChannelHandler({
  1. bool gateEngineEvents = false,
})

Implementation

@visibleForTesting
ChannelHandler createChannelHandler({bool gateEngineEvents = false}) {
  return ChannelHandler(
    onChannelPinnedSync: (event) {
      if (gateEngineEvents && !_canAcceptEngineEvents) {
        return;
      }
      notifyChannelPinnedSync(event);
    },
    onChannelNoDisturbLevelSync: (event) {
      if (gateEngineEvents && !_canAcceptEngineEvents) {
        return;
      }
      notifyChannelNoDisturbLevelSync(event);
    },
    onChannelUnreadStatusSync: (event) {
      if (gateEngineEvents && !_canAcceptEngineEvents) {
        return;
      }
      notifyChannelUnreadStatusSync(event);
    },
    onRemoteChannelsSyncCompleted: (event) {
      if (gateEngineEvents && !_canAcceptEngineEvents) {
        return;
      }
      if (event.error == null || event.error?.code == 0) {
        notifyChannelNeedsRefresh();
      }
    },
    onTypingStatusChanged: (event) {
      if (gateEngineEvents && !_canAcceptEngineEvents) {
        return;
      }
      typingStatusNotifier.value = event;
      notifyListeners();
    },
  );
}