Update API scheme on layer 217.

This commit is contained in:
John Preston
2025-10-27 12:29:09 +04:00
parent a1565c7fff
commit 491ad744ea
17 changed files with 192 additions and 94 deletions
+18 -4
View File
@@ -235,20 +235,34 @@ bool UserData::hasUnreadStories() const {
return flags() & Flag::HasUnreadStories;
}
bool UserData::hasActiveVideoStream() const {
return flags() & Flag::HasActiveVideoStream;
}
void UserData::setStoriesState(StoriesState state) {
Expects(state != StoriesState::Unknown);
const auto was = flags();
switch (state) {
case StoriesState::None:
_flags.remove(Flag::HasActiveStories | Flag::HasUnreadStories);
_flags.remove(Flag::HasActiveStories
| Flag::HasUnreadStories
| Flag::HasActiveVideoStream);
break;
case StoriesState::HasRead:
_flags.set(
(flags() & ~Flag::HasUnreadStories) | Flag::HasActiveStories);
_flags.set(Flag::HasActiveStories
| (was
& ~(Flag::HasUnreadStories | Flag::HasActiveVideoStream)));
break;
case StoriesState::HasUnread:
_flags.add(Flag::HasActiveStories | Flag::HasUnreadStories);
_flags.set((was & ~Flag::HasActiveVideoStream)
| Flag::HasActiveStories
| Flag::HasUnreadStories);
break;
case StoriesState::HasVideoStream:
_flags.set((was & ~Flag::HasUnreadStories)
| Flag::HasActiveStories
| Flag::HasActiveVideoStream);
break;
}
if (flags() != was) {