From f7d04d668bb910791f09af4ea30477847f67922b Mon Sep 17 00:00:00 2001 From: John Preston Date: Sun, 24 Mar 2024 14:26:24 +0400 Subject: [PATCH] Hide captions in IV slideshows. --- Telegram/Resources/iv_html/page.css | 2 +- Telegram/Resources/iv_html/page.js | 1 - Telegram/SourceFiles/iv/iv_prepare.cpp | 22 ++++++++++++---------- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/Telegram/Resources/iv_html/page.css b/Telegram/Resources/iv_html/page.css index 6df26aaf9..2763760f2 100644 --- a/Telegram/Resources/iv_html/page.css +++ b/Telegram/Resources/iv_html/page.css @@ -652,7 +652,7 @@ figure.slideshow .video-wrap { bottom: 10px; white-space: nowrap; overflow: hidden; - z-index: 3; + z-index: 5; } .slideshow-buttons > fieldset { padding: 0; diff --git a/Telegram/Resources/iv_html/page.js b/Telegram/Resources/iv_html/page.js index 0139f4c91..053a6a0ab 100644 --- a/Telegram/Resources/iv_html/page.js +++ b/Telegram/Resources/iv_html/page.js @@ -149,7 +149,6 @@ var IV = { var s = form.s; const next = +s.value + delta; s.value = (next == s.length) ? 0 : (next == -1) ? (s.length - 1) : next; - s.forEach(function(el){ el.checked && el.parentNode.scrollIntoView && el.parentNode.scrollIntoView({behavior: 'smooth', block: 'center', inline: 'center'}); }); form.nextSibling.firstChild.style[marginProp] = (-100 * s.value) + '%'; } else { el.form.nextSibling.firstChild.style[marginProp] = (-100 * el.value) + '%'; diff --git a/Telegram/SourceFiles/iv/iv_prepare.cpp b/Telegram/SourceFiles/iv/iv_prepare.cpp index 2d9595667..ff21e4e55 100644 --- a/Telegram/SourceFiles/iv/iv_prepare.cpp +++ b/Telegram/SourceFiles/iv/iv_prepare.cpp @@ -110,13 +110,11 @@ private: [[nodiscard]] QByteArray block( const MTPDpageBlockPhoto &data, const Ui::GroupMediaLayout &layout = {}, - QSize outer = {}, - int slideshowIndex = -1); + QSize outer = {}); [[nodiscard]] QByteArray block( const MTPDpageBlockVideo &data, const Ui::GroupMediaLayout &layout = {}, - QSize outer = {}, - int slideshowIndex = -1); + QSize outer = {}); [[nodiscard]] QByteArray block(const MTPDpageBlockCover &data); [[nodiscard]] QByteArray block(const MTPDpageBlockEmbed &data); [[nodiscard]] QByteArray block(const MTPDpageBlockEmbedPost &data); @@ -461,8 +459,7 @@ QByteArray Parser::block(const MTPDpageBlockPullquote &data) { QByteArray Parser::block( const MTPDpageBlockPhoto &data, const Ui::GroupMediaLayout &layout, - QSize outer, - int slideshowIndex) { + QSize outer) { const auto collage = !layout.geometry.isEmpty(); const auto slideshow = !collage && !outer.isEmpty(); const auto photo = photoById(data.vphoto_id().v); @@ -518,16 +515,19 @@ QByteArray Parser::block( { "href", href }, { "oncontextmenu", data.vurl() ? QByteArray() : "return false;" }, { "data-context", data.vurl() ? QByteArray() : "viewer-photo" + id }, - }, result) + caption(data.vcaption()); + }, result); + if (!slideshow) { + result += caption(data.vcaption()); + } return result; } QByteArray Parser::block( const MTPDpageBlockVideo &data, const Ui::GroupMediaLayout &layout, - QSize outer, - int slideshowIndex) { + QSize outer) { const auto collage = !layout.geometry.isEmpty(); + const auto slideshow = !collage && !outer.isEmpty(); const auto collageSmall = collage && (layout.geometry.width() < outer.width()); const auto video = documentById(data.vvideo_id().v); @@ -581,7 +581,9 @@ QByteArray Parser::block( { "data-context", "viewer-video" + id }, }, result); } - result += caption(data.vcaption()); + if (!slideshow) { + result += caption(data.vcaption()); + } return result; }