[mob] Fix person cover refresh issue (#4216)

## Description

## Tests
This commit is contained in:
Neeraj Gupta
2024-11-28 00:53:56 +05:30
committed by GitHub
6 changed files with 27 additions and 5 deletions

View File

@@ -1,3 +1,4 @@
const kPersonParamID = 'person_id';
const kPersonWidgetKey = 'person_widget_key';
const kClusterParamId = 'cluster_id';
const kFileID = 'file_id';

View File

@@ -1004,6 +1004,7 @@ class SearchService {
p.data.name,
files,
params: {
kPersonWidgetKey: p.data.avatarFaceID ?? p.hashCode.toString(),
kPersonParamID: personID,
kFileID: files.first.uploadedFileID,
},
@@ -1018,6 +1019,8 @@ class SearchService {
p.data.name,
files,
params: {
kPersonWidgetKey:
p.data.avatarFaceID ?? p.hashCode.toString(),
kPersonParamID: personID,
kFileID: files.first.uploadedFileID,
},

View File

@@ -400,7 +400,8 @@ class UserService {
Widget page;
final String passkeySessionID = response.data["passkeySessionID"];
String twoFASessionID = response.data["twoFactorSessionID"];
if (twoFASessionID.isEmpty) {
if (twoFASessionID.isEmpty &&
response.data["twoFactorSessionIDV2"] != null) {
twoFASessionID = response.data["twoFactorSessionIDV2"];
}
if (passkeySessionID.isNotEmpty) {
@@ -719,7 +720,8 @@ class UserService {
if (response.statusCode == 200) {
Widget page;
String twoFASessionID = response.data["twoFactorSessionID"];
if (twoFASessionID.isEmpty) {
if (twoFASessionID.isEmpty &&
response.data["twoFactorSessionIDV2"] != null) {
twoFASessionID = response.data["twoFactorSessionIDV2"];
}
final String passkeySessionID = response.data["passkeySessionID"];

View File

@@ -121,6 +121,9 @@ class _SaveOrEditPersonState extends State<SaveOrEditPerson> {
),
child: snapshot.hasData
? PersonFaceWidget(
key: ValueKey(
person?.data.avatarFaceID ??
"",),
personFile,
clusterID: personClusterID,
personId: person!.remoteID,
@@ -158,9 +161,18 @@ class _SaveOrEditPersonState extends State<SaveOrEditPerson> {
person!,
);
if (result != null) {
_logger
.info('Person avatar updated');
setState(() {
person = result;
});
showToast(
context,
"Person avatar updated ${person!.data.avatarFaceID ?? 'empty'}",
);
Bus.instance.fire(
PeopleChangedEvent(),
);
}
},
),

View File

@@ -334,10 +334,14 @@ class FaceSearchResult extends StatelessWidget {
@override
Widget build(BuildContext context) {
final params = (searchResult as GenericSearchResult).params;
return PersonFaceWidget(
searchResult.previewThumbnail()!,
personId: (searchResult as GenericSearchResult).params[kPersonParamID],
clusterID: (searchResult as GenericSearchResult).params[kClusterParamId],
personId: params[kPersonParamID],
clusterID: params[kClusterParamId],
key: params.containsKey(kPersonWidgetKey)
? ValueKey(params[kPersonWidgetKey])
: null,
);
}
}

View File

@@ -12,7 +12,7 @@ description: ente photos application
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 0.9.63+963
version: 0.9.64+964
publish_to: none
environment: