From 740ab2fb9f76c84d50f2180d6481fe094707fbd1 Mon Sep 17 00:00:00 2001 From: Henry-Hiles Date: Wed, 20 May 2026 10:26:33 -0400 Subject: [PATCH] fix passing an mxc to expandableimage --- lib/widgets/room_appbar.dart | 12 +++++++++++- lib/widgets/user_popover.dart | 11 ++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/lib/widgets/room_appbar.dart b/lib/widgets/room_appbar.dart index 52cf0ec..3930686 100644 --- a/lib/widgets/room_appbar.dart +++ b/lib/widgets/room_appbar.dart @@ -1,7 +1,9 @@ import "package:fast_immutable_collections/fast_immutable_collections.dart"; import "package:flutter/material.dart"; import "package:hooks_riverpod/hooks_riverpod.dart"; +import "package:nexus/controllers/client_state_controller.dart"; import "package:nexus/controllers/selected_room_controller.dart"; +import "package:nexus/helpers/extensions/mxc_to_https.dart"; import "package:nexus/widgets/appbar.dart"; import "package:nexus/widgets/avatar_or_hash.dart"; import "package:nexus/widgets/expandable_image.dart"; @@ -29,7 +31,15 @@ class RoomAppbar extends ConsumerWidget implements PreferredSizeWidget { ? room == null ? null : ExpandableImage( - room.metadata?.avatar?.toString(), + room.metadata?.avatar + ?.mxcToHttps( + ref.watch( + ClientStateController.provider.select( + (value) => value!.homeserverUrl!, + ), + ), + ) + .toString(), child: AvatarOrHash( room.metadata?.avatar, room.metadata?.name ?? "Unnamed Rooms", diff --git a/lib/widgets/user_popover.dart b/lib/widgets/user_popover.dart index 508a038..31bd814 100644 --- a/lib/widgets/user_popover.dart +++ b/lib/widgets/user_popover.dart @@ -9,6 +9,7 @@ import "package:nexus/controllers/profile_controller.dart"; import "package:nexus/controllers/selected_room_controller.dart"; import "package:nexus/helpers/extensions/better_when.dart"; import "package:nexus/helpers/extensions/get_localpart.dart"; +import "package:nexus/helpers/extensions/mxc_to_https.dart"; import "package:nexus/models/configs/power_level_config.dart"; import "package:nexus/models/content/membership.dart"; import "package:nexus/models/membership_status.dart"; @@ -91,7 +92,15 @@ class UserPopover extends ConsumerWidget { runSpacing: 8, children: [ ExpandableImage( - member.avatarUrl?.toString(), + member.avatarUrl + ?.mxcToHttps( + ref.watch( + ClientStateController.provider.select( + (value) => value!.homeserverUrl!, + ), + ), + ) + .toString(), child: AvatarOrHash( member.avatarUrl, member.displayName ?? userId.localpart,