diff --git a/lib/screens/home/appbar.dart b/lib/screens/home/appbar.dart index 0554cb6..dda28dc 100644 --- a/lib/screens/home/appbar.dart +++ b/lib/screens/home/appbar.dart @@ -15,7 +15,7 @@ class HomeAppBar extends StatelessWidget with PreferredSizeWidget { PreferredSizeWidget build(BuildContext context) { final serversProvider = Provider.of(context); - final Server server = serversProvider.selectedServer!; + final Server? server = serversProvider.selectedServer; void navigateServers() { Future.delayed(const Duration(milliseconds: 0), (() { @@ -27,7 +27,7 @@ class HomeAppBar extends StatelessWidget with PreferredSizeWidget { void openWebAdminPanel() { FlutterWebBrowser.openWebPage( - url: "${server.connectionMethod}://${server.domain}${server.path ?? ""}${server.port != null ? ':${server.port}' : ""}", + url: "${server!.connectionMethod}://${server.domain}${server.path ?? ""}${server.port != null ? ':${server.port}' : ""}", customTabsOptions: const CustomTabsOptions( instantAppsEnabled: true, showTitle: true, @@ -52,13 +52,13 @@ class HomeAppBar extends StatelessWidget with PreferredSizeWidget { Row( children: [ Icon( - serversProvider.serverStatus.data != null + serversProvider.selectedServer != null && serversProvider.serverStatus.data != null ? serversProvider.serverStatus.data!.generalEnabled == true ? Icons.gpp_good_rounded : Icons.gpp_bad_rounded : Icons.shield, size: 30, - color: serversProvider.serverStatus.data != null + color: serversProvider.selectedServer != null && serversProvider.serverStatus.data != null ? serversProvider.serverStatus.data!.generalEnabled == true ? Colors.green : Colors.red @@ -68,20 +68,28 @@ class HomeAppBar extends StatelessWidget with PreferredSizeWidget { Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Text( - server.name, + if (serversProvider.selectedServer != null) ...[ + Text( + server!.name, + style: const TextStyle( + fontSize: 20 + ), + ), + const SizedBox(height: 5), + Text( + "${server.connectionMethod}://${server.domain}${server.path ?? ""}${server.port != null ? ':${server.port}' : ""}", + style: const TextStyle( + fontSize: 14, + color: Color.fromRGBO(140, 140, 140, 1) + ), + ) + ], + if (serversProvider.selectedServer == null) Text( + AppLocalizations.of(context)!.noServerSelected, style: const TextStyle( fontSize: 20 ), ), - const SizedBox(height: 5), - Text( - "${server.connectionMethod}://${server.domain}${server.path ?? ""}${server.port != null ? ':${server.port}' : ""}", - style: const TextStyle( - fontSize: 14, - color: Color.fromRGBO(140, 140, 140, 1) - ), - ) ], ), ], @@ -98,7 +106,7 @@ class HomeAppBar extends StatelessWidget with PreferredSizeWidget { ], ), ), - if (serversProvider.serverStatus.loadStatus == 1) PopupMenuItem( + if (serversProvider.selectedServer != null && serversProvider.serverStatus.loadStatus == 1) PopupMenuItem( onTap: openWebAdminPanel, child: Row( children: [