diff options
| author | SoSeDiK <mrsosedik@gmail.com> | 2024-04-08 01:19:02 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-07 23:19:02 +0100 |
| commit | 43b96f03b5af60586a864ea64e8c71b11ea6eb85 (patch) | |
| tree | bc9744cfabddf1b14d356da4033ad780c9b62e8d /src/desktop/Window.cpp | |
| parent | df1a3a978d61b976542beaadc7c0ab8468ddb5d0 (diff) | |
props: Allow setting per-window fullscreen opacity (#5470)
Diffstat (limited to 'src/desktop/Window.cpp')
| -rw-r--r-- | src/desktop/Window.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/desktop/Window.cpp b/src/desktop/Window.cpp index 75f1f4a9..902ec2ca 100644 --- a/src/desktop/Window.cpp +++ b/src/desktop/Window.cpp @@ -604,19 +604,26 @@ void CWindow::applyDynamicRule(const SWindowRule& r) { if (r == "override") { if (opacityIDX == 1) { - m_sSpecialRenderData.alphaOverride = true; - m_sSpecialRenderData.alphaInactiveOverride = true; + m_sSpecialRenderData.alphaOverride = true; + m_sSpecialRenderData.alphaInactiveOverride = true; + m_sSpecialRenderData.alphaFullscreenOverride = true; } else if (opacityIDX == 2) m_sSpecialRenderData.alphaInactiveOverride = true; + else if (opacityIDX == 3) + m_sSpecialRenderData.alphaFullscreenOverride = true; } else { if (opacityIDX == 0) { - m_sSpecialRenderData.alpha = std::stof(r); - m_sSpecialRenderData.alphaInactive = std::stof(r); + m_sSpecialRenderData.alpha = std::stof(r); + m_sSpecialRenderData.alphaInactive = std::stof(r); + m_sSpecialRenderData.alphaFullscreen = std::stof(r); } else if (opacityIDX == 1) { m_sSpecialRenderData.alphaInactive = std::stof(r); m_sSpecialRenderData.alphaInactiveOverride = false; + } else if (opacityIDX == 2) { + m_sSpecialRenderData.alphaFullscreen = std::stof(r); + m_sSpecialRenderData.alphaFullscreenOverride = false; } else { - throw std::runtime_error("more than 2 alpha values"); + throw std::runtime_error("more than 3 alpha values"); } opacityIDX++; |
