dialogs_quick_action_context.h 888 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /*
  2. This file is part of Telegram Desktop,
  3. the official desktop application for the Telegram messaging service.
  4. For license and copyright information please follow this link:
  5. https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
  6. */
  7. #pragma once
  8. #include "dialogs/ui/dialogs_quick_action.h"
  9. #include "ui/controls/swipe_handler_data.h"
  10. namespace Lottie {
  11. class Icon;
  12. } // namespace Lottie
  13. namespace Ui {
  14. class RippleAnimation;
  15. } // namespace Ui
  16. namespace Dialogs::Ui {
  17. using namespace ::Ui;
  18. enum class QuickDialogActionLabel {
  19. Mute,
  20. Unmute,
  21. Pin,
  22. Unpin,
  23. Read,
  24. Unread,
  25. Archive,
  26. Unarchive,
  27. Delete,
  28. Disabled,
  29. };
  30. struct QuickActionContext {
  31. ::Ui::Controls::SwipeContextData data;
  32. std::unique_ptr<Lottie::Icon> icon;
  33. std::unique_ptr<Ui::RippleAnimation> ripple;
  34. std::unique_ptr<Ui::RippleAnimation> rippleFg;
  35. QuickDialogAction action;
  36. };
  37. } // namespace Dialogs::Ui