diff --git a/Telegram/SourceFiles/boxes/peer_list_controllers.cpp b/Telegram/SourceFiles/boxes/peer_list_controllers.cpp index 9516130b1..98729bc49 100644 --- a/Telegram/SourceFiles/boxes/peer_list_controllers.cpp +++ b/Telegram/SourceFiles/boxes/peer_list_controllers.cpp @@ -637,6 +637,7 @@ auto ChooseTopicBoxController::Row::generatePaintUserpicCallback( p.translate(x, y); _topic->paintUserpic(p, view, { .st = &st::forumTopicRow, + .currentBg = st::windowBg, .now = crl::now(), .width = outerWidth, .paused = false, diff --git a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp index d6cbac3cb..bd1b9adb9 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp @@ -778,6 +778,7 @@ void InnerWidget::paintEvent(QPaintEvent *e) { : _peerSearchSelected)); paintPeerSearchResult(p, result.get(), { .st = &st::defaultDialogRow, + .currentBg = currentBg(), .now = ms, .width = fullWidth, .active = active, @@ -792,6 +793,7 @@ void InnerWidget::paintEvent(QPaintEvent *e) { if (_searchInChat || _searchFromPeer) { paintSearchInChat(p, { .st = &st::forumTopicRow, + .currentBg = currentBg(), .now = ms, .width = fullWidth, .paused = videoPaused, @@ -848,6 +850,7 @@ void InnerWidget::paintEvent(QPaintEvent *e) { .st = _st, .folder = _openedFolder, .forum = _openedForum, + .currentBg = currentBg(), .filter = _filterId, .now = ms, .width = fullWidth, diff --git a/Telegram/SourceFiles/dialogs/ui/dialogs_layout.cpp b/Telegram/SourceFiles/dialogs/ui/dialogs_layout.cpp index becfdd9d8..d318efb0b 100644 --- a/Telegram/SourceFiles/dialogs/ui/dialogs_layout.cpp +++ b/Telegram/SourceFiles/dialogs/ui/dialogs_layout.cpp @@ -799,6 +799,13 @@ void PaintUnreadBadge(QPainter &p, const QRect &rect, const UnreadBadgeStyle &st } // namespace +const style::icon *ChatTypeIcon(not_null peer) { + return ChatTypeIcon(peer, { + .st = &st::defaultDialogRow, + .currentBg = st::windowBg, + }); +} + const style::icon *ChatTypeIcon( not_null peer, const PaintContext &context) { diff --git a/Telegram/SourceFiles/dialogs/ui/dialogs_layout.h b/Telegram/SourceFiles/dialogs/ui/dialogs_layout.h index 7d31881e8..731174d07 100644 --- a/Telegram/SourceFiles/dialogs/ui/dialogs_layout.h +++ b/Telegram/SourceFiles/dialogs/ui/dialogs_layout.h @@ -57,7 +57,7 @@ struct PaintContext { TopicJumpCache *topicJumpCache = nullptr; Data::Folder *folder = nullptr; Data::Forum *forum = nullptr; - QBrush currentBg; + required currentBg; FilterId filter = 0; float64 topicsExpanded = 0.; crl::time now = 0; @@ -71,9 +71,10 @@ struct PaintContext { bool displayUnreadInfo = false; }; -const style::icon *ChatTypeIcon( +[[nodiscard]] const style::icon *ChatTypeIcon( not_null peer, - const PaintContext &context = { .st = &st::defaultDialogRow }); + const PaintContext &context); +[[nodiscard]] const style::icon *ChatTypeIcon(not_null peer); class RowPainter { public: