From a80ccb0a9f5c7e143b9a78fdf959ee29a0e4d95c Mon Sep 17 00:00:00 2001 From: Pierre HUBERT Date: Thu, 2 May 2019 08:14:54 +0200 Subject: [PATCH] Improved loading bar --- lib/ui/screens/friends_list_screen.dart | 56 +++++++++++++++---------- 1 file changed, 34 insertions(+), 22 deletions(-) diff --git a/lib/ui/screens/friends_list_screen.dart b/lib/ui/screens/friends_list_screen.dart index 239e927..6c1fff1 100644 --- a/lib/ui/screens/friends_list_screen.dart +++ b/lib/ui/screens/friends_list_screen.dart @@ -96,31 +96,43 @@ class _FriendsListScreenState extends SafeState { if (_error == _ErrorsLevel.MAJOR) return _buildError(); if (_friendsList == null) return buildCenteredProgressBar(); - return Column( + return Stack( children: [ - // Check for errors - Container(child: _error != _ErrorsLevel.NONE ? _buildError() : null), + Column( + children: [ + // Check for errors + Container( + child: _error != _ErrorsLevel.NONE ? _buildError() : null), + + // List of friends + Expanded( + child: ListView.builder( + itemCount: _friendsList.length, + itemBuilder: (c, i) => _friendsList[i].accepted + ? AcceptedFriendTile( + friend: _friendsList[i], + user: _usersInfo.getUser(_friendsList[i].id), + onOpenPrivateConversation: _openPrivateConversation, + onSetFollowing: _setFollowingFriend, + onRequestDelete: _deleteFriend, + ) + : PendingFriendTile( + friend: _friendsList[i], + user: _usersInfo.getUser(_friendsList[i].id), + onRespond: _respondRequest, + )), + ), + ], + ), // Check if loading - Container(child: _loading ? CircularProgressIndicator() : null), - - // List of friends - Expanded( - child: ListView.builder( - itemCount: _friendsList.length, - itemBuilder: (c, i) => _friendsList[i].accepted - ? AcceptedFriendTile( - friend: _friendsList[i], - user: _usersInfo.getUser(_friendsList[i].id), - onOpenPrivateConversation: _openPrivateConversation, - onSetFollowing: _setFollowingFriend, - onRequestDelete: _deleteFriend, - ) - : PendingFriendTile( - friend: _friendsList[i], - user: _usersInfo.getUser(_friendsList[i].id), - onRespond: _respondRequest, - )), + Positioned( + child: Container( + child: + _loading ? Center(child: CircularProgressIndicator()) : null), + top: 16.0, + left: 0.0, + right: 0.0, ), ], );