From 3a64c836c49d476d00e51125384ee51be21aaaf7 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Tue, 31 Mar 2026 18:25:09 +0300 Subject: [PATCH] [qrhi] Added intelligent clearColor and hide workaround. --- .../media/view/media_view_overlay_rhi.cpp | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/Telegram/SourceFiles/media/view/media_view_overlay_rhi.cpp b/Telegram/SourceFiles/media/view/media_view_overlay_rhi.cpp index f5ba4db9e8..a99348afec 100644 --- a/Telegram/SourceFiles/media/view/media_view_overlay_rhi.cpp +++ b/Telegram/SourceFiles/media/view/media_view_overlay_rhi.cpp @@ -150,6 +150,9 @@ void OverlayWidget::RendererRhi::render( QRhi *rhi, QRhiRenderTarget *rt, QRhiCommandBuffer *cb) { + if (_owner->_hideWorkaround) { + return; + } _rhi = rhi; _rt = rt; _cb = cb; @@ -265,11 +268,23 @@ void OverlayWidget::RendererRhi::releaseResources() { } QColor OverlayWidget::RendererRhi::rhiClearColor() { - return QColor(0, 0, 0, 0); + if (_owner->_hideWorkaround) { + return QColor(0, 0, 0, 0); + } else if (_owner->_fullScreenVideo) { + return st::mediaviewVideoBg->c; + } else { + return st::mediaviewBg->c; + } } std::optional OverlayWidget::RendererRhi::clearColor() { - return QColor(0, 0, 0, 0); + if (_owner->_hideWorkaround) { + return QColor(0, 0, 0, 0); + } else if (_owner->_fullScreenVideo) { + return st::mediaviewVideoBg->c; + } else { + return st::mediaviewBg->c; + } } void OverlayWidget::RendererRhi::drawTexturedQuad(