replaced account data singleton with a session model

This commit is contained in:
2026-09-27 14:49:38 +02:00
parent 79b33ab248
commit 5e65c4671a
60 changed files with 1019 additions and 679 deletions
+4 -3
View File
@@ -8,9 +8,9 @@ import 'package:flutter_svg/flutter_svg.dart';
import 'package:http/http.dart' as http;
import '../api/http_errors.dart';
import '../model/account_data.dart';
import '../model/endpoint_data.dart';
import '../push/push_avatar.dart';
import '../session/session_manager.dart';
import 'a11y/a11y_labels.dart';
import 'avatar_disk_cache.dart';
@@ -162,7 +162,9 @@ Future<AvatarPayload?> _fetchAvatarPayload(String url) async {
() => http.get(
Uri.parse(url),
headers: {
...AccountData().authHeaders(),
// User avatars are public in Nextcloud, so they also load while the
// active session has no Nextcloud identity.
...?SessionManager().current?.nextcloud?.authHeaders,
'Accept': 'image/png,image/jpeg,image/webp,image/svg+xml',
},
),
@@ -368,7 +370,6 @@ class _UserAvatarState extends State<UserAvatar> {
return listEquals(a.bytes, b.bytes);
}
@override
Widget build(BuildContext context) {
final radius = widget.size.toDouble();