summaryrefslogtreecommitdiff
path: root/src/managers
diff options
context:
space:
mode:
Diffstat (limited to 'src/managers')
-rw-r--r--src/managers/PointerManager.cpp18
-rw-r--r--src/managers/PointerManager.hpp2
2 files changed, 20 insertions, 0 deletions
diff --git a/src/managers/PointerManager.cpp b/src/managers/PointerManager.cpp
index 05059669..d3da5eff 100644
--- a/src/managers/PointerManager.cpp
+++ b/src/managers/PointerManager.cpp
@@ -164,6 +164,15 @@ void CPointerManager::unlockSoftwareAll() {
updateCursorBackend();
}
+void CPointerManager::lockSoftwareForMonitor(CMonitor* Monitor) {
+ for (auto& m : g_pCompositor->m_vMonitors) {
+ if (m->ID == Monitor->ID) {
+ lockSoftwareForMonitor(m);
+ return;
+ }
+ }
+}
+
void CPointerManager::lockSoftwareForMonitor(SP<CMonitor> mon) {
auto state = stateFor(mon);
state->softwareLocks++;
@@ -172,6 +181,15 @@ void CPointerManager::lockSoftwareForMonitor(SP<CMonitor> mon) {
updateCursorBackend();
}
+void CPointerManager::unlockSoftwareForMonitor(CMonitor* Monitor) {
+ for (auto& m : g_pCompositor->m_vMonitors) {
+ if (m->ID == Monitor->ID) {
+ unlockSoftwareForMonitor(m);
+ return;
+ }
+ }
+}
+
void CPointerManager::unlockSoftwareForMonitor(SP<CMonitor> mon) {
auto state = stateFor(mon);
state->softwareLocks--;
diff --git a/src/managers/PointerManager.hpp b/src/managers/PointerManager.hpp
index c3673e16..545b76fb 100644
--- a/src/managers/PointerManager.hpp
+++ b/src/managers/PointerManager.hpp
@@ -43,6 +43,8 @@ class CPointerManager {
void lockSoftwareForMonitor(SP<CMonitor> pMonitor);
void unlockSoftwareForMonitor(SP<CMonitor> pMonitor);
+ void lockSoftwareForMonitor(CMonitor* pMonitor);
+ void unlockSoftwareForMonitor(CMonitor* pMonitor);
void lockSoftwareAll();
void unlockSoftwareAll();