/* This file is part of Telegram Desktop, the official desktop application for the Telegram messaging service. For license and copyright information please follow this link: https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL */ #pragma once #include "base/object_ptr.h" #include "base/unique_qptr.h" namespace Ui { class DropdownMenu; class GenericBox; class BoxContent; } // namespace Ui namespace Ui::Menu { class ItemBase; class Menu; } // namespace Ui::Menu namespace Calls { class GroupCall; } // namespace Calls namespace Calls::Group { enum class BoxContext { GroupCallPanel, MainWindow, }; void LeaveBox( not_null box, not_null call, bool discardChecked, BoxContext context); void ConfirmBox( not_null box, const TextWithEntities &text, rpl::producer button, Fn callback); void FillMenu( not_null menu, not_null peer, not_null call, Fn chooseJoinAs, Fn)> showBox); [[nodiscard]] base::unique_qptr MakeAttentionAction( not_null menu, const QString &text, Fn callback); } // namespace Calls::Group