| 41 | namespace { |
| 42 | |
| 43 | class Show final : public Ui::Show { |
| 44 | public: |
| 45 | explicit Show(not_null<Controller*> window); |
| 46 | |
| 47 | void showOrHideBoxOrLayer( |
| 48 | std::variant< |
| 49 | v::null_t, |
| 50 | object_ptr<Ui::BoxContent>, |
| 51 | std::unique_ptr<Ui::LayerWidget>> &&layer, |
| 52 | Ui::LayerOptions options, |
| 53 | anim::type animated) const override; |
| 54 | [[nodiscard]] not_null<QWidget*> toastParent() const override; |
| 55 | [[nodiscard]] bool valid() const override; |
| 56 | operator bool() const override; |
| 57 | |
| 58 | private: |
| 59 | const base::weak_ptr<Controller> _window; |
| 60 | |
| 61 | }; |
| 62 | |
| 63 | Show::Show(not_null<Controller*> window) |
| 64 | : _window(base::make_weak(window)) { |