mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-08 08:04:08 +02:00
parent
c6f66e83ee
commit
ddad42d80e
1 changed files with 30 additions and 0 deletions
|
@ -26,6 +26,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||||
#include "chat_helpers/send_context_menu.h"
|
#include "chat_helpers/send_context_menu.h"
|
||||||
#include "boxes/confirm_box.h"
|
#include "boxes/confirm_box.h"
|
||||||
#include "boxes/sticker_set_box.h"
|
#include "boxes/sticker_set_box.h"
|
||||||
|
#include "boxes/report_box.h"
|
||||||
#include "data/data_photo.h"
|
#include "data/data_photo.h"
|
||||||
#include "data/data_photo_media.h"
|
#include "data/data_photo_media.h"
|
||||||
#include "data/data_document.h"
|
#include "data/data_document.h"
|
||||||
|
@ -607,6 +608,34 @@ void AddDeleteAction(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AddReportAction(
|
||||||
|
not_null<Ui::PopupMenu*> menu,
|
||||||
|
const ContextMenuRequest &request,
|
||||||
|
not_null<ListWidget*> list) {
|
||||||
|
const auto item = request.item;
|
||||||
|
if (!request.selectedItems.empty()) {
|
||||||
|
return;
|
||||||
|
} else if (!item || !item->suggestReport()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const auto owner = &item->history()->owner();
|
||||||
|
const auto asGroup = (request.pointState != PointState::GroupPart);
|
||||||
|
const auto controller = list->controller();
|
||||||
|
const auto itemId = item->fullId();
|
||||||
|
const auto callback = crl::guard(controller, [=] {
|
||||||
|
if (const auto item = owner->message(itemId)) {
|
||||||
|
const auto peer = item->history()->peer;
|
||||||
|
const auto group = owner->groups().find(item);
|
||||||
|
Ui::show(Box<ReportBox>(
|
||||||
|
peer,
|
||||||
|
(group
|
||||||
|
? owner->itemsToIds(group->items)
|
||||||
|
: MessageIdsList(1, itemId))));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
menu->addAction(tr::lng_context_report_msg(tr::now), callback);
|
||||||
|
}
|
||||||
|
|
||||||
bool AddClearSelectionAction(
|
bool AddClearSelectionAction(
|
||||||
not_null<Ui::PopupMenu*> menu,
|
not_null<Ui::PopupMenu*> menu,
|
||||||
const ContextMenuRequest &request,
|
const ContextMenuRequest &request,
|
||||||
|
@ -674,6 +703,7 @@ void AddMessageActions(
|
||||||
AddForwardAction(menu, request, list);
|
AddForwardAction(menu, request, list);
|
||||||
AddSendNowAction(menu, request, list);
|
AddSendNowAction(menu, request, list);
|
||||||
AddDeleteAction(menu, request, list);
|
AddDeleteAction(menu, request, list);
|
||||||
|
AddReportAction(menu, request, list);
|
||||||
AddSelectionAction(menu, request, list);
|
AddSelectionAction(menu, request, list);
|
||||||
AddRescheduleMessageAction(menu, request);
|
AddRescheduleMessageAction(menu, request);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue