2
0
mirror of https://github.com/kotatogram/kotatogram-desktop synced 2025-10-25 15:16:15 +00:00

Allow editing topic title and icon.

This commit is contained in:
John Preston
2022-09-27 16:05:47 +04:00
parent c90f879c96
commit 3b3792ef75
42 changed files with 603 additions and 190 deletions

View File

@@ -7,16 +7,18 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
#pragma once
#include <rpl/variable.h>
#include "data/data_search_controller.h"
#include "window/window_session_controller.h"
namespace Data {
class ForumTopic;
} // namespace Data
namespace Ui {
class SearchFieldController;
} // namespace Ui
namespace Info {
namespace Settings {
namespace Info::Settings {
struct Tag {
explicit Tag(not_null<UserData*> self) : self(self) {
@@ -25,23 +27,27 @@ struct Tag {
not_null<UserData*> self;
};
} // namespace Settings
} // namespace Info::Settings
namespace Downloads {
namespace Info::Downloads {
struct Tag {
};
} // namespace Downloads
} // namespace Info::Downloads
namespace Info {
class Key {
public:
Key(not_null<PeerData*> peer);
explicit Key(not_null<PeerData*> peer);
explicit Key(not_null<Data::ForumTopic*> topic);
Key(Settings::Tag settings);
Key(Downloads::Tag downloads);
Key(not_null<PollData*> poll, FullMsgId contextId);
PeerData *peer() const;
Data::ForumTopic *topic() const;
UserData *settingsSelf() const;
bool isDownloads() const;
PollData *poll() const;
@@ -54,6 +60,7 @@ private:
};
std::variant<
not_null<PeerData*>,
not_null<Data::ForumTopic*>,
Settings::Tag,
Downloads::Tag,
PollKey> _value;