From 024eb0947ec8b52e7a0f116eb7ec8a99f922ada2 Mon Sep 17 00:00:00 2001 From: John Preston Date: Wed, 15 Jul 2026 09:30:12 +0400 Subject: [PATCH] Hide Expand button while editing a media caption --- Telegram/SourceFiles/history/history_widget.cpp | 5 +++++ .../history/view/controls/history_view_compose_controls.cpp | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/Telegram/SourceFiles/history/history_widget.cpp b/Telegram/SourceFiles/history/history_widget.cpp index e4e8748ea1..50f81efb33 100644 --- a/Telegram/SourceFiles/history/history_widget.cpp +++ b/Telegram/SourceFiles/history/history_widget.cpp @@ -2790,6 +2790,7 @@ bool HistoryWidget::applyDraft(FieldHistoryAction fieldHistoryAction) { if (!_replyEditMsg) { requestMessageData(_editMsgId); } + updateExpandButtonVisibility(); if (editDraft && editDraft->suggest) { using namespace HistoryView; applySuggestOptions(editDraft->suggest, SuggestMode::Change); @@ -7062,6 +7063,10 @@ void HistoryWidget::updateExpandButtonVisibility() { || _voiceRecordBar->isActive() || !hasEnoughLinesForExpand() || (textExceedsMaxSize() && !editingMessage()) + || (_editMsgId + && _replyEditMsg + && _replyEditMsg->media() + && !_replyEditMsg->media()->webpage()) || !Iv::Editor::CanAuthorRichMessages(&session()); if (_expand->isHidden() != hidden) { _expand->setVisible(!hidden); diff --git a/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp b/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp index 0792a1f4ef..9c2b7c2a84 100644 --- a/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp +++ b/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp @@ -4159,11 +4159,16 @@ void ComposeControls::updateAiButtonVisibility() { } void ComposeControls::updateExpandButtonVisibility() { + const auto item = (_history && isEditingMessage()) + ? _history->owner().message(_header->editMsgId()) + : nullptr; + const auto media = item ? item->media() : nullptr; const auto hidden = !_wrap->isVisible() || _recording.current() || !_field->isVisible() || !hasEnoughLinesForExpand() || textExceedsMaxSize() + || (media && !media->webpage()) || !Iv::Editor::CanAuthorRichMessages(&_show->session()); if (_expand->isHidden() != hidden) { _expand->setVisible(!hidden);