Split up connection refresh with Future.delays to reduce jank

codemagic-setup
Hank Grabowski 2023-04-28 08:41:51 -04:00
rodzic 6aecb654a2
commit b91c114518
2 zmienionych plików z 10 dodań i 4 usunięć

Wyświetl plik

@ -129,7 +129,7 @@ Future<void> dependencyInjectionInitialization() async {
Future<void> updateProfileDependencyInjectors(Profile profile) async { Future<void> updateProfileDependencyInjectors(Profile profile) async {
final objectBox = await ObjectBoxCache.create( final objectBox = await ObjectBoxCache.create(
baseDir: 'profileboxcaches', baseDir: 'profileboxcaches',
subDir: '${profile.id}_${profile.serverName}', subDir: profile.id,
); );
final connectionReposSelector = final connectionReposSelector =
getIt<ActiveProfileSelector<IConnectionsRepo>>(); getIt<ActiveProfileSelector<IConnectionsRepo>>();

Wyświetl plik

@ -53,9 +53,13 @@ class ConnectionsManager extends ChangeNotifier {
); );
} }
bool upsertAllConnections(Iterable<Connection> newConnections) { Future<bool> upsertAllConnections(Iterable<Connection> newConnections) async {
newConnections.forEach(upsertConnection); var result = true;
return true; for (var c in newConnections) {
result &= await Future.delayed(Duration.zero, () => upsertConnection(c));
}
return result;
} }
Future<void> acceptFollowRequest(Connection connection) async { Future<void> acceptFollowRequest(Connection connection) async {
@ -178,6 +182,7 @@ class ConnectionsManager extends ChangeNotifier {
}, onError: (error) { }, onError: (error) {
_logger.severe('Error getting followers data: $error'); _logger.severe('Error getting followers data: $error');
}); });
await Future.delayed(Duration.zero);
} }
moreResults = true; moreResults = true;
@ -201,6 +206,7 @@ class ConnectionsManager extends ChangeNotifier {
}, onError: (error) { }, onError: (error) {
_logger.severe('Error getting followers data: $error'); _logger.severe('Error getting followers data: $error');
}); });
await Future.delayed(Duration.zero);
} }
for (final noLongerFollowed in originalContacts) { for (final noLongerFollowed in originalContacts) {