Hyprland/src/managers/ProtocolManager.cpp

60 lines
3.8 KiB
C++
Raw Normal View History

#include "ProtocolManager.hpp"
#include "../protocols/TearingControl.hpp"
2024-04-20 15:14:54 +02:00
#include "../protocols/FractionalScale.hpp"
#include "../protocols/XDGOutput.hpp"
2024-04-21 02:47:38 +02:00
#include "../protocols/CursorShape.hpp"
2024-04-21 17:29:30 +02:00
#include "../protocols/IdleInhibit.hpp"
2024-04-21 20:30:23 +02:00
#include "../protocols/RelativePointer.hpp"
2024-04-21 21:04:58 +02:00
#include "../protocols/XDGDecoration.hpp"
#include "../protocols/AlphaModifier.hpp"
2024-04-22 19:21:03 +02:00
#include "../protocols/GammaControl.hpp"
#include "../protocols/ForeignToplevel.hpp"
2024-04-24 22:12:26 +02:00
#include "../protocols/PointerGestures.hpp"
2024-04-25 01:58:40 +02:00
#include "../protocols/ForeignToplevelWlr.hpp"
2024-04-25 15:32:35 +02:00
#include "../protocols/ShortcutsInhibit.hpp"
2024-04-26 00:27:25 +02:00
#include "../protocols/TextInputV3.hpp"
2024-04-27 00:55:41 +02:00
#include "../protocols/PointerConstraints.hpp"
#include "tearing-control-v1.hpp"
2024-04-20 15:14:54 +02:00
#include "fractional-scale-v1.hpp"
#include "xdg-output-unstable-v1.hpp"
2024-04-21 02:47:38 +02:00
#include "cursor-shape-v1.hpp"
2024-04-21 17:29:30 +02:00
#include "idle-inhibit-unstable-v1.hpp"
2024-04-21 20:30:23 +02:00
#include "relative-pointer-unstable-v1.hpp"
2024-04-21 21:04:58 +02:00
#include "xdg-decoration-unstable-v1.hpp"
#include "alpha-modifier-v1.hpp"
2024-04-22 19:21:03 +02:00
#include "wlr-gamma-control-unstable-v1.hpp"
#include "ext-foreign-toplevel-list-v1.hpp"
2024-04-24 22:12:26 +02:00
#include "pointer-gestures-unstable-v1.hpp"
2024-04-25 01:58:40 +02:00
#include "wlr-foreign-toplevel-management-unstable-v1.hpp"
2024-04-25 15:32:35 +02:00
#include "keyboard-shortcuts-inhibit-unstable-v1.hpp"
2024-04-26 00:27:25 +02:00
#include "text-input-unstable-v3.hpp"
2024-04-27 00:55:41 +02:00
#include "pointer-constraints-unstable-v1.hpp"
CProtocolManager::CProtocolManager() {
2024-04-25 01:58:40 +02:00
PROTO::tearing = std::make_unique<CTearingControlProtocol>(&wp_tearing_control_manager_v1_interface, 1, "TearingControl");
PROTO::fractional = std::make_unique<CFractionalScaleProtocol>(&wp_fractional_scale_manager_v1_interface, 1, "FractionalScale");
PROTO::xdgOutput = std::make_unique<CXDGOutputProtocol>(&zxdg_output_manager_v1_interface, 3, "XDGOutput");
PROTO::cursorShape = std::make_unique<CCursorShapeProtocol>(&wp_cursor_shape_manager_v1_interface, 1, "CursorShape");
PROTO::idleInhibit = std::make_unique<CIdleInhibitProtocol>(&zwp_idle_inhibit_manager_v1_interface, 1, "IdleInhibit");
PROTO::relativePointer = std::make_unique<CRelativePointerProtocol>(&zwp_relative_pointer_manager_v1_interface, 1, "RelativePointer");
PROTO::xdgDecoration = std::make_unique<CXDGDecorationProtocol>(&zxdg_decoration_manager_v1_interface, 1, "XDGDecoration");
PROTO::alphaModifier = std::make_unique<CAlphaModifierProtocol>(&wp_alpha_modifier_v1_interface, 1, "AlphaModifier");
PROTO::gamma = std::make_unique<CGammaControlProtocol>(&zwlr_gamma_control_manager_v1_interface, 1, "GammaControl");
PROTO::foreignToplevel = std::make_unique<CForeignToplevelProtocol>(&ext_foreign_toplevel_list_v1_interface, 1, "ForeignToplevel");
PROTO::pointerGestures = std::make_unique<CPointerGesturesProtocol>(&zwp_pointer_gestures_v1_interface, 3, "PointerGestures");
PROTO::foreignToplevelWlr = std::make_unique<CForeignToplevelWlrProtocol>(&zwlr_foreign_toplevel_manager_v1_interface, 3, "ForeignToplevelWlr");
2024-04-25 15:32:35 +02:00
PROTO::shortcutsInhibit = std::make_unique<CKeyboardShortcutsInhibitProtocol>(&zwp_keyboard_shortcuts_inhibit_manager_v1_interface, 1, "ShortcutsInhibit");
2024-04-26 00:27:25 +02:00
PROTO::textInputV3 = std::make_unique<CTextInputV3Protocol>(&zwp_text_input_manager_v3_interface, 1, "TextInputV3");
2024-04-27 00:55:41 +02:00
PROTO::constraints = std::make_unique<CPointerConstraintsProtocol>(&zwp_pointer_constraints_v1_interface, 1, "PointerConstraints");
// Old protocol implementations.
// TODO: rewrite them to use hyprwayland-scanner.
m_pToplevelExportProtocolManager = std::make_unique<CToplevelExportProtocolManager>();
m_pTextInputV1ProtocolManager = std::make_unique<CTextInputV1ProtocolManager>();
m_pGlobalShortcutsProtocolManager = std::make_unique<CGlobalShortcutsProtocolManager>();
m_pScreencopyProtocolManager = std::make_unique<CScreencopyProtocolManager>();
}