From 846b0a07ef0e002ae376cb95841c896aa8282d52 Mon Sep 17 00:00:00 2001 From: Leon Styhre Date: Fri, 3 Jun 2022 19:34:39 +0200 Subject: [PATCH] Fixed an issue with rendering elements above the carousel for legacy theme sets. --- es-app/src/views/SystemView.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/es-app/src/views/SystemView.cpp b/es-app/src/views/SystemView.cpp index 101230982..e4b2c1e70 100644 --- a/es-app/src/views/SystemView.cpp +++ b/es-app/src/views/SystemView.cpp @@ -164,8 +164,7 @@ void SystemView::render(const glm::mat4& parentTrans) mPrimary->render(trans); - // For legacy themes the carousel is always rendered on top of all other elements. - if (!mLegacyMode && !fade) + if (!fade || mLegacyMode) renderElements(parentTrans, true); } @@ -1206,7 +1205,10 @@ void SystemView::renderElements(const glm::mat4& parentTrans, bool abovePrimary) if (mLegacyMode && mSystemElements.size() > static_cast(index)) { for (auto element : mSystemElements[index].legacyExtras) { - if (mFadeTransitions || element->getDimming() != 1.0f) + if (abovePrimary && element->getZIndex() < primaryZIndex) + continue; + if ((mFadeTransitions || element->getDimming() != 1.0f) && + element->getZIndex() < primaryZIndex) element->setDimming(1.0f - mFadeOpacity); element->render(elementTrans); } @@ -1226,7 +1228,7 @@ void SystemView::renderElements(const glm::mat4& parentTrans, bool abovePrimary) } } - if (mLegacyMode) { + if (mLegacyMode && !abovePrimary) { if (mFadeTransitions) mLegacySystemInfo->setDimming(1.0f - mFadeOpacity); mLegacySystemInfo->render(elementTrans);