From b62e0e9bfd7da20725a0307d9bcb115b0c4a61ca Mon Sep 17 00:00:00 2001 From: Simon Ding Date: Sat, 10 Aug 2024 11:06:29 +0800 Subject: [PATCH] feat: small screen --- ui/lib/main.dart | 8 +++++--- ui/lib/welcome_page.dart | 4 ++-- ui/lib/widgets/utils.dart | 4 ++++ 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/ui/lib/main.dart b/ui/lib/main.dart index 4919716..b97f920 100644 --- a/ui/lib/main.dart +++ b/ui/lib/main.dart @@ -11,6 +11,7 @@ import 'package:ui/settings/settings.dart'; import 'package:ui/system_page.dart'; import 'package:ui/tv_details.dart'; import 'package:ui/welcome_page.dart'; +import 'package:ui/widgets/utils.dart'; void main() { runApp(const MyApp()); @@ -49,7 +50,9 @@ class _MyAppState extends ConsumerState { builder: (BuildContext context, GoRouterState state, Widget child) { return SelectionArea( child: MainSkeleton( - body: Padding(padding: const EdgeInsets.all(20), child: child), + body: Padding( + padding: EdgeInsets.all(isSmallScreen(context) ? 5 : 20), + child: child), ), ); }, @@ -128,8 +131,7 @@ class _MyAppState extends ConsumerState { colorScheme: ColorScheme.fromSeed( seedColor: Colors.blueAccent, brightness: Brightness.dark, - surface: Colors.black87 - ), + surface: Colors.black87), useMaterial3: true, //scaffoldBackgroundColor: Color.fromARGB(255, 26, 24, 24) tooltipTheme: TooltipThemeData( diff --git a/ui/lib/welcome_page.dart b/ui/lib/welcome_page.dart index 38cf288..4cef276 100644 --- a/ui/lib/welcome_page.dart +++ b/ui/lib/welcome_page.dart @@ -27,7 +27,7 @@ class WelcomePage extends ConsumerWidget { return switch (data) { AsyncData(:final value) => SingleChildScrollView( child: Wrap( - spacing: isSmallScreen(context) ? 5 : 10, + spacing: isSmallScreen(context) ? 0 : 10, runSpacing: isSmallScreen(context) ? 10 : 20, children: value.isEmpty ? [ @@ -57,7 +57,7 @@ class WelcomePage extends ConsumerWidget { class MediaCard extends StatelessWidget { final MediaDetail item; - static const double smallWidth = 110; + static const double smallWidth = 126; static const double largeWidth = 140; const MediaCard({super.key, required this.item}); diff --git a/ui/lib/widgets/utils.dart b/ui/lib/widgets/utils.dart index 9323b3b..a012d69 100644 --- a/ui/lib/widgets/utils.dart +++ b/ui/lib/widgets/utils.dart @@ -58,3 +58,7 @@ bool isDesktop() { return Platform.isLinux || Platform.isWindows || Platform.isMacOS; } + bool isSmallScreen(BuildContext context) { + final screenWidth = MediaQuery.of(context).size.width; + return screenWidth < 600; + }