From ea47e8c92ae283c4b41be0aafbdad9b0701a1624 Mon Sep 17 00:00:00 2001 From: Vaxry Date: Sat, 20 Apr 2024 14:14:54 +0100 Subject: Fractional-scale: move to new impl --- src/managers/ProtocolManager.cpp | 4 +++- src/managers/ProtocolManager.hpp | 2 -- src/managers/SessionLockManager.cpp | 3 ++- src/managers/input/InputMethodPopup.cpp | 3 ++- 4 files changed, 7 insertions(+), 5 deletions(-) (limited to 'src/managers') diff --git a/src/managers/ProtocolManager.cpp b/src/managers/ProtocolManager.cpp index 31220276..60ff8314 100644 --- a/src/managers/ProtocolManager.cpp +++ b/src/managers/ProtocolManager.cpp @@ -1,17 +1,19 @@ #include "ProtocolManager.hpp" #include "../protocols/TearingControl.hpp" +#include "../protocols/FractionalScale.hpp" #include "xdg-output-unstable-v1-protocol.h" #include "tearing-control-v1.hpp" +#include "fractional-scale-v1.hpp" CProtocolManager::CProtocolManager() { m_pToplevelExportProtocolManager = std::make_unique(); - m_pFractionalScaleProtocolManager = std::make_unique(); m_pTextInputV1ProtocolManager = std::make_unique(); m_pGlobalShortcutsProtocolManager = std::make_unique(); m_pScreencopyProtocolManager = std::make_unique(); m_pXDGOutputProtocol = std::make_unique(&zxdg_output_manager_v1_interface, 3, "XDGOutput"); 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"); } diff --git a/src/managers/ProtocolManager.hpp b/src/managers/ProtocolManager.hpp index 223460a1..1c4073ef 100644 --- a/src/managers/ProtocolManager.hpp +++ b/src/managers/ProtocolManager.hpp @@ -2,7 +2,6 @@ #include "../defines.hpp" #include "../protocols/ToplevelExport.hpp" -#include "../protocols/FractionalScale.hpp" #include "../protocols/TextInputV1.hpp" #include "../protocols/GlobalShortcuts.hpp" #include "../protocols/Screencopy.hpp" @@ -14,7 +13,6 @@ class CProtocolManager { // TODO: rewrite to use the new protocol framework std::unique_ptr m_pToplevelExportProtocolManager; - std::unique_ptr m_pFractionalScaleProtocolManager; std::unique_ptr m_pTextInputV1ProtocolManager; std::unique_ptr m_pGlobalShortcutsProtocolManager; std::unique_ptr m_pScreencopyProtocolManager; diff --git a/src/managers/SessionLockManager.cpp b/src/managers/SessionLockManager.cpp index a0374b85..d6fc912c 100644 --- a/src/managers/SessionLockManager.cpp +++ b/src/managers/SessionLockManager.cpp @@ -1,6 +1,7 @@ #include "SessionLockManager.hpp" #include "../Compositor.hpp" #include "../config/ConfigValue.hpp" +#include "../protocols/FractionalScale.hpp" static void handleSurfaceMap(void* owner, void* data) { const auto PSURFACE = (SSessionLockSurface*)owner; @@ -74,7 +75,7 @@ void CSessionLockManager::onNewSessionLock(wlr_session_lock_v1* pWlrLock) { PSURFACE->pWlrLockSurface = PWLRSURFACE; PSURFACE->iMonitorID = PMONITOR->ID; - g_pProtocolManager->m_pFractionalScaleProtocolManager->setPreferredScaleForSurface(PSURFACE->pWlrLockSurface->surface, PMONITOR->scale); + PROTO::fractional->sendScale(PSURFACE->pWlrLockSurface->surface, PMONITOR->scale); wlr_session_lock_surface_v1_configure(PWLRSURFACE, PMONITOR->vecSize.x, PMONITOR->vecSize.y); diff --git a/src/managers/input/InputMethodPopup.cpp b/src/managers/input/InputMethodPopup.cpp index 7d101e10..3a56d30c 100644 --- a/src/managers/input/InputMethodPopup.cpp +++ b/src/managers/input/InputMethodPopup.cpp @@ -1,6 +1,7 @@ #include "InputMethodPopup.hpp" #include "InputManager.hpp" #include "../../Compositor.hpp" +#include "../../protocols/FractionalScale.hpp" CInputPopup::CInputPopup(wlr_input_popup_surface_v2* surf) : pWlr(surf) { surface.assign(surf->surface); @@ -63,7 +64,7 @@ void CInputPopup::onMap() { if (!PMONITOR) return; - g_pProtocolManager->m_pFractionalScaleProtocolManager->setPreferredScaleForSurface(surface.wlr(), PMONITOR->scale); + PROTO::fractional->sendScale(surface.wlr(), PMONITOR->scale); } void CInputPopup::onUnmap() { -- cgit v1.2.3