You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

50 lines
1.2 KiB

import 'package:get/get.dart';
/// 全局 Overlay 控制器
class OverlayController extends GetxController {
/// overlay 是否显示(直播房间)
final showOverlay = false.obs;
/// 视频通话 overlay 是否显示
final showVideoCallOverlay = false.obs;
/// 视频通话信息
String? videoCallTargetUserId;
String? videoCallTargetUserName;
String? videoCallTargetAvatarUrl;
/// 显示 overlay(直播房间)
void show() {
showOverlay.value = true;
}
/// 隐藏 overlay(直播房间)
void hide() {
showOverlay.value = false;
}
/// 切换 overlay 显示状态(直播房间)
void toggle() {
showOverlay.value = !showOverlay.value;
}
/// 显示视频通话 overlay
void showVideoCall({
required String targetUserId,
String? targetUserName,
String? targetAvatarUrl,
}) {
videoCallTargetUserId = targetUserId;
videoCallTargetUserName = targetUserName;
videoCallTargetAvatarUrl = targetAvatarUrl;
showVideoCallOverlay.value = true;
}
/// 隐藏视频通话 overlay
void hideVideoCall() {
showVideoCallOverlay.value = false;
videoCallTargetUserId = null;
videoCallTargetUserName = null;
videoCallTargetAvatarUrl = null;
}
}