enterLiveRoomAudiencePage method

void enterLiveRoomAudiencePage(
  1. TUILiveInfo liveInfo
)

Implementation

void enterLiveRoomAudiencePage(TUILiveInfo liveInfo) {
  if (isRepeatClick) {
    return;
  }
  GlobalFloatWindowManager floatWindowManager = GlobalFloatWindowManager.instance;
  GlobalFloatWindowState state = GlobalFloatWindowManager.instance.state;
  if (floatWindowManager.isFloating()) {
    if (floatWindowManager.state.roomId.value == liveInfo.roomId) {
      floatWindowManager.switchToFullScreenMode();
      return;
    } else if (state.ownerId.value == TUIRoomEngine.getSelfInfo().userId) {
      makeToast(msg: LiveKitLocalizations.of(Global.appContext())!.livelist_exit_float_window_tip);
      return;
    } else {
      GlobalFloatWindowManager.instance.overlayManager.closeOverlay();
    }
  }
  Navigator.push(
      getContext(),
      MaterialPageRoute(
        settings: const RouteSettings(name: routeLiveRoomAudience),
        builder: (context) {
          if (GlobalFloatWindowManager.instance.isEnableFloatWindowFeature()) {
            return TUILiveRoomAudienceOverlay(roomId: liveInfo.roomId);
          } else {
            return TUILiveRoomAudienceWidget(roomId: liveInfo.roomId);
          }
        },
      ));
  isRepeatClick = false;
}