diff options
| author | thejch <66577496+thejch@users.noreply.github.com> | 2024-03-07 05:27:58 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-07 13:27:58 +0000 |
| commit | 6c4e2489a0a153ac2a92744ecb2985280c97fc89 (patch) | |
| tree | d0cf1513ab82696815565af197a90c956cdc261c /src/helpers/Monitor.cpp | |
| parent | bf71026b8d31edc86a97222ef0fbec4972635cac (diff) | |
layout: Fix toggling fullscreen special workspace on different monitor (#5000)
* fix toggling fullscreen special ws on different monitor
* add for dwindle
* fix change regular workspace when special fullscreen
Diffstat (limited to 'src/helpers/Monitor.cpp')
| -rw-r--r-- | src/helpers/Monitor.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp index 7b694d48..06ea0fa5 100644 --- a/src/helpers/Monitor.cpp +++ b/src/helpers/Monitor.cpp @@ -603,6 +603,12 @@ void CMonitor::changeWorkspace(CWorkspace* const pWorkspace, bool internal, bool g_pConfigManager->ensureVRR(this); g_pCompositor->updateSuspendedStates(); + + if (specialWorkspaceID) { + const auto PSPECIALWS = g_pCompositor->getWorkspaceByID(specialWorkspaceID); + if (PSPECIALWS->m_bHasFullscreenWindow) + g_pCompositor->updateFullscreenFadeOnWorkspace(PSPECIALWS); + } } void CMonitor::changeWorkspace(const int& id, bool internal, bool noMouseMove, bool noFocus) { @@ -649,6 +655,10 @@ void CMonitor::setSpecialWorkspace(CWorkspace* const pWorkspace) { PMONITORWORKSPACEOWNER->specialWorkspaceID = 0; g_pLayoutManager->getCurrentLayout()->recalculateMonitor(PMONITORWORKSPACEOWNER->ID); g_pEventManager->postEvent(SHyprIPCEvent{"activespecial", "," + PMONITORWORKSPACEOWNER->szName}); + + const auto PACTIVEWORKSPACE = g_pCompositor->getWorkspaceByID(PMONITORWORKSPACEOWNER->activeWorkspace); + g_pCompositor->updateFullscreenFadeOnWorkspace(PACTIVEWORKSPACE); + animate = false; } |
