import 'package:flutter/material.dart'; import 'package:plezy/widgets/app_icon.dart'; import 'package:material_symbols_icons/symbols.dart'; import 'package:package_info_plus/package_info_plus.dart'; import '../../widgets/focused_scroll_scaffold.dart'; import '../../i18n/strings.g.dart'; import 'licenses_screen.dart'; class AboutScreen extends StatelessWidget { const AboutScreen({super.key}); static final Future _packageInfoFuture = PackageInfo.fromPlatform(); @override Widget build(BuildContext context) { final appName = t.app.title; return FutureBuilder( future: _packageInfoFuture, builder: (context, snapshot) { final appVersion = snapshot.data?.version ?? ''; return FocusedScrollScaffold( title: Text(t.about.title), slivers: [ SliverPadding( padding: const EdgeInsets.all(16), sliver: SliverList( delegate: SliverChildListDelegate([ // App Icon and Name Center( child: Column( children: [ const SizedBox(height: 24), Image.asset('assets/plezy.png', width: 80, height: 80), const SizedBox(height: 16), Text( appName, style: Theme.of(context).textTheme.headlineMedium?.copyWith(fontWeight: FontWeight.bold), ), const SizedBox(height: 8), Text( t.about.versionLabel(version: appVersion), style: Theme.of(context).textTheme.bodyMedium?.copyWith(color: Colors.grey), ), const SizedBox(height: 24), Text( t.about.appDescription, style: Theme.of(context).textTheme.bodyLarge, textAlign: TextAlign.center, ), ], ), ), const SizedBox(height: 40), // Open Source Licenses Card( child: ListTile( leading: const AppIcon(Symbols.description_rounded, fill: 1), title: Text(t.about.openSourceLicenses), subtitle: Text(t.about.viewLicensesDescription), trailing: const AppIcon(Symbols.chevron_right_rounded, fill: 1), onTap: () { Navigator.push(context, MaterialPageRoute(builder: (context) => const LicensesScreen())); }, ), ), const SizedBox(height: 24), ]), ), ), ], ); }, ); } }