Browse Source

neon: refactor page loading

pull/390/head
Nikolas Rimikis 2 years ago
parent
commit
5779b2e079
No known key found for this signature in database
GPG Key ID: 85ED1DE9786A4FF2
  1. 1
      packages/neon/neon/lib/neon.dart
  2. 33
      packages/neon/neon/lib/src/pages/home.dart
  3. 16
      packages/neon/neon/lib/src/pages/no_apps.dart

1
packages/neon/neon/lib/neon.dart

@ -24,6 +24,7 @@ import 'package:neon/l10n/localizations.dart';
import 'package:neon/src/blocs/blocs.dart';
import 'package:neon/src/models/account.dart';
import 'package:neon/src/models/push_notification.dart';
import 'package:neon/src/pages/no_apps.dart';
import 'package:neon/src/router.dart';
import 'package:neon/src/widgets/drawer.dart';
import 'package:neon/src/widgets/drawer_destination.dart';

33
packages/neon/neon/lib/src/pages/home.dart

@ -277,28 +277,17 @@ class _HomePageState extends State<HomePage> {
);
Widget body = Builder(
builder: (final context) => Column(
children: [
if (appImplementations.data != null) ...[
if (appImplementations.data!.isEmpty) ...[
Expanded(
child: Center(
child: Text(
AppLocalizations.of(context).errorNoCompatibleNextcloudAppsFound,
textAlign: TextAlign.center,
),
),
),
] else ...[
if (activeAppIDSnapshot.hasData) ...[
Expanded(
child: appImplementations.data!.find(activeAppIDSnapshot.data!)!.page,
),
],
],
],
],
),
builder: (final context) {
if (appImplementations.data == null) {
return const SizedBox.shrink();
}
if (appImplementations.data!.isEmpty) {
return const NoAppsPage();
}
return appImplementations.data!.find(activeAppIDSnapshot.data!)!.page;
},
);
body = MultiProvider(

16
packages/neon/neon/lib/src/pages/no_apps.dart

@ -0,0 +1,16 @@
import 'package:flutter/material.dart';
import 'package:meta/meta.dart';
import 'package:neon/l10n/localizations.dart';
@internal
class NoAppsPage extends StatelessWidget {
const NoAppsPage({super.key});
@override
Widget build(final BuildContext context) => Center(
child: Text(
AppLocalizations.of(context).errorNoCompatibleNextcloudAppsFound,
textAlign: TextAlign.center,
),
);
}
Loading…
Cancel
Save