#include "ProtocolManager.hpp" #include "../protocols/TearingControl.hpp" #include "../protocols/FractionalScale.hpp" #include "../protocols/XDGOutput.hpp" #include "../protocols/CursorShape.hpp" #include "../protocols/IdleInhibit.hpp" #include "tearing-control-v1.hpp" #include "fractional-scale-v1.hpp" #include "xdg-output-unstable-v1.hpp" #include "cursor-shape-v1.hpp" #include "idle-inhibit-unstable-v1.hpp" CProtocolManager::CProtocolManager() { PROTO::tearing = std::make_unique(&wp_tearing_control_manager_v1_interface, 1, "TearingControl"); PROTO::fractional = std::make_unique(&wp_fractional_scale_manager_v1_interface, 1, "FractionalScale"); PROTO::xdgOutput = std::make_unique(&zxdg_output_manager_v1_interface, 3, "XDGOutput"); PROTO::cursorShape = std::make_unique(&wp_cursor_shape_manager_v1_interface, 1, "CursorShape"); PROTO::idleInhibit = std::make_unique(&zwp_idle_inhibit_manager_v1_interface, 1, "IdleInhibit"); // Old protocol implementations. // TODO: rewrite them to use hyprwayland-scanner. m_pToplevelExportProtocolManager = std::make_unique(); m_pTextInputV1ProtocolManager = std::make_unique(); m_pGlobalShortcutsProtocolManager = std::make_unique(); m_pScreencopyProtocolManager = std::make_unique(); }