Skip to content

Commit

Permalink
Show unavailable admin options as unchecked.
Browse files Browse the repository at this point in the history
  • Loading branch information
john-preston committed Nov 16, 2018
1 parent 089c4ce commit 9101d64
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions Telegram/SourceFiles/boxes/edit_participant_box.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -227,9 +227,14 @@ void EditAdminBox::prepare() {
addControl(object_ptr<BoxContentDivider>(this), QMargins());
addControl(object_ptr<Ui::FlatLabel>(this, lang(lng_rights_edit_admin_header), Ui::FlatLabel::InitType::Simple, st::rightsHeaderLabel), st::rightsHeaderMargin);

auto prepareRights = (hadRights ? _oldRights : DefaultRights(channel()));
auto addCheckbox = [this, &prepareRights](Flags flags, const QString &text) {
auto checked = (prepareRights.c_channelAdminRights().vflags.v & flags) != 0;
const auto prepareRights = hadRights ? _oldRights : DefaultRights(channel());
const auto filterByMyRights = canSave()
&& !hadRights
&& !channel()->amCreator();
const auto prepareFlags = prepareRights.c_channelAdminRights().vflags.v
& (filterByMyRights ? channel()->adminRights() : ~Flag(0));
auto addCheckbox = [&](Flags flags, const QString &text) {
const auto checked = (prepareFlags & flags) != 0;
auto control = addControl(object_ptr<Ui::Checkbox>(this, text, checked, st::rightsCheckbox, st::rightsToggle), st::rightsToggleMargin);
subscribe(control->checkedChanged, [this, control](bool checked) {
InvokeQueued(this, [this, control] { applyDependencies(control); });
Expand Down

0 comments on commit 9101d64

Please sign in to comment.