fluffychat/lib/widgets/layouts/loading_view.dart

33 lines
931 B
Dart
Raw Normal View History

2021-10-26 16:50:34 +00:00
import 'package:flutter/material.dart';
import 'package:matrix/matrix.dart';
2021-05-23 11:11:55 +00:00
import 'package:vrouter/vrouter.dart';
2021-10-26 16:50:34 +00:00
2021-11-09 20:32:16 +00:00
import 'package:fluffychat/widgets/layouts/empty_page.dart';
2021-05-22 06:53:52 +00:00
import 'package:fluffychat/widgets/matrix.dart';
2021-01-16 11:46:38 +00:00
class LoadingView extends StatelessWidget {
2021-10-14 16:09:30 +00:00
const LoadingView({Key key}) : super(key: key);
2021-01-16 11:46:38 +00:00
@override
Widget build(BuildContext context) {
if (Matrix.of(context)
.widget
.clients
.every((client) => client.loginState != null)) {
2021-06-18 14:15:11 +00:00
WidgetsBinding.instance.addPostFrameCallback(
2021-07-08 15:10:20 +00:00
(_) => VRouter.of(context).to(
Matrix.of(context)
.widget
.clients
.any((client) => client.loginState == LoginState.loggedIn)
2021-05-23 11:11:55 +00:00
? '/rooms'
2021-06-18 14:15:11 +00:00
: '/home',
queryParameters: VRouter.of(context).queryParameters,
),
);
2021-01-17 07:05:34 +00:00
}
2021-10-14 16:09:30 +00:00
return const EmptyPage(loading: true);
2021-01-16 11:46:38 +00:00
}
}