mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2026-08-04 11:00:46 +00:00
Merge v4.14.13
# Conflicts: # Telegram/Resources/winrc/Telegram.rc # Telegram/Resources/winrc/Updater.rc # Telegram/SourceFiles/core/version.h # Telegram/SourceFiles/history/view/controls/history_view_voice_record_bar.cpp # Telegram/SourceFiles/history/view/media/history_view_photo.cpp # Telegram/SourceFiles/history/view/reactions/history_view_reactions_selector.cpp # Telegram/SourceFiles/mainwidget.cpp # Telegram/lib_ui
This commit is contained in:
@@ -49,6 +49,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||
#include "history/history_item_helpers.h" // GetErrorTextForSending.
|
||||
#include "history/view/media/history_view_media.h"
|
||||
#include "history/view/history_view_service_message.h"
|
||||
#include "history/view/history_view_sublist_section.h"
|
||||
#include "lang/lang_keys.h"
|
||||
#include "lang/lang_cloud_manager.h"
|
||||
#include "inline_bots/inline_bot_layout_item.h"
|
||||
@@ -727,24 +728,23 @@ void MainWidget::searchMessages(const QString &query, Dialogs::Key inChat, UserD
|
||||
_dialogs->setInnerFocus();
|
||||
}
|
||||
} else {
|
||||
const auto searchIn = [&](not_null<Window::Controller*> window) {
|
||||
if (const auto controller = window->sessionController()) {
|
||||
controller->content()->searchMessages(query, inChat, from);
|
||||
controller->widget()->activate();
|
||||
}
|
||||
};
|
||||
const auto account = &session().account();
|
||||
if (const auto peer = inChat.peer()) {
|
||||
if (peer == controller()->singlePeer()) {
|
||||
if (_history->peer() != peer) {
|
||||
controller()->showPeerHistory(peer);
|
||||
if (const auto sublist = inChat.sublist()) {
|
||||
controller()->showSection(
|
||||
std::make_shared<HistoryView::SublistMemento>(sublist));
|
||||
} else if (!Data::SearchTagsFromQuery(query).empty()) {
|
||||
inChat = controller()->session().data().history(
|
||||
controller()->session().user());
|
||||
}
|
||||
if ((!_mainSection
|
||||
|| !_mainSection->searchInChatEmbedded(inChat, query))
|
||||
&& !_history->searchInChatEmbedded(inChat, query)) {
|
||||
const auto account = &session().account();
|
||||
if (const auto window = Core::App().windowFor(account)) {
|
||||
if (const auto controller = window->sessionController()) {
|
||||
controller->content()->searchMessages(query, inChat, from);
|
||||
controller->widget()->activate();
|
||||
}
|
||||
_history->searchInChatEmbedded(query);
|
||||
} else if (const auto window = Core::App().windowFor(peer)) {
|
||||
searchIn(window);
|
||||
}
|
||||
} else if (const auto window = Core::App().windowFor(account)) {
|
||||
searchIn(window);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2696,10 +2696,6 @@ int MainWidget::backgroundFromY() const {
|
||||
return -getMainSectionTop();
|
||||
}
|
||||
|
||||
void MainWidget::searchInChat(Dialogs::Key chat) {
|
||||
searchMessages(QString(), chat);
|
||||
}
|
||||
|
||||
bool MainWidget::contentOverlapped(const QRect &globalRect) {
|
||||
return _history->contentOverlapped(globalRect)
|
||||
|| _playerPlaylist->overlaps(globalRect);
|
||||
|
||||
Reference in New Issue
Block a user