summaryrefslogtreecommitdiff
path: root/src/desktop/Window.cpp
diff options
context:
space:
mode:
authorSoSeDiK <mrsosedik@gmail.com>2024-04-08 01:19:02 +0300
committerGitHub <noreply@github.com>2024-04-07 23:19:02 +0100
commit43b96f03b5af60586a864ea64e8c71b11ea6eb85 (patch)
treebc9744cfabddf1b14d356da4033ad780c9b62e8d /src/desktop/Window.cpp
parentdf1a3a978d61b976542beaadc7c0ab8468ddb5d0 (diff)
props: Allow setting per-window fullscreen opacity (#5470)
Diffstat (limited to 'src/desktop/Window.cpp')
-rw-r--r--src/desktop/Window.cpp17
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++;