From 54f2b1b2d8185fde0a85ac48b0abc09ae1452e49 Mon Sep 17 00:00:00 2001 From: John Preston Date: Wed, 17 Oct 2018 14:33:25 +0300 Subject: [PATCH] Beta version 1.4.4: Fix emoji quality. --- Telegram/SourceFiles/codegen/emoji/data.cpp | 2 +- Telegram/SourceFiles/ui/emoji_config.cpp | 19 +++++++++++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/Telegram/SourceFiles/codegen/emoji/data.cpp b/Telegram/SourceFiles/codegen/emoji/data.cpp index c9f5f87154dc0..926d919965a29 100644 --- a/Telegram/SourceFiles/codegen/emoji/data.cpp +++ b/Telegram/SourceFiles/codegen/emoji/data.cpp @@ -2094,7 +2094,7 @@ bool CheckOldInCurrent() { const auto category = *c; for (auto i = begin(*category); i != end(*category); ++i) { const auto find = []( - std::initializer_list list, + auto &&list, const InputId &id) { for (const auto current : list) { if (std::find(begin(*current), end(*current), id) != end(*current)) { diff --git a/Telegram/SourceFiles/ui/emoji_config.cpp b/Telegram/SourceFiles/ui/emoji_config.cpp index 45da3914c6520..04d1897b7846b 100644 --- a/Telegram/SourceFiles/ui/emoji_config.cpp +++ b/Telegram/SourceFiles/ui/emoji_config.cpp @@ -24,7 +24,7 @@ constexpr auto kUniversalSize = 72; constexpr auto kImagesPerRow = 32; constexpr auto kImageRowsPerSprite = 16; -constexpr auto kVersion = 1; +constexpr auto kVersion = 2; class UniversalImages { public: @@ -226,10 +226,21 @@ QImage UniversalImages::generate(int size, int index) const { PainterHighQualityEnabler hq(p); for (auto y = 0; y != rows; ++y) { for (auto x = 0; x != kImagesPerRow; ++x) { + const auto single = QImage( + original.bits() + x * large * 4, + large, + large, + original.bytesPerLine(), + original.format() + ).scaled( + size, + size, + Qt::IgnoreAspectRatio, + Qt::SmoothTransformation); p.drawImage( - QRect(x * size, y * size, size, size), - original, - QRect(x * large, y * large, large, large)); + x * size, + y * size, + single); } } }