Fixes cropped thumbnails #6154
authorraldone01 <raldone01@gmail.com>
Fri, 28 Jun 2024 16:06:30 +0000 (18:06 +0200)
committerMatthieu Gallien <matthieu_gallien@yahoo.fr>
Tue, 20 Aug 2024 13:15:41 +0000 (15:15 +0200)
Signed-off-by: raldone01 <raldone01@gmail.com>
src/gui/shellextensionsserver.cpp

index 1150a3107b7a0e260dfaa6a2c2631a95bf7d467b..5f5da92fb16df0588c234588478ad1c6db98bfe8 100644 (file)
@@ -155,7 +155,7 @@ void ShellExtensionsServer::processCustomStateRequest(QLocalSocket *socket, cons
             }
             _customStateSocketConnections.remove(socket->socketDescriptor());
         }
-        
+
         const auto folder = FolderMan::instance()->folder(folderAlias);
         SyncJournalFileRecord record;
         if (!folder || !folder->journalDb()->getFileRecord(filePathRelative, &record) || !record.isValid()) {
@@ -219,7 +219,7 @@ void ShellExtensionsServer::processCustomStateRequest(QLocalSocket *socket, cons
         _runningLsColJobsForPaths.removeOne(lsColJobPath);
         emit directoryListingIterationFinished(folderAlias);
     });
-    
+
     _runningLsColJobsForPaths.push_back(lsColJobPath);
     lsColJob->start();
 }
@@ -251,6 +251,7 @@ void ShellExtensionsServer::processThumbnailRequest(QLocalSocket *socket, const
     queryItems.addQueryItem(QStringLiteral("fileId"), record._fileId);
     queryItems.addQueryItem(QStringLiteral("x"), QString::number(thumbnailRequestInfo.size.width()));
     queryItems.addQueryItem(QStringLiteral("y"), QString::number(thumbnailRequestInfo.size.height()));
+    queryItems.addQueryItem(QStringLiteral("a"), QStringLiteral("true")); // Keep aspect ratio
     const QUrl jobUrl = Utility::concatUrlPath(folder->accountState()->account()->url(), getFetchThumbnailPath(), queryItems);
     const auto job = new SimpleNetworkJob(folder->accountState()->account());
     job->startRequest(QByteArrayLiteral("GET"), jobUrl);
@@ -260,7 +261,7 @@ void ShellExtensionsServer::processThumbnailRequest(QLocalSocket *socket, const
             sendEmptyDataAndCloseSession(socket);
             return;
         }
-        
+
         auto messageReplyWithThumbnail = QVariantMap {
             {VfsShellExtensions::Protocol::ThumnailProviderDataKey, reply->readAll().toBase64()}
         };
@@ -319,7 +320,7 @@ void ShellExtensionsServer::parseCustomStateRequest(QLocalSocket *socket, const
         sendEmptyDataAndCloseSession(socket);
         return;
     }
-    
+
     const auto customStateRequestInfo = CustomStateRequestInfo {
         itemFilePath,
         foundFolderAlias