1 files changed, 8 insertions, 2 deletions
diff --git a/src/MxcImageProvider.cpp b/src/MxcImageProvider.cpp
index 97cbfff3..74b4bedc 100644
--- a/src/MxcImageProvider.cpp
+++ b/src/MxcImageProvider.cpp
@@ -124,8 +124,11 @@ MxcImageProvider::download(const QString &id,
if (fileInfo.exists()) {
QImage image = utils::readImageFromFile(fileInfo.absoluteFilePath());
if (!image.isNull()) {
- if (requestedSize != image.size()) {
+ if (requestedSize.width() <= 0) {
image = image.scaledToHeight(requestedSize.height(), Qt::SmoothTransformation);
+ } else {
+ image =
+ image.scaled(requestedSize, Qt::KeepAspectRatio, Qt::SmoothTransformation);
}
if (radius != 0) {
@@ -157,9 +160,12 @@ MxcImageProvider::download(const QString &id,
auto data = QByteArray(res.data(), (int)res.size());
QImage image = utils::readImage(data);
if (!image.isNull()) {
- if (requestedSize != image.size()) {
+ if (requestedSize.width() <= 0) {
image =
image.scaledToHeight(requestedSize.height(), Qt::SmoothTransformation);
+ } else {
+ image =
+ image.scaled(requestedSize, Qt::KeepAspectRatio, Qt::SmoothTransformation);
}
if (radius != 0) {
|