summary refs log tree commit diff
diff options
context:
space:
mode:
authorDeepBlueV7.X <nicolas.werner@hotmail.de>2024-02-17 11:53:22 +0100
committerGitHub <noreply@github.com>2024-02-17 11:53:22 +0100
commite7c6701c5ff82ce1c0386b1a952ee520cfdbeada (patch)
tree25a7c1434b64f7f38d3cd939df0361da577487d8
parentTry to fix the blurry encryption indicator on high dpi (diff)
parentHiDPI Fixes (diff)
downloadnheko-e7c6701c5ff82ce1c0386b1a952ee520cfdbeada.tar.xz
Merge pull request #1685 from q234rty/master
HiDPI Fixes
-rw-r--r--resources/qml/Avatar.qml12
-rw-r--r--resources/qml/TimelineMetadata.qml8
-rw-r--r--resources/qml/TimelineSectionHeader.qml4
-rw-r--r--resources/qml/delegates/ImageMessage.qml4
-rw-r--r--resources/qml/dialogs/RoomMembers.qml10
-rw-r--r--resources/qml/dialogs/UserProfile.qml8
-rw-r--r--resources/qml/pages/RegisterPage.qml4
7 files changed, 34 insertions, 16 deletions
diff --git a/resources/qml/Avatar.qml b/resources/qml/Avatar.qml
index a248114d..6217d70a 100644
--- a/resources/qml/Avatar.qml
+++ b/resources/qml/Avatar.qml
@@ -64,8 +64,16 @@ AbstractButton {
         } else {
             return "";
         }
-        sourceSize.height: avatar.height * Screen.devicePixelRatio
-        sourceSize.width: avatar.width * Screen.devicePixelRatio
+        sourceSize.height: if (!avatar.url.startsWith('image://MxcImage/') && avatar.url.endsWith('.svg')){
+            return avatar.height
+        } else {
+            return avatar.height * Screen.devicePixelRatio
+        }
+        sourceSize.width: if (!avatar.url.startsWith('image://MxcImage/') && avatar.url.endsWith('.svg')){
+            return avatar.width
+        } else {
+            return avatar.width * Screen.devicePixelRatio
+        }
     }
     Rectangle {
         id: onlineIndicator
diff --git a/resources/qml/TimelineMetadata.qml b/resources/qml/TimelineMetadata.qml
index 0085b950..5d2799c7 100644
--- a/resources/qml/TimelineMetadata.qml
+++ b/resources/qml/TimelineMetadata.qml
@@ -40,8 +40,8 @@ RowLayout {
         ToolTip.text: qsTr("Edited")
         ToolTip.visible: editHovered.hovered
         source: "image://colorimage/:/icons/icons/ui/edit.svg?" + ((metadata.eventId == metadata.room.edit) ? palette.highlight : palette.buttonText)
-        sourceSize.height: parent.iconSize * Screen.devicePixelRatio
-        sourceSize.width: parent.iconSize * Screen.devicePixelRatio
+        sourceSize.height: parent.iconSize
+        sourceSize.width: parent.iconSize
         visible: metadata.isEdited || metadata.eventId == metadata.room.edit
         HoverHandler {
             id: editHovered
@@ -66,8 +66,8 @@ RowLayout {
         Layout.preferredHeight: parent.iconSize
         Layout.preferredWidth: parent.iconSize
         encrypted: metadata.isEncrypted
-        sourceSize.height: parent.iconSize * Screen.devicePixelRatio
-        sourceSize.width: parent.iconSize * Screen.devicePixelRatio
+        sourceSize.height: parent.iconSize
+        sourceSize.width: parent.iconSize
         trust: metadata.trustlevel
         visible: metadata.room.isEncrypted
     }
diff --git a/resources/qml/TimelineSectionHeader.qml b/resources/qml/TimelineSectionHeader.qml
index 99fc1ad9..17971b75 100644
--- a/resources/qml/TimelineSectionHeader.qml
+++ b/resources/qml/TimelineSectionHeader.qml
@@ -92,8 +92,8 @@ Column {
                 height: fontMetrics.ascent
                 width: height
 
-                sourceSize.width: fontMetrics.lineSpacing
-                sourceSize.height: fontMetrics.lineSpacing
+                sourceSize.width: width
+                sourceSize.height: height
 
                 permissions: room ? room.permissions : null
                 visible: isAdmin || isModerator
diff --git a/resources/qml/delegates/ImageMessage.qml b/resources/qml/delegates/ImageMessage.qml
index 18ff11d2..f75ad7b7 100644
--- a/resources/qml/delegates/ImageMessage.qml
+++ b/resources/qml/delegates/ImageMessage.qml
@@ -141,8 +141,8 @@ AbstractButton {
         source: blurhash ? ("image://blurhash/" + blurhash) : ("image://colorimage/:/icons/icons/ui/image-failed.svg?" + palette.buttonText)
         asynchronous: true
         fillMode: Image.PreserveAspectFit
-        sourceSize.width: parent.width * Screen.devicePixelRatio
-        sourceSize.height: parent.height * Screen.devicePixelRatio
+        sourceSize.width: blurhash ? parent.width * Screen.devicePixelRatio : Math.min(parent.width, parent.height)
+        sourceSize.height: blurhash ? parent.height * Screen.devicePixelRatio : Math.min(parent.width, parent.height)
 
         anchors.fill: parent
     }
diff --git a/resources/qml/dialogs/RoomMembers.qml b/resources/qml/dialogs/RoomMembers.qml
index afb76398..95dc9fc3 100644
--- a/resources/qml/dialogs/RoomMembers.qml
+++ b/resources/qml/dialogs/RoomMembers.qml
@@ -162,6 +162,10 @@ ApplicationWindow {
                         }
 
                         PowerlevelIndicator {
+                            Layout.preferredWidth: fontMetrics.lineSpacing * 2
+                            Layout.preferredHeight: fontMetrics.lineSpacing * 2
+                            sourceSize.width: width
+                            sourceSize.height: height
                             powerlevel: model.powerlevel
                             permissions: room.permissions
                         }
@@ -169,8 +173,10 @@ ApplicationWindow {
                         EncryptionIndicator {
                             id: encryptInd
 
-                            Layout.preferredWidth: 16
-                            Layout.preferredHeight: 16
+                            Layout.preferredWidth: fontMetrics.lineSpacing * 2
+                            Layout.preferredHeight: fontMetrics.lineSpacing * 2
+                            sourceSize.width: width
+                            sourceSize.height: height
                             Layout.alignment: Qt.AlignRight
                             visible: room.isEncrypted
                             encrypted: room.isEncrypted
diff --git a/resources/qml/dialogs/UserProfile.qml b/resources/qml/dialogs/UserProfile.qml
index 614ecb56..6798bc79 100644
--- a/resources/qml/dialogs/UserProfile.qml
+++ b/resources/qml/dialogs/UserProfile.qml
@@ -232,6 +232,8 @@ ApplicationWindow {
             EncryptionIndicator {
                 Layout.preferredHeight: 32
                 Layout.preferredWidth: 32
+                sourceSize.width: width
+                sourceSize.height: height
                 encrypted: profile.userVerificationEnabled
                 trust: profile.userVerified
                 Layout.alignment: Qt.AlignHCenter
@@ -364,8 +366,8 @@ ApplicationWindow {
                             Layout.preferredHeight: 16
                             Layout.preferredWidth: 16
                             visible: profile.isSelf && verificationStatus != VerificationStatus.NOT_APPLICABLE
-                            sourceSize.height: 16 * Screen.devicePixelRatio
-                            sourceSize.width: 16 * Screen.devicePixelRatio
+                            sourceSize.height: height
+                            sourceSize.width: width
                             source: {
                                 switch (verificationStatus) {
                                     case VerificationStatus.VERIFIED:
@@ -446,6 +448,8 @@ ApplicationWindow {
                 Image {
                     Layout.preferredHeight: 16
                     Layout.preferredWidth: 16
+                    sourceSize.height: height
+                    sourceSize.width: width
                     visible: !profile.isSelf && verificationStatus != VerificationStatus.NOT_APPLICABLE
                     source: {
                         switch (verificationStatus) {
diff --git a/resources/qml/pages/RegisterPage.qml b/resources/qml/pages/RegisterPage.qml
index ad9143f7..b3860ccc 100644
--- a/resources/qml/pages/RegisterPage.qml
+++ b/resources/qml/pages/RegisterPage.qml
@@ -112,8 +112,8 @@ Item {
                     visible: regis.usernameAvailable || regis.usernameUnavailable
                     ToolTip.visible: ma.hovered
                     ToolTip.text: qsTr("Back")
-                    sourceSize.height: height * Screen.devicePixelRatio
-                    sourceSize.width: width * Screen.devicePixelRatio
+                    sourceSize.height: height
+                    sourceSize.width: width
                     HoverHandler {
                         id: ma
                     }