diff --git a/lib/main.dart b/lib/main.dart index c7f0fd5f..602f6c09 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -54,12 +54,32 @@ class App extends ConsumerWidget { theme: appTheme, navigatorKey: navigatorKey, scaffoldMessengerKey: scaffoldMessengerKey, - builder: (context, child) => TouchIndicator(child: child!), + builder: (context, child) { + _setPreferredOrientations(context); + return TouchIndicator(child: child!); + }, home: homeScreen, routes: _buildRoutes(), ); } + void _setPreferredOrientations(BuildContext context) { + if (MediaQuery.of(context).size.shortestSide < 600) { + // This is likely a phone + SystemChrome.setPreferredOrientations([ + DeviceOrientation.portraitUp, + DeviceOrientation.portraitDown, + ]); + } else { + // This is likely a tablet + SystemChrome.setPreferredOrientations([ + DeviceOrientation.landscapeRight, + DeviceOrientation.landscapeLeft, + DeviceOrientation.portraitUp, + DeviceOrientation.portraitDown, + ]); + } + } Widget _getHomeScreen(User? user) { return user == null ? const WelcomeScreen() : const CourseOverview(); }