最小化弹窗问题
This commit is contained in:
parent
84b68fbb4a
commit
95dcd7e625
@ -1928,16 +1928,20 @@ class RealTimeMessagingManager extends ChangeNotifier {
|
|||||||
currentContext,
|
currentContext,
|
||||||
listen: false,
|
listen: false,
|
||||||
);
|
);
|
||||||
|
final isCurrentVisibleRoom =
|
||||||
|
rtcProvider.shouldShowRoomVisualEffects &&
|
||||||
|
rtcProvider.isVoiceRoomRouteVisible;
|
||||||
final launch = _buildRoomRocketLaunchFromStatusPayload(
|
final launch = _buildRoomRocketLaunchFromStatusPayload(
|
||||||
rtcProvider: rtcProvider,
|
rtcProvider: rtcProvider,
|
||||||
payload: data,
|
payload: data,
|
||||||
roomId: roomId,
|
roomId: roomId,
|
||||||
);
|
);
|
||||||
if (_shouldHandleRoomRocketLaunchFromStatusPayload(
|
if (isCurrentVisibleRoom &&
|
||||||
rtcProvider: rtcProvider,
|
_shouldHandleRoomRocketLaunchFromStatusPayload(
|
||||||
payload: data,
|
rtcProvider: rtcProvider,
|
||||||
launch: launch,
|
payload: data,
|
||||||
)) {
|
launch: launch,
|
||||||
|
)) {
|
||||||
_handleCurrentVisibleRoomRocketLaunch(
|
_handleCurrentVisibleRoomRocketLaunch(
|
||||||
rtcProvider: rtcProvider,
|
rtcProvider: rtcProvider,
|
||||||
launch: launch,
|
launch: launch,
|
||||||
@ -2004,6 +2008,9 @@ class RealTimeMessagingManager extends ChangeNotifier {
|
|||||||
if (!_isCurrentVoiceRoom(resolvedRoomId)) {
|
if (!_isCurrentVoiceRoom(resolvedRoomId)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (!_isCurrentVisibleVoiceRoom(resolvedRoomId)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
final initialRoomRecords = _roomRocketRewardRecordsFromPayload(data);
|
final initialRoomRecords = _roomRocketRewardRecordsFromPayload(data);
|
||||||
unawaited(
|
unawaited(
|
||||||
@ -2018,6 +2025,9 @@ class RealTimeMessagingManager extends ChangeNotifier {
|
|||||||
required RealTimeCommunicationManager rtcProvider,
|
required RealTimeCommunicationManager rtcProvider,
|
||||||
required RoomRocketLaunchBroadcastMessage launch,
|
required RoomRocketLaunchBroadcastMessage launch,
|
||||||
}) {
|
}) {
|
||||||
|
if (!_isCurrentVisibleVoiceRoom(launch.roomId)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
final launchKey = _roomRocketLaunchNoticeKey(launch);
|
final launchKey = _roomRocketLaunchNoticeKey(launch);
|
||||||
final looseLaunchKey = _roomRocketLaunchLooseKey(launch);
|
final looseLaunchKey = _roomRocketLaunchLooseKey(launch);
|
||||||
final now = DateTime.now().millisecondsSinceEpoch;
|
final now = DateTime.now().millisecondsSinceEpoch;
|
||||||
@ -2070,8 +2080,14 @@ class RealTimeMessagingManager extends ChangeNotifier {
|
|||||||
List<SCRoomRocketRewardRecordRes> initialRoomRecords =
|
List<SCRoomRocketRewardRecordRes> initialRoomRecords =
|
||||||
const <SCRoomRocketRewardRecordRes>[],
|
const <SCRoomRocketRewardRecordRes>[],
|
||||||
}) async {
|
}) async {
|
||||||
|
if (!_isCurrentVisibleVoiceRoom(roomId)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
final res = await SCChatRoomRepository().roomRocketRewardPopups(roomId);
|
final res = await SCChatRoomRepository().roomRocketRewardPopups(roomId);
|
||||||
|
if (!_isCurrentVisibleVoiceRoom(roomId)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (res.records.isEmpty && initialRoomRecords.isEmpty) {
|
if (res.records.isEmpty && initialRoomRecords.isEmpty) {
|
||||||
_scheduleRoomRocketRewardPopupRetry(
|
_scheduleRoomRocketRewardPopupRetry(
|
||||||
roomId,
|
roomId,
|
||||||
@ -2128,7 +2144,7 @@ class RealTimeMessagingManager extends ChangeNotifier {
|
|||||||
const <SCRoomRocketRewardRecordRes>[],
|
const <SCRoomRocketRewardRecordRes>[],
|
||||||
}) {
|
}) {
|
||||||
if (attempt >= _roomRocketRewardPopupRetryDelays.length ||
|
if (attempt >= _roomRocketRewardPopupRetryDelays.length ||
|
||||||
!_isCurrentVoiceRoom(roomId)) {
|
!_isCurrentVisibleVoiceRoom(roomId)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_roomRocketRewardPopupRetryTimer?.cancel();
|
_roomRocketRewardPopupRetryTimer?.cancel();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user