#pragma once #include #include #include "../../toplevel_management/handle.hpp" #include "../manager.hpp" namespace qs::wayland::screencopy::hyprland { class HyprlandScreencopyManager : public QWaylandClientExtensionTemplate , public QtWayland::hyprland_toplevel_export_manager_v1 { public: ScreencopyContext* captureToplevel(toplevel_management::impl::ToplevelHandle* handle, bool paintCursors); static HyprlandScreencopyManager* instance(); private: explicit HyprlandScreencopyManager(); friend class HyprlandScreencopyContext; }; } // namespace qs::wayland::screencopy::hyprland