From 3acd3ba66ad8407ce671f00b99233fc799d7baf1 Mon Sep 17 00:00:00 2001 From: miruka Date: Wed, 6 Nov 2019 16:09:07 -0400 Subject: [PATCH] Show broken image icon when image fails to load --- TODO.md | 11 +++-------- src/icons/thin/broken-image.svg | 4 ++++ src/qml/Base/HImage.qml | 8 ++++++++ 3 files changed, 15 insertions(+), 8 deletions(-) create mode 100644 src/icons/thin/broken-image.svg diff --git a/TODO.md b/TODO.md index d22636cb..bb391ead 100644 --- a/TODO.md +++ b/TODO.md @@ -3,7 +3,7 @@ - Downloading - Bottom/top bar - Verify things work with chat.privacytools.io (subdomain weirdness) - - Show real progression for thumbnail loadings, uploads and downloads + - Show real progression for mxc thumbnail loadings, uploads and downloads - Support m.file thumbnails - Generate video thumbnails @@ -32,7 +32,7 @@ - When qml syntax highlighting supports ES6 string interpolation, use that - Fixes - - Code not colored in room subtitle + - `code` not colored in room subtitle - In the "Leave me" room, "join > Hi > left" aren't combined - Event delegates changing height don't scroll the list - When selecting text and scrolling up, selection stops working after a while @@ -59,10 +59,6 @@ - Way to open context menus without a right mouse button - `smartVerticalFlick()` gradual acceleration - - Link previews - - Support showing images at the place they should be instead of always - at the end of the message - - Just use Shortcut onHeld instead of analyzing the current velocity in `smartVerticalFlick()` - Thinner expand arrow icon @@ -120,7 +116,7 @@ - Add room - Prevent using the composer if no permission (power levels) - Prevent using an alias if that user is not in the room or no permission - - Spinner when loading past room events or images + - Spinner when loading past room events - Theming - Bundle fonts @@ -170,7 +166,6 @@ - Check if username exists on login screen - `pyotherside.atexit()` - Logout previous session if adding an account that's already connected - - Image provider: on failed conversion, way to show a "broken image" thumb? - Config file format - Startup improvements diff --git a/src/icons/thin/broken-image.svg b/src/icons/thin/broken-image.svg new file mode 100644 index 00000000..7fff2097 --- /dev/null +++ b/src/icons/thin/broken-image.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/qml/Base/HImage.qml b/src/qml/Base/HImage.qml index 93b24f7c..6bf68473 100644 --- a/src/qml/Base/HImage.qml +++ b/src/qml/Base/HImage.qml @@ -75,4 +75,12 @@ Image { Behavior on value { HNumberAnimation { factor: 2 } } } + + HIcon { + anchors.centerIn: parent + visible: image.status === Image.Error + svgName: "broken-image" + dimension: Math.max(16, Math.min(parent.width, parent.height) * 0.2) + colorize: theme.colors.negativeBackground + } }