mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
feat: round stickers in list
This commit is contained in:
parent
c185f40acd
commit
dbb234097c
2 changed files with 15 additions and 0 deletions
|
@ -27,6 +27,8 @@ recentStickersLimitPadding: margins(22px, 4px, 22px, 8px);
|
||||||
imageViewPadding: margins(22px, 10px, 22px, 10px);
|
imageViewPadding: margins(22px, 10px, 22px, 10px);
|
||||||
imageViewInnerPadding: margins(16px, 16px, 16px, 16px);
|
imageViewInnerPadding: margins(16px, 16px, 16px, 16px);
|
||||||
|
|
||||||
|
stickerRoundingSize: 5px;
|
||||||
|
|
||||||
messageShotPadding: 4px;
|
messageShotPadding: 4px;
|
||||||
|
|
||||||
topBarAdmins: IconButton {
|
topBarAdmins: IconButton {
|
||||||
|
|
|
@ -57,6 +57,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||||
|
|
||||||
// AyuGram includes
|
// AyuGram includes
|
||||||
#include "ayu/ayu_settings.h"
|
#include "ayu/ayu_settings.h"
|
||||||
|
#include "styles/style_ayu_styles.h"
|
||||||
#include "boxes/abstract_box.h"
|
#include "boxes/abstract_box.h"
|
||||||
#include "base/unixtime.h"
|
#include "base/unixtime.h"
|
||||||
|
|
||||||
|
@ -1434,6 +1435,16 @@ void StickersListWidget::paintSticker(
|
||||||
(_singleSize.height() - size.height()) / 2);
|
(_singleSize.height() - size.height()) / 2);
|
||||||
|
|
||||||
auto lottieFrame = QImage();
|
auto lottieFrame = QImage();
|
||||||
|
|
||||||
|
QPainterPath path;
|
||||||
|
path.addRoundedRect(QRectF(ppos, size), st::stickerRoundingSize, st::stickerRoundingSize);
|
||||||
|
|
||||||
|
p.save();
|
||||||
|
|
||||||
|
p.setRenderHint(QPainter::Antialiasing, true);
|
||||||
|
p.setClipPath(path);
|
||||||
|
p.setRenderHint(QPainter::Antialiasing, false);
|
||||||
|
|
||||||
if (sticker.lottie && sticker.lottie->ready()) {
|
if (sticker.lottie && sticker.lottie->ready()) {
|
||||||
auto request = Lottie::FrameRequest();
|
auto request = Lottie::FrameRequest();
|
||||||
request.box = boundingBoxSize() * style::DevicePixelRatio();
|
request.box = boundingBoxSize() * style::DevicePixelRatio();
|
||||||
|
@ -1488,6 +1499,8 @@ void StickersListWidget::paintSticker(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
p.restore();
|
||||||
|
|
||||||
if (selected && stickerHasDeleteButton(set, index)) {
|
if (selected && stickerHasDeleteButton(set, index)) {
|
||||||
auto xPos = pos + QPoint(_singleSize.width() - st::stickerPanDeleteIconBg.width(), 0);
|
auto xPos = pos + QPoint(_singleSize.width() - st::stickerPanDeleteIconBg.width(), 0);
|
||||||
p.setOpacity(deleteSelected ? st::stickerPanDeleteOpacityBgOver : st::stickerPanDeleteOpacityBg);
|
p.setOpacity(deleteSelected ? st::stickerPanDeleteOpacityBgOver : st::stickerPanDeleteOpacityBg);
|
||||||
|
|
Loading…
Add table
Reference in a new issue