feat: aggiungi guida utente e icona launcher
Guida utente: - Pulsante info nell'AppBar principale - InfoBottomSheet: icona app, versione, autore, licenza, link alla guida - GuidePage: tre tab (Pasti / Converti / Spesa) con card e step numerati, portata dalla DocsPanel Vue originale AppBar globale in app.dart con titolo dinamico per tab corrente. Icona launcher: - flutter_launcher_icons eseguito in build.sh prima di flutter build apk (sia debug che release) per applicare assets/icon-only.png all'APK. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -3,6 +3,7 @@ import 'core/theme/app_theme.dart';
|
||||
import 'features/meal_planner/presentation/pages/meal_planner_page.dart';
|
||||
import 'features/converter/presentation/pages/converter_page.dart';
|
||||
import 'features/shopping_list/presentation/pages/shopping_list_page.dart';
|
||||
import 'features/guide/presentation/widgets/info_bottom_sheet.dart';
|
||||
|
||||
class BitePlanApp extends StatelessWidget {
|
||||
const BitePlanApp({super.key});
|
||||
@@ -29,6 +30,8 @@ class _MainScaffoldState extends State<_MainScaffold> {
|
||||
int _currentIndex = 0;
|
||||
late final List<Widget> _pages;
|
||||
|
||||
static const _titles = ['Piano Pasti', 'Convertitore', 'Lista della spesa'];
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
@@ -44,6 +47,16 @@ class _MainScaffoldState extends State<_MainScaffold> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
title: Text(_titles[_currentIndex]),
|
||||
actions: [
|
||||
IconButton(
|
||||
icon: const Icon(Icons.info_outline),
|
||||
tooltip: 'Informazioni',
|
||||
onPressed: () => showInfoBottomSheet(context),
|
||||
),
|
||||
],
|
||||
),
|
||||
body: IndexedStack(
|
||||
index: _currentIndex,
|
||||
children: _pages,
|
||||
|
||||
Reference in New Issue
Block a user