mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2026-07-25 06:54:43 +00:00
Added ability to open full checked moderate box with pressed Ctrl.
This commit is contained in:
@@ -1170,3 +1170,13 @@ void DeleteSublistBox(
|
||||
}, st::attentionBoxButton);
|
||||
box->addButton(tr::lng_cancel(), close);
|
||||
}
|
||||
|
||||
ModerateMessagesBoxOptions DefaultModerateMessagesBoxOptions() {
|
||||
return base::IsCtrlPressed()
|
||||
? ModerateMessagesBoxOptions{
|
||||
.reportSpam = true,
|
||||
.deleteAll = true,
|
||||
.banUser = true,
|
||||
}
|
||||
: ModerateMessagesBoxOptions{};
|
||||
}
|
||||
|
||||
@@ -25,6 +25,8 @@ struct ModerateMessagesBoxOptions final {
|
||||
bool banUser = false;
|
||||
};
|
||||
|
||||
[[nodiscard]] ModerateMessagesBoxOptions DefaultModerateMessagesBoxOptions();
|
||||
|
||||
void CreateModerateMessagesBox(
|
||||
not_null<Ui::GenericBox*> box,
|
||||
const HistoryItemsList &items,
|
||||
|
||||
@@ -4970,7 +4970,7 @@ void HistoryInner::deleteItem(not_null<HistoryItem*> item) {
|
||||
}
|
||||
const auto list = HistoryItemsList{ item };
|
||||
if (CanCreateModerateMessagesBox(list)) {
|
||||
const auto opt = ModerateMessagesBoxOptions();
|
||||
const auto opt = DefaultModerateMessagesBoxOptions();
|
||||
_controller->show(Box(CreateModerateMessagesBox, list, nullptr, opt));
|
||||
} else {
|
||||
const auto suggestModerate = false;
|
||||
|
||||
@@ -9288,11 +9288,12 @@ void HistoryWidget::confirmDeleteSelected() {
|
||||
}
|
||||
const auto items = session().data().idsToItems(ids);
|
||||
if (CanCreateModerateMessagesBox(items)) {
|
||||
const auto opt = DefaultModerateMessagesBoxOptions();
|
||||
controller()->show(Box(
|
||||
CreateModerateMessagesBox,
|
||||
items,
|
||||
crl::guard(this, [=] { clearSelected(); }),
|
||||
ModerateMessagesBoxOptions{}));
|
||||
opt));
|
||||
} else {
|
||||
auto box = Box<DeleteMessagesBox>(&session(), std::move(ids));
|
||||
box->setDeleteConfirmedCallback(crl::guard(this, [=] {
|
||||
|
||||
@@ -893,7 +893,7 @@ bool AddDeleteMessageAction(
|
||||
}
|
||||
const auto list = HistoryItemsList{ item };
|
||||
if (CanCreateModerateMessagesBox(list)) {
|
||||
const auto opt = ModerateMessagesBoxOptions();
|
||||
const auto opt = DefaultModerateMessagesBoxOptions();
|
||||
controller->show(
|
||||
Box(CreateModerateMessagesBox, list, nullptr, opt));
|
||||
} else {
|
||||
|
||||
@@ -4437,7 +4437,7 @@ void ConfirmDeleteSelectedItems(not_null<ListWidget*> widget) {
|
||||
widget->cancelSelection();
|
||||
});
|
||||
if (CanCreateModerateMessagesBox(historyItems)) {
|
||||
const auto opt = ModerateMessagesBoxOptions();
|
||||
const auto opt = DefaultModerateMessagesBoxOptions();
|
||||
controller->show(
|
||||
Box(CreateModerateMessagesBox, historyItems, confirmed, opt));
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user