mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
Added state restoring to list for boost awarding members.
This commit is contained in:
parent
27e2a4b5d2
commit
9d4e1689fa
3 changed files with 18 additions and 4 deletions
|
@ -367,7 +367,8 @@ void CreateGiveawayBox(
|
||||||
using Controller = Giveaway::AwardMembersListController;
|
using Controller = Giveaway::AwardMembersListController;
|
||||||
auto listController = std::make_unique<Controller>(
|
auto listController = std::make_unique<Controller>(
|
||||||
controller,
|
controller,
|
||||||
peer);
|
peer,
|
||||||
|
state->selectedToAward);
|
||||||
listController->setCheckError(CreateErrorCallback(
|
listController->setCheckError(CreateErrorCallback(
|
||||||
state->apiOptions.giveawayAddPeersMax(),
|
state->apiOptions.giveawayAddPeersMax(),
|
||||||
tr::lng_giveaway_maximum_users_error));
|
tr::lng_giveaway_maximum_users_error));
|
||||||
|
|
|
@ -107,8 +107,16 @@ void ChannelRow::rightActionStopLastRipple() {
|
||||||
|
|
||||||
AwardMembersListController::AwardMembersListController(
|
AwardMembersListController::AwardMembersListController(
|
||||||
not_null<Window::SessionNavigation*> navigation,
|
not_null<Window::SessionNavigation*> navigation,
|
||||||
not_null<PeerData*> peer)
|
not_null<PeerData*> peer,
|
||||||
: ParticipantsBoxController(navigation, peer, ParticipantsRole::Members) {
|
std::vector<not_null<PeerData*>> selected)
|
||||||
|
: ParticipantsBoxController(navigation, peer, ParticipantsRole::Members)
|
||||||
|
, _selected(std::move(selected)) {
|
||||||
|
}
|
||||||
|
|
||||||
|
void AwardMembersListController::prepare() {
|
||||||
|
ParticipantsBoxController::prepare();
|
||||||
|
delegate()->peerListAddSelectedPeers(base::take(_selected));
|
||||||
|
delegate()->peerListRefreshRows();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AwardMembersListController::rowClicked(not_null<PeerListRow*> row) {
|
void AwardMembersListController::rowClicked(not_null<PeerListRow*> row) {
|
||||||
|
|
|
@ -27,7 +27,10 @@ class AwardMembersListController : public ParticipantsBoxController {
|
||||||
public:
|
public:
|
||||||
AwardMembersListController(
|
AwardMembersListController(
|
||||||
not_null<Window::SessionNavigation*> navigation,
|
not_null<Window::SessionNavigation*> navigation,
|
||||||
not_null<PeerData*> peer);
|
not_null<PeerData*> peer,
|
||||||
|
std::vector<not_null<PeerData*>> selected);
|
||||||
|
|
||||||
|
void prepare() override;
|
||||||
|
|
||||||
void setCheckError(Fn<bool(int)> callback);
|
void setCheckError(Fn<bool(int)> callback);
|
||||||
|
|
||||||
|
@ -41,6 +44,8 @@ public:
|
||||||
private:
|
private:
|
||||||
Fn<bool(int)> _checkErrorCallback;
|
Fn<bool(int)> _checkErrorCallback;
|
||||||
|
|
||||||
|
std::vector<not_null<PeerData*>> _selected;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class MyChannelsListController : public PeerListController {
|
class MyChannelsListController : public PeerListController {
|
||||||
|
|
Loading…
Add table
Reference in a new issue