summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorKonstantinos Sideris <sideris.konstantin@gmail.com>2017-05-27 01:29:45 +0300
committerKonstantinos Sideris <sideris.konstantin@gmail.com>2017-05-27 01:29:45 +0300
commitf490040811893523db446513b524457c70c0dffd (patch)
tree6ab9b5fbbac75fdd23cd30d6061c0626a489b36a /src
parentResolve name and avatar on 1-on-1 rooms (diff)
downloadnheko-f490040811893523db446513b524457c70c0dffd.tar.xz
Fetch avatar thumbnail instead of the original image
closes #31
Diffstat (limited to 'src')
-rw-r--r--src/MatrixClient.cc26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/MatrixClient.cc b/src/MatrixClient.cc

index 015e9809..23cbbb5e 100644 --- a/src/MatrixClient.cc +++ b/src/MatrixClient.cc
@@ -574,10 +574,17 @@ void MatrixClient::fetchRoomAvatar(const QString &roomid, const QUrl &avatar_url return; } - QString media_params = url_parts[1]; - QString media_url = QString("%1/_matrix/media/r0/download/%2").arg(getHomeServer().toString(), media_params); + QUrlQuery query; + query.addQueryItem("width", "512"); + query.addQueryItem("height", "512"); + query.addQueryItem("method", "crop"); + + QString media_url = QString("%1/_matrix/media/r0/thumbnail/%2").arg(getHomeServer().toString(), url_parts[1]); + + QUrl endpoint(media_url); + endpoint.setQuery(query); - QNetworkRequest avatar_request(media_url); + QNetworkRequest avatar_request(endpoint); QNetworkReply *reply = get(avatar_request); reply->setProperty("roomid", roomid); @@ -602,10 +609,17 @@ void MatrixClient::fetchOwnAvatar(const QUrl &avatar_url) return; } - QString media_params = url_parts[1]; - QString media_url = QString("%1/_matrix/media/r0/download/%2").arg(getHomeServer().toString(), media_params); + QUrlQuery query; + query.addQueryItem("width", "512"); + query.addQueryItem("height", "512"); + query.addQueryItem("method", "crop"); + + QString media_url = QString("%1/_matrix/media/r0/thumbnail/%2").arg(getHomeServer().toString(), url_parts[1]); + + QUrl endpoint(media_url); + endpoint.setQuery(query); - QNetworkRequest avatar_request(media_url); + QNetworkRequest avatar_request(endpoint); QNetworkReply *reply = get(avatar_request); reply->setProperty("endpoint", static_cast<int>(Endpoint::GetOwnAvatar));