diff --git a/ui/image/image_prepare.cpp b/ui/image/image_prepare.cpp index a729254..d5e9f16 100644 --- a/ui/image/image_prepare.cpp +++ b/ui/image/image_prepare.cpp @@ -50,7 +50,7 @@ const QImage &EllipseMaskCached(QSize size) { } lock.unlock(); - auto mask = EllipseMask(size); + auto mask = EllipseMask(size, 1.); lock.relock(); return Masks.emplace(key, std::move(mask)).first->second; @@ -321,9 +321,7 @@ std::array CornersMask(int radius) { return PrepareCornersMask(radius); } -QImage EllipseMask(QSize size) { - const auto ratio = style::DevicePixelRatio(); - +QImage EllipseMask(QSize size, double ratio) { size *= ratio; auto result = QImage(size, QImage::Format_ARGB32_Premultiplied); result.fill(Qt::transparent); diff --git a/ui/image/image_prepare.h b/ui/image/image_prepare.h index da0b7cb..c312a02 100644 --- a/ui/image/image_prepare.h +++ b/ui/image/image_prepare.h @@ -96,7 +96,7 @@ struct CornersMaskRef { const style::color &color); [[nodiscard]] std::array CornersMask(int radius); -[[nodiscard]] QImage EllipseMask(QSize size); +[[nodiscard]] QImage EllipseMask(QSize size, double ratio = style::DevicePixelRatio()); [[nodiscard]] std::array PrepareCorners( int radius,