diff --git a/Telegram/SourceFiles/ui/emoji_config.cpp b/Telegram/SourceFiles/ui/emoji_config.cpp index 04d1897b7..9791fcb3a 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 = 2; +constexpr auto kVersion = 3; class UniversalImages { public: @@ -216,6 +216,9 @@ QImage UniversalImages::generate(int size, int index) const { const auto rows = RowsCount(index); const auto large = kUniversalSize; const auto &original = _sprites[index]; + const auto data = original.bits(); + const auto stride = original.bytesPerLine(); + const auto format = original.format(); auto result = QImage( size * kImagesPerRow, size * rows, @@ -227,11 +230,11 @@ QImage UniversalImages::generate(int size, int index) const { for (auto y = 0; y != rows; ++y) { for (auto x = 0; x != kImagesPerRow; ++x) { const auto single = QImage( - original.bits() + x * large * 4, + data + (y * kImagesPerRow * large + x) * large * 4, large, large, - original.bytesPerLine(), - original.format() + stride, + format ).scaled( size, size,