Don't load empty images from imageprovider

Previously, when there was no avatar set, the source property of Avatar was still set to 'image://mxc/',
which caused Avatar to load that from the imageprovider. The imageprovider can't provide an empty image and aborts with error


(cherry picked from commit 724f10a895)
This commit is contained in:
Tobias Fella
2020-12-28 00:25:38 +00:00
committed by Carl Schwan
parent e87ae48f17
commit 893bc79f1e
11 changed files with 13 additions and 13 deletions

View File

@@ -89,7 +89,7 @@ ToolBar {
Layout.preferredWidth: Kirigami.Units.gridUnit
Layout.preferredHeight: Kirigami.Units.gridUnit
source: replyUser ? "image://mxc/" + replyUser.avatarMediaId: ""
source: replyUser ? ("image://mxc/" + replyUser.avatarMediaId) : ""
name: replyUser ? replyUser.displayName : i18n("No name")
}
@@ -156,7 +156,7 @@ ToolBar {
Kirigami.Avatar {
Layout.preferredWidth: Kirigami.Units.gridUnit
Layout.preferredHeight: Kirigami.Units.gridUnit
source: modelData.avatarMediaId ? "image://mxc/" + modelData.avatarMediaId : ""
source: modelData.avatarMediaId ? ("image://mxc/" + modelData.avatarMediaId) : ""
color: modelData.color ? Qt.darker(modelData.color, 1.1) : null
visible: !isEmoji
}

View File

@@ -52,7 +52,7 @@ RowLayout {
visible: showAuthor && Config.showAvatarInTimeline
name: author.displayName
source: author.avatarMediaId ? "image://mxc/" + author.avatarMediaId : ""
source: author.avatarMediaId ? ("image://mxc/" + author.avatarMediaId) : ""
color: author.color
Component {

View File

@@ -30,7 +30,7 @@ QQC2.AbstractButton {
Layout.preferredHeight: Kirigami.Units.gridUnit
Layout.alignment: Qt.AlignTop
visible: Config.showAvatarInTimeline
source: replyVisible && reply.author.avatarMediaId ? "image://mxc/" + reply.author.avatarMediaId : ""
source: replyVisible && reply.author.avatarMediaId ? ("image://mxc/" + reply.author.avatarMediaId) : ""
name: replyVisible ? reply.author.displayName : "H"
color: replyVisible ? reply.author.color : Kirigami.Theme.highlightColor
}

View File

@@ -26,7 +26,7 @@ RowLayout {
Layout.preferredHeight: Kirigami.Units.iconSizes.small
name: author.displayName
source: author.avatarMediaId ? "image://mxc/" + author.avatarMediaId : ""
source: author.avatarMediaId ? ("image://mxc/" + author.avatarMediaId) : ""
color: author.color
Component {

View File

@@ -43,7 +43,7 @@ Kirigami.OverlaySheet {
Layout.alignment: Qt.AlignTop
name: room.displayName
source: room.avatarMediaId ? "image://mxc/" + room.avatarMediaId : ""
source: room.avatarMediaId ? ("image://mxc/" + room.avatarMediaId) : ""
MouseArea {
anchors.fill: parent

View File

@@ -51,7 +51,7 @@ Kirigami.OverlaySheet {
Layout.preferredHeight: Kirigami.Units.iconSizes.huge
name: displayName
source: avatarMediaId ? "image://mxc/" + avatarMediaId : ""
source: avatarMediaId ? ("image://mxc/" + avatarMediaId) : ""
MouseArea {
anchors.fill: parent

View File

@@ -38,7 +38,7 @@ Kirigami.OverlaySheet {
spacing: Kirigami.Units.largeSpacing
Kirigami.Avatar {
id: avatar
source: author.avatarMediaId ? "image://mxc/" + author.avatarMediaId : ""
source: author.avatarMediaId ? ("image://mxc/" + author.avatarMediaId) : ""
Layout.preferredWidth: Kirigami.Units.gridUnit * 3
Layout.preferredHeight: Kirigami.Units.gridUnit * 3
Layout.alignment: Qt.AlignTop

View File

@@ -86,7 +86,7 @@ Kirigami.ScrollablePage {
Layout.preferredWidth: height
Layout.fillHeight: true
source: avatar ? "image://mxc/" + avatar : ""
source: avatar ? ("image://mxc/" + avatar) : ""
name: name
}

View File

@@ -116,7 +116,7 @@ Kirigami.ScrollablePage {
Layout.preferredWidth: Kirigami.Units.iconSizes.huge
Layout.preferredHeight: Kirigami.Units.iconSizes.huge
source: model.avatar ? "image://mxc/" + model.avatar : ""
source: model.avatar ? ("image://mxc/" + model.avatar) : ""
name: name
}
ColumnLayout {

View File

@@ -134,7 +134,7 @@ Kirigami.ScrollablePage {
Layout.minimumWidth: size
Layout.maximumWidth: size
source: avatar ? "image://mxc/" + avatar : ""
source: avatar ? ("image://mxc/" + avatar) : ""
name: model.name || i18n("No Name")
}

View File

@@ -111,7 +111,7 @@ Kirigami.OverlayDrawer {
Layout.preferredHeight: Kirigami.Units.gridUnit * 3.5
name: room ? room.displayName : i18n("No name")
source: room ? "image://mxc/" + room.avatarMediaId : undefined
source: room ? ("image://mxc/" + room.avatarMediaId) : ""
}
ColumnLayout {
@@ -190,7 +190,7 @@ Kirigami.OverlayDrawer {
Layout.preferredWidth: height
Layout.fillHeight: true
source: "image://mxc/" + avatar
source: avatar ? ("image://mxc/" + avatar) : ""
name: name
}