diff options
| author | vaxerski <vaxry@vaxry.net> | 2023-08-14 14:22:06 +0200 |
|---|---|---|
| committer | vaxerski <vaxry@vaxry.net> | 2023-08-14 14:22:10 +0200 |
| commit | 13886a264f7e076681f9c2c65367c643a973f390 (patch) | |
| tree | ce8d58854307298c7312341f90ca926e94e87db3 /src/helpers/Monitor.cpp | |
| parent | a0cf89029263decba29b0f4216b38576f4418335 (diff) | |
internal: add a new monitor auto system
Diffstat (limited to 'src/helpers/Monitor.cpp')
| -rw-r--r-- | src/helpers/Monitor.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp index a860585d..3839115a 100644 --- a/src/helpers/Monitor.cpp +++ b/src/helpers/Monitor.cpp @@ -489,6 +489,8 @@ void CMonitor::setMirror(const std::string& mirrorOf) { // remove from mvmonitors std::erase_if(g_pCompositor->m_vMonitors, [&](const auto& other) { return other.get() == this; }); + g_pCompositor->arrangeMonitors(); + g_pCompositor->setActiveMonitor(g_pCompositor->m_vMonitors.front().get()); g_pCompositor->sanityCheckWorkspaces(); @@ -622,3 +624,10 @@ void CMonitor::setSpecialWorkspace(CWorkspace* const pWorkspace) { void CMonitor::setSpecialWorkspace(const int& id) { setSpecialWorkspace(g_pCompositor->getWorkspaceByID(id)); } + +void CMonitor::moveTo(const Vector2D& pos) { + vecPosition = pos; + + if (!isMirror()) + wlr_output_layout_add(g_pCompositor->m_sWLROutputLayout, output, (int)vecPosition.x, (int)vecPosition.y); +} |
