forked from jsnbuchanan/crowd-funder-for-time-pwa
feat: pause auto-refresh when SetVisibilityDialog is open
- Pause auto-refresh when SetVisibilityDialog becomes visible - Resume auto-refresh when dialog is closed - Prevents background refresh interference during visibility settings - Fix type compatibility for visibilityDialogMembers data structure This ensures users can interact with the visibility dialog without the members list refreshing in the background, providing a better user experience for setting member visibility preferences.
This commit is contained in:
@@ -447,9 +447,12 @@ export default class MembersList extends Vue {
|
||||
return !contact || !contact.seesMe;
|
||||
})
|
||||
.map((member) => ({
|
||||
...member,
|
||||
did: member.did,
|
||||
name: member.name,
|
||||
isContact: !!this.getContactFor(member.did),
|
||||
contact: this.getContactFor(member.did),
|
||||
member: {
|
||||
memberId: member.member.memberId.toString(),
|
||||
},
|
||||
}));
|
||||
}
|
||||
|
||||
@@ -595,6 +598,9 @@ export default class MembersList extends Vue {
|
||||
// Filter members to show only those who need visibility set
|
||||
const membersForVisibility = this.getMembersForVisibility();
|
||||
|
||||
// Pause auto-refresh when dialog opens
|
||||
this.stopAutoRefresh();
|
||||
|
||||
// Open the dialog directly
|
||||
this.visibilityDialogMembers = membersForVisibility;
|
||||
this.showSetVisibilityDialog = true;
|
||||
@@ -648,6 +654,8 @@ export default class MembersList extends Vue {
|
||||
this.visibilityDialogMembers = [];
|
||||
// Refresh data when dialog is closed
|
||||
this.refreshData();
|
||||
// Resume auto-refresh when dialog is closed
|
||||
this.startAutoRefresh();
|
||||
}
|
||||
|
||||
beforeDestroy() {
|
||||
|
||||
Reference in New Issue
Block a user