2
0
mirror of https://github.com/telegramdesktop/tdesktop synced 2025-08-31 14:38:15 +00:00

Implement correct ForumTopic::canWrite logic.

This commit is contained in:
John Preston
2022-10-25 11:20:22 +04:00
parent 1cd02fc3c9
commit 602ba5bba9
35 changed files with 363 additions and 144 deletions

View File

@@ -21,6 +21,7 @@ class Session;
namespace Data {
struct Reaction;
class ForumTopic;
template <typename ChangeType, typename Error, typename Generator>
inline auto FlagsValueWithMask(
@@ -102,8 +103,13 @@ inline auto PeerFullFlagValue(
[[nodiscard]] rpl::producer<bool> CanWriteValue(UserData *user);
[[nodiscard]] rpl::producer<bool> CanWriteValue(ChatData *chat);
[[nodiscard]] rpl::producer<bool> CanWriteValue(ChannelData *channel);
[[nodiscard]] rpl::producer<bool> CanWriteValue(not_null<PeerData*> peer);
[[nodiscard]] rpl::producer<bool> CanWriteValue(
ChannelData *channel,
bool checkForForum = true);
[[nodiscard]] rpl::producer<bool> CanWriteValue(
not_null<PeerData*> peer,
bool checkForForum = true);
[[nodiscard]] rpl::producer<bool> CanWriteValue(not_null<ForumTopic*> topic);
[[nodiscard]] rpl::producer<bool> CanPinMessagesValue(
not_null<PeerData*> peer);
[[nodiscard]] rpl::producer<bool> CanManageGroupCallValue(