From f187f49e60145893f3cea11bc21b2cc786c98386 Mon Sep 17 00:00:00 2001 From: Evangelos Paterakis Date: Mon, 5 Dec 2022 04:00:43 +0200 Subject: [PATCH] feat(profile): use avatar as cover if missing --- src/Views/Profile.vala | 6 +++++- src/Widgets/Avatar.vala | 3 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/Views/Profile.vala b/src/Views/Profile.vala index 5db0f05..ee93cbf 100644 --- a/src/Views/Profile.vala +++ b/src/Views/Profile.vala @@ -54,7 +54,11 @@ public class Tooth.Views.Profile : Views.Timeline { avatar.account = account; note.content = account.note; - image_cache.request_paintable (account.header, on_cache_response); + if (account.header.contains("/headers/original/missing.png")) { + avatar.bind_property("custom_image", background, "paintable", GLib.BindingFlags.SYNC_CREATE); + } else { + image_cache.request_paintable (account.header, on_cache_response); + } if (account.fields != null) { foreach (API.AccountField f in account.fields) { diff --git a/src/Widgets/Avatar.vala b/src/Widgets/Avatar.vala index a940851..11830f3 100644 --- a/src/Widgets/Avatar.vala +++ b/src/Widgets/Avatar.vala @@ -8,6 +8,9 @@ public class Tooth.Widgets.Avatar : Button { get { return avatar.size; } set { avatar.size = value; } } + public Paintable? custom_image { + get { return avatar.custom_image; } + } protected Adw.Avatar? avatar { get { return child as Adw.Avatar; }