mirror of
https://gitlab.com/comunic/comunicmobile
synced 2025-06-19 16:25:17 +00:00
Fix refresh issue
This commit is contained in:
@ -20,8 +20,7 @@ enum _PageStatus { LOADING, ERROR, READY }
|
||||
class UserPageScreen extends StatefulWidget {
|
||||
final int userID;
|
||||
|
||||
const UserPageScreen({Key? key, required this.userID})
|
||||
: super(key: key);
|
||||
const UserPageScreen({Key? key, required this.userID}) : super(key: key);
|
||||
|
||||
@override
|
||||
_UserPageScreenState createState() => _UserPageScreenState();
|
||||
@ -33,18 +32,23 @@ class _UserPageScreenState extends SafeState<UserPageScreen> {
|
||||
|
||||
// Objects members
|
||||
_PageStatus _status = _PageStatus.LOADING;
|
||||
late AdvancedUserInfo _userInfo;
|
||||
AdvancedUserInfo? _userInfo;
|
||||
FriendStatus? _frienshipStatus;
|
||||
final _refreshIndicatorKey = GlobalKey<RefreshIndicatorState>();
|
||||
|
||||
final _pageKey = GlobalKey();
|
||||
|
||||
_setStatus(_PageStatus s) => setState(() => _status = s);
|
||||
|
||||
@override
|
||||
void didChangeDependencies() {
|
||||
super.didChangeDependencies();
|
||||
_getUserInfo();
|
||||
if(_userInfo?.id != widget.userID)
|
||||
_getUserInfo();
|
||||
}
|
||||
|
||||
|
||||
|
||||
Future<void> _getUserInfo() async {
|
||||
_setStatus(_PageStatus.LOADING);
|
||||
|
||||
@ -112,12 +116,14 @@ class _UserPageScreenState extends SafeState<UserPageScreen> {
|
||||
Widget _buildBody() {
|
||||
return isTablet(context)
|
||||
? UserPageTablet(
|
||||
userInfo: _userInfo,
|
||||
key: _pageKey,
|
||||
userInfo: _userInfo!,
|
||||
onNeedRefresh: () => _refreshIndicatorKey.currentState!.show(),
|
||||
friendshipStatus: _frienshipStatus,
|
||||
)
|
||||
: UserMobilePage(
|
||||
userInfo: _userInfo,
|
||||
key: _pageKey,
|
||||
userInfo: _userInfo!,
|
||||
onNeedRefresh: () => _refreshIndicatorKey.currentState!.show(),
|
||||
);
|
||||
}
|
||||
|
Reference in New Issue
Block a user