diff options
author | sarbes <sarbes@kodi.tv> | 2024-08-16 17:17:20 +0200 |
---|---|---|
committer | sarbes <sarbes@kodi.tv> | 2024-08-16 17:17:20 +0200 |
commit | 0a03c6dec8fc59e82cd2aa8d8aa47b112e46109e (patch) | |
tree | 279e0d4d6723e258fb76b6722b9da8ef67d4bda4 | |
parent | 27d6e16f2f06f05736a8da5da0fffce796aeb425 (diff) |
Fix dimming screensaver if rendering front to back
-rw-r--r-- | xbmc/windows/GUIWindowScreensaverDim.cpp | 6 |
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); } |