mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-08-08 08:31:13 +00:00
Fix channel updates
This commit is contained in:
parent
02258369b7
commit
248e8f7f12
@ -50,7 +50,7 @@ private func activeChannelsFromUpdateGroups(_ groups: [UpdateGroup]) -> Set<Peer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return peerIds
|
return peerIds.intersection(peerIdsRequiringLocalChatStateFromUpdateGroups(groups))
|
||||||
}
|
}
|
||||||
|
|
||||||
private func associatedMessageIdsFromUpdateGroups(_ groups: [UpdateGroup]) -> Set<MessageId> {
|
private func associatedMessageIdsFromUpdateGroups(_ groups: [UpdateGroup]) -> Set<MessageId> {
|
||||||
@ -110,13 +110,15 @@ private func peerIdsRequiringLocalChatStateFromUpdateGroups(_ groups: [UpdateGro
|
|||||||
for group in groups {
|
for group in groups {
|
||||||
peerIds.formUnion(peerIdsRequiringLocalChatStateFromUpdates(group.updates))
|
peerIds.formUnion(peerIdsRequiringLocalChatStateFromUpdates(group.updates))
|
||||||
|
|
||||||
for chat in group.chats {
|
/*for chat in group.chats {
|
||||||
if let channel = parseTelegramGroupOrChannel(chat: chat) as? TelegramChannel {
|
if let channel = parseTelegramGroupOrChannel(chat: chat) as? TelegramChannel {
|
||||||
|
if let accessHash = channel.accessHash, case .personal = accessHash {
|
||||||
if case .member = channel.participationStatus {
|
if case .member = channel.participationStatus {
|
||||||
peerIds.insert(channel.id)
|
peerIds.insert(channel.id)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}*/
|
||||||
|
|
||||||
switch group {
|
switch group {
|
||||||
case let .ensurePeerHasLocalState(peerId):
|
case let .ensurePeerHasLocalState(peerId):
|
||||||
|
@ -828,6 +828,7 @@ public final class GroupCallParticipantsContext {
|
|||||||
public var participationStatusChange: ParticipationStatusChange
|
public var participationStatusChange: ParticipationStatusChange
|
||||||
public var volume: Int32?
|
public var volume: Int32?
|
||||||
public var about: String?
|
public var about: String?
|
||||||
|
public var isMin: Bool
|
||||||
|
|
||||||
init(
|
init(
|
||||||
peerId: PeerId,
|
peerId: PeerId,
|
||||||
@ -839,7 +840,8 @@ public final class GroupCallParticipantsContext {
|
|||||||
muteState: Participant.MuteState?,
|
muteState: Participant.MuteState?,
|
||||||
participationStatusChange: ParticipationStatusChange,
|
participationStatusChange: ParticipationStatusChange,
|
||||||
volume: Int32?,
|
volume: Int32?,
|
||||||
about: String?
|
about: String?,
|
||||||
|
isMin: Bool
|
||||||
) {
|
) {
|
||||||
self.peerId = peerId
|
self.peerId = peerId
|
||||||
self.ssrc = ssrc
|
self.ssrc = ssrc
|
||||||
@ -851,6 +853,7 @@ public final class GroupCallParticipantsContext {
|
|||||||
self.participationStatusChange = participationStatusChange
|
self.participationStatusChange = participationStatusChange
|
||||||
self.volume = volume
|
self.volume = volume
|
||||||
self.about = about
|
self.about = about
|
||||||
|
self.isMin = isMin
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1586,6 +1589,7 @@ extension GroupCallParticipantsContext.Update.StateUpdate.ParticipantUpdate {
|
|||||||
}
|
}
|
||||||
let isRemoved = (flags & (1 << 1)) != 0
|
let isRemoved = (flags & (1 << 1)) != 0
|
||||||
let justJoined = (flags & (1 << 4)) != 0
|
let justJoined = (flags & (1 << 4)) != 0
|
||||||
|
let isMin = (flags & (1 << 8)) != 0
|
||||||
|
|
||||||
let participationStatusChange: GroupCallParticipantsContext.Update.StateUpdate.ParticipantUpdate.ParticipationStatusChange
|
let participationStatusChange: GroupCallParticipantsContext.Update.StateUpdate.ParticipantUpdate.ParticipationStatusChange
|
||||||
if isRemoved {
|
if isRemoved {
|
||||||
@ -1614,7 +1618,8 @@ extension GroupCallParticipantsContext.Update.StateUpdate.ParticipantUpdate {
|
|||||||
muteState: muteState,
|
muteState: muteState,
|
||||||
participationStatusChange: participationStatusChange,
|
participationStatusChange: participationStatusChange,
|
||||||
volume: volume,
|
volume: volume,
|
||||||
about: about
|
about: about,
|
||||||
|
isMin: isMin
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1647,6 +1652,7 @@ extension GroupCallParticipantsContext.Update.StateUpdate {
|
|||||||
}
|
}
|
||||||
let isRemoved = (flags & (1 << 1)) != 0
|
let isRemoved = (flags & (1 << 1)) != 0
|
||||||
let justJoined = (flags & (1 << 4)) != 0
|
let justJoined = (flags & (1 << 4)) != 0
|
||||||
|
let isMin = (flags & (1 << 8)) != 0
|
||||||
|
|
||||||
let participationStatusChange: GroupCallParticipantsContext.Update.StateUpdate.ParticipantUpdate.ParticipationStatusChange
|
let participationStatusChange: GroupCallParticipantsContext.Update.StateUpdate.ParticipantUpdate.ParticipationStatusChange
|
||||||
if isRemoved {
|
if isRemoved {
|
||||||
@ -1675,7 +1681,8 @@ extension GroupCallParticipantsContext.Update.StateUpdate {
|
|||||||
muteState: muteState,
|
muteState: muteState,
|
||||||
participationStatusChange: participationStatusChange,
|
participationStatusChange: participationStatusChange,
|
||||||
volume: volume,
|
volume: volume,
|
||||||
about: about
|
about: about,
|
||||||
|
isMin: isMin
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user