aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsarbes <sarbes@kodi.tv>2024-08-16 17:17:20 +0200
committersarbes <sarbes@kodi.tv>2024-08-16 17:17:20 +0200
commit0a03c6dec8fc59e82cd2aa8d8aa47b112e46109e (patch)
tree279e0d4d6723e258fb76b6722b9da8ef67d4bda4
parent27d6e16f2f06f05736a8da5da0fffce796aeb425 (diff)
Fix dimming screensaver if rendering front to back
-rw-r--r--xbmc/windows/GUIWindowScreensaverDim.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/xbmc/windows/GUIWindowScreensaverDim.cpp b/xbmc/windows/GUIWindowScreensaverDim.cpp
index 7bc360f18d..2a3fdb1473 100644
--- a/xbmc/windows/GUIWindowScreensaverDim.cpp
+++ b/xbmc/windows/GUIWindowScreensaverDim.cpp
@@ -68,6 +68,11 @@ void CGUIWindowScreensaverDim::Process(unsigned int currentTime, CDirtyRegionLis
void CGUIWindowScreensaverDim::Render()
{
+ RENDER_ORDER renderOrder = CServiceBroker::GetWinSystem()->GetGfxContext().GetRenderOrder();
+ if (renderOrder == RENDER_ORDER_FRONT_TO_BACK)
+ return;
+ else if (renderOrder == RENDER_ORDER_BACK_TO_FRONT)
+ CServiceBroker::GetWinSystem()->GetGfxContext().SetRenderOrder(RENDER_ORDER_ALL_BACK_TO_FRONT);
// draw a translucent black quad - fading is handled by the window animation
KODI::UTILS::COLOR::Color color =
(static_cast<KODI::UTILS::COLOR::Color>(m_dimLevel * 2.55f) & 0xff) << 24;
@@ -75,4 +80,5 @@ void CGUIWindowScreensaverDim::Render()
CRect rect(0, 0, (float)CServiceBroker::GetWinSystem()->GetGfxContext().GetWidth(), (float)CServiceBroker::GetWinSystem()->GetGfxContext().GetHeight());
CGUITexture::DrawQuad(rect, color);
CGUIDialog::Render();
+ CServiceBroker::GetWinSystem()->GetGfxContext().SetRenderOrder(renderOrder);
}