switched to static const strings for route names on each page class

This commit is contained in:
broodjeaap89 2021-09-24 19:42:18 +02:00
parent 0a18438659
commit 0d9fc454d4
14 changed files with 61 additions and 35 deletions

View file

@ -72,10 +72,10 @@ Future<void> main() async {
tz.setLocalLocation(tz.getLocation(timeZoneName)); tz.setLocalLocation(tz.getLocation(timeZoneName));
final NotificationAppLaunchDetails? notificationAppLaunchDetails = await flutterLocalNotificationsPlugin.getNotificationAppLaunchDetails(); final NotificationAppLaunchDetails? notificationAppLaunchDetails = await flutterLocalNotificationsPlugin.getNotificationAppLaunchDetails();
String initialRoute = "/"; String initialRoute = PizzaEventsPage.route;
if (notificationAppLaunchDetails?.didNotificationLaunchApp ?? false) { if (notificationAppLaunchDetails?.didNotificationLaunchApp ?? false) {
selectedNotificationPayload = notificationAppLaunchDetails!.payload; selectedNotificationPayload = notificationAppLaunchDetails!.payload;
initialRoute = "/event/notification"; initialRoute = PizzaEventNotificationPage.route;
} }
runApp(PizzaPlanner(initialRoute)); runApp(PizzaPlanner(initialRoute));
@ -116,7 +116,7 @@ class PizzaPlannerState extends State<PizzaPlanner> {
void _configureSelectNotificationSubject() { void _configureSelectNotificationSubject() {
selectNotificationSubject.stream.listen((String? payload) async { selectNotificationSubject.stream.listen((String? payload) async {
await navigatorKey.currentState?.pushNamed('/event/notification', arguments: payload); await navigatorKey.currentState?.pushNamed(PizzaEventNotificationPage.route, arguments: payload);
}); });
} }
} }
@ -124,71 +124,69 @@ class PizzaPlannerState extends State<PizzaPlanner> {
class RouteGenerator { class RouteGenerator {
static Route<dynamic> generateRoute(RouteSettings settings){ static Route<dynamic> generateRoute(RouteSettings settings){
switch(settings.name){ switch(settings.name){
case "/": { case PizzaEventsPage.route: {
return MaterialPageRoute(builder: (context) => PizzaEventsPage()); return MaterialPageRoute(builder: (context) => PizzaEventsPage());
} }
case "/event/pick_recipe": { case PickPizzaRecipePage.route: {
return MaterialPageRoute(builder: (context) => PickPizzaRecipePage()); return MaterialPageRoute(builder: (context) => PickPizzaRecipePage());
} }
case "/event/add": { case AddPizzaEventPage.route: {
final pizzaRecipe = settings.arguments as PizzaRecipe?; final pizzaRecipe = settings.arguments as PizzaRecipe?;
if (pizzaRecipe == null){ if (pizzaRecipe == null){
break; break;
} }
return MaterialPageRoute(builder: (context) => AddPizzaEventPage(pizzaRecipe)); return MaterialPageRoute(builder: (context) => AddPizzaEventPage(pizzaRecipe));
} }
case "/event/view": { case PizzaEventPage.route: {
final pizzaEvent = settings.arguments as PizzaEvent?; final pizzaEvent = settings.arguments as PizzaEvent?;
if (pizzaEvent == null){ if (pizzaEvent == null){
break; break;
} }
return MaterialPageRoute(builder: (context) => PizzaEventPage(pizzaEvent)); return MaterialPageRoute(builder: (context) => PizzaEventPage(pizzaEvent));
} }
case "/recipe/view": { case RecipePage.route: {
final pizzaRecipe = settings.arguments as PizzaRecipe?; final pizzaRecipe = settings.arguments as PizzaRecipe?;
if (pizzaRecipe == null){ if (pizzaRecipe == null){
break; break;
} }
return MaterialPageRoute(builder: (context) => RecipePage(pizzaRecipe)); return MaterialPageRoute(builder: (context) => RecipePage(pizzaRecipe));
} }
case "/event/notification": { case PizzaEventNotificationPage.route: {
if (selectedNotificationPayload != null) { if (selectedNotificationPayload != null) {
return MaterialPageRoute(builder: (context) => PizzaEventNotificationPage(selectedNotificationPayload)); return MaterialPageRoute(builder: (context) => PizzaEventNotificationPage(selectedNotificationPayload));
} else if (settings.arguments != null) { } else if (settings.arguments != null) {
return MaterialPageRoute(builder: (context) => PizzaEventNotificationPage(settings.arguments as String?)); return MaterialPageRoute(builder: (context) => PizzaEventNotificationPage(settings.arguments as String?));
} else {
return MaterialPageRoute(builder: (context) => PizzaEventsPage());
} }
break;
} }
case "/event/recipe_step": { case RecipeStepInstructionPage.route: {
final recipeStepInstructionArgument = settings.arguments as RecipeStepInstructionPageArguments?; final recipeStepInstructionArgument = settings.arguments as RecipeStepInstructionPageArguments?;
if (recipeStepInstructionArgument == null){ if (recipeStepInstructionArgument == null){
break; break;
} }
return MaterialPageRoute(builder: (context) => RecipeStepInstructionPage(recipeStepInstructionArgument)); return MaterialPageRoute(builder: (context) => RecipeStepInstructionPage(recipeStepInstructionArgument));
} }
case "/recipes/view": { case RecipesPage.route: {
return MaterialPageRoute(builder: (context) => RecipesPage()); return MaterialPageRoute(builder: (context) => RecipesPage());
} }
case "/recipes/edit": { case EditRecipePage.route: {
return MaterialPageRoute(builder: (context) => EditRecipePage(pizzaRecipe: settings.arguments as PizzaRecipe?)); return MaterialPageRoute(builder: (context) => EditRecipePage(pizzaRecipe: settings.arguments as PizzaRecipe?));
} }
case "/recipes/add/edit_step": { case EditRecipeStepPage.route: {
final recipeStep = settings.arguments as RecipeStep?; final recipeStep = settings.arguments as RecipeStep?;
if(recipeStep == null){ if(recipeStep == null){
break; break;
} }
return MaterialPageRoute(builder: (context) => EditRecipeStepPage(recipeStep)); return MaterialPageRoute(builder: (context) => EditRecipeStepPage(recipeStep));
} }
case "/recipes/add/edit_sub_step": { case EditRecipeSubStepPage.route: {
final subStep = settings.arguments as RecipeSubStep?; final subStep = settings.arguments as RecipeSubStep?;
if(subStep == null){ if(subStep == null){
break; break;
} }
return MaterialPageRoute(builder: (context) => EditRecipeSubStepPage(subStep)); return MaterialPageRoute(builder: (context) => EditRecipeSubStepPage(subStep));
} }
case "/recipes/add/url": { case AddRecipeURLPage.route: {
return MaterialPageRoute(builder: (context) => AddRecipeURLPage(settings.arguments as String?)); return MaterialPageRoute(builder: (context) => AddRecipeURLPage(settings.arguments as String?));
} }
default: { default: {

View file

@ -14,6 +14,7 @@ import 'package:hive/hive.dart';
import 'package:hive_flutter/hive_flutter.dart'; import 'package:hive_flutter/hive_flutter.dart';
class AddPizzaEventPage extends StatefulWidget { class AddPizzaEventPage extends StatefulWidget {
static const String route = "/event/add";
final PizzaRecipe pizzaRecipe; final PizzaRecipe pizzaRecipe;
const AddPizzaEventPage(this.pizzaRecipe); const AddPizzaEventPage(this.pizzaRecipe);

View file

@ -2,6 +2,7 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hive_flutter/hive_flutter.dart'; import 'package:hive_flutter/hive_flutter.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart';
import 'package:pizzaplanner/pages/recipe_page.dart';
import 'package:pizzaplanner/pages/scaffold.dart'; import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
@ -9,6 +10,7 @@ import 'package:pizzaplanner/widgets/pizza_recipe_widget.dart';
import 'package:yaml/yaml.dart'; import 'package:yaml/yaml.dart';
class AddRecipeURLPage extends StatefulWidget { class AddRecipeURLPage extends StatefulWidget {
static const String route = "/recipes/add/url";
final String? url; final String? url;
const AddRecipeURLPage(this.url); const AddRecipeURLPage(this.url);
@ -142,7 +144,7 @@ class AddRecipeURLPageState extends State<AddRecipeURLPage> {
widgets.add( widgets.add(
InkWell( InkWell(
onTap: () { onTap: () {
Navigator.pushNamed(context, "/recipes/add/url", arguments: url); Navigator.pushNamed(context, AddRecipeURLPage.route, arguments: url);
}, },
child: Container( child: Container(
height: 70, height: 70,
@ -184,7 +186,7 @@ class AddRecipeURLPageState extends State<AddRecipeURLPage> {
TextButton( TextButton(
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
Navigator.pushNamed(context, "/recipe/view", arguments: pizzaRecipe); Navigator.pushNamed(context, RecipePage.route, arguments: pizzaRecipe);
}, },
child: const Text("View"), child: const Text("View"),
), ),

View file

@ -5,10 +5,12 @@ import 'package:pizzaplanner/entities/PizzaRecipe/ingredient.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/recipe_step.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/recipe_step.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/recipe_substep.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/recipe_substep.dart';
import 'package:pizzaplanner/pages/edit_recipe_step_page.dart';
import 'package:pizzaplanner/pages/scaffold.dart'; import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
class EditRecipePage extends StatefulWidget { class EditRecipePage extends StatefulWidget {
static const String route = "/recipes/edit";
late final PizzaRecipe? _pizzaRecipe; late final PizzaRecipe? _pizzaRecipe;
EditRecipePage({PizzaRecipe? pizzaRecipe}){ EditRecipePage({PizzaRecipe? pizzaRecipe}){
@ -289,7 +291,7 @@ class EditRecipePageState extends State<EditRecipePage> {
child: TextButton( child: TextButton(
onPressed: () { onPressed: () {
FocusScope.of(context).unfocus(); FocusScope.of(context).unfocus();
Navigator.pushNamed(context, "/recipes/add/edit_step", arguments: recipeStep).then( Navigator.pushNamed(context, EditRecipeStepPage.route, arguments: recipeStep).then(
(_) { (_) {
setState((){}); setState((){});
} }

View file

@ -3,11 +3,13 @@ import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/recipe_step.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/recipe_step.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/recipe_substep.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/recipe_substep.dart';
import 'package:pizzaplanner/pages/edit_recipe_page.dart'; import 'package:pizzaplanner/pages/edit_recipe_page.dart';
import 'package:pizzaplanner/pages/edit_recipe_sub_step_page.dart';
import 'package:pizzaplanner/pages/nav_drawer.dart'; import 'package:pizzaplanner/pages/nav_drawer.dart';
import 'package:pizzaplanner/pages/scaffold.dart'; import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
class EditRecipeStepPage extends StatefulWidget { class EditRecipeStepPage extends StatefulWidget {
static const String route = "/recipes/add/edit_step";
final RecipeStep recipeStep; final RecipeStep recipeStep;
const EditRecipeStepPage(this.recipeStep); const EditRecipeStepPage(this.recipeStep);
@ -189,7 +191,7 @@ class EditRecipeStepPageState extends State<EditRecipeStepPage> {
child: TextButton( child: TextButton(
onPressed: () { onPressed: () {
FocusScope.of(context).unfocus(); FocusScope.of(context).unfocus();
Navigator.pushNamed(context, "/recipes/add/edit_sub_step", arguments: subStep).then( Navigator.pushNamed(context, EditRecipeSubStepPage.route, arguments: subStep).then(
(_) { (_) {
setState((){}); setState((){});
} }

View file

@ -5,6 +5,7 @@ import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
class EditRecipeSubStepPage extends StatefulWidget { class EditRecipeSubStepPage extends StatefulWidget {
static const String route = "/recipes/add/edit_sub_step";
final RecipeSubStep subStep; final RecipeSubStep subStep;
const EditRecipeSubStepPage(this.subStep); const EditRecipeSubStepPage(this.subStep);

View file

@ -1,5 +1,6 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:fluttericon/font_awesome5_icons.dart'; import 'package:fluttericon/font_awesome5_icons.dart';
import 'package:pizzaplanner/pages/recipes_page.dart';
class NavDrawer extends StatelessWidget { class NavDrawer extends StatelessWidget {
@override @override
@ -25,7 +26,7 @@ class NavDrawer extends StatelessWidget {
leading: const Icon(FontAwesome5.pizza_slice), leading: const Icon(FontAwesome5.pizza_slice),
title: const Text("Recipes"), title: const Text("Recipes"),
onTap: () => { onTap: () => {
Navigator.pushNamed(context, "/recipes/view") Navigator.pushNamed(context, RecipesPage.route)
}, },
) )
] ]

View file

@ -1,11 +1,14 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hive_flutter/adapters.dart'; import 'package:hive_flutter/adapters.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart';
import 'package:pizzaplanner/pages/add_pizza_event_page.dart';
import 'package:pizzaplanner/pages/nav_drawer.dart'; import 'package:pizzaplanner/pages/nav_drawer.dart';
import 'package:pizzaplanner/pages/scaffold.dart'; import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:pizzaplanner/widgets/pizza_recipe_widget.dart'; import 'package:pizzaplanner/widgets/pizza_recipe_widget.dart';
class PickPizzaRecipePage extends StatelessWidget { class PickPizzaRecipePage extends StatelessWidget {
static const String route = "/event/pick_recipe";
@override @override
Widget build(BuildContext context){ Widget build(BuildContext context){
return PizzaPlannerScaffold( return PizzaPlannerScaffold(
@ -23,7 +26,7 @@ class PickPizzaRecipePage extends StatelessWidget {
} }
return InkWell( return InkWell(
onTap: () { onTap: () {
Navigator.pushNamed(context, "/event/add", arguments: pizzaRecipe); Navigator.pushNamed(context, AddPizzaEventPage.route, arguments: pizzaRecipe);
}, },
child: PizzaRecipeWidget(pizzaRecipe), child: PizzaRecipeWidget(pizzaRecipe),
); );

View file

@ -17,6 +17,7 @@ import 'package:vibration/vibration.dart';
class PizzaEventNotificationPage extends StatefulWidget { class PizzaEventNotificationPage extends StatefulWidget {
static const String route = "/event/notification";
final String? payload; final String? payload;
const PizzaEventNotificationPage(this.payload); const PizzaEventNotificationPage(this.payload);
@ -130,7 +131,7 @@ class PizzaEventNotificationState extends State<PizzaEventNotificationPage> {
Navigator.pop(context); Navigator.pop(context);
Navigator.pushNamed( Navigator.pushNamed(
context, context,
"/event/recipe_step", RecipeStepInstructionPage.route,
arguments: RecipeStepInstructionPageArguments( arguments: RecipeStepInstructionPageArguments(
pizzaEvent, pizzaEvent,
recipeStep recipeStep

View file

@ -7,6 +7,7 @@ import 'package:pizzaplanner/entities/PizzaRecipe/ingredient.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/recipe_step.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/recipe_step.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/recipe_substep.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/recipe_substep.dart';
import 'package:pizzaplanner/main.dart'; import 'package:pizzaplanner/main.dart';
import 'package:pizzaplanner/pages/recipe_page.dart';
import 'package:pizzaplanner/pages/recipe_step_instruction_page.dart'; import 'package:pizzaplanner/pages/recipe_step_instruction_page.dart';
import 'package:pizzaplanner/pages/scaffold.dart'; import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:pizzaplanner/util.dart'; import 'package:pizzaplanner/util.dart';
@ -14,6 +15,8 @@ import 'package:pizzaplanner/widgets/pizza_recipe_widget.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
class PizzaEventPage extends StatefulWidget { class PizzaEventPage extends StatefulWidget {
static const String route = "/event/view";
final PizzaEvent pizzaEvent; final PizzaEvent pizzaEvent;
const PizzaEventPage(this.pizzaEvent); const PizzaEventPage(this.pizzaEvent);
@ -57,7 +60,7 @@ class PizzaEventPageState extends State<PizzaEventPage> {
color: Colors.blue, color: Colors.blue,
child: TextButton( child: TextButton(
onPressed: () { onPressed: () {
Navigator.pushNamed(context, "/recipe/view", arguments: widget.pizzaEvent.recipe); Navigator.pushNamed(context, RecipePage.route, arguments: widget.pizzaEvent.recipe);
}, },
child: Text(widget.pizzaEvent.recipe.name, style: const TextStyle(color: Colors.white)), child: Text(widget.pizzaEvent.recipe.name, style: const TextStyle(color: Colors.white)),
) )
@ -113,7 +116,7 @@ class PizzaEventPageState extends State<PizzaEventPage> {
onPressed: () { onPressed: () {
Navigator.pushNamed( Navigator.pushNamed(
context, context,
"/event/recipe_step", RecipeStepInstructionPage.route,
arguments: RecipeStepInstructionPageArguments( arguments: RecipeStepInstructionPageArguments(
widget.pizzaEvent, widget.pizzaEvent,
firstStepDue! firstStepDue!

View file

@ -1,6 +1,8 @@
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:pizzaplanner/entities/pizza_event.dart'; import 'package:pizzaplanner/entities/pizza_event.dart';
import 'package:pizzaplanner/pages/pick_pizza_recipe_page.dart';
import 'package:pizzaplanner/pages/pizza_event_page.dart';
import 'package:pizzaplanner/pages/scaffold.dart'; import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:pizzaplanner/widgets/pizza_event_widget.dart'; import 'package:pizzaplanner/widgets/pizza_event_widget.dart';
@ -8,6 +10,8 @@ import 'package:hive/hive.dart';
import 'package:hive_flutter/hive_flutter.dart'; import 'package:hive_flutter/hive_flutter.dart';
class PizzaEventsPage extends StatefulWidget { class PizzaEventsPage extends StatefulWidget {
static const String route = "/";
@override @override
PizzaEventsState createState() => PizzaEventsState(); PizzaEventsState createState() => PizzaEventsState();
} }
@ -36,7 +40,7 @@ class PizzaEventsState extends State<PizzaEventsPage> {
} }
return InkWell( return InkWell(
onTap: () { onTap: () {
Navigator.pushNamed(context, "/event/view", arguments: pizzaEvent); Navigator.pushNamed(context, PizzaEventPage.route, arguments: pizzaEvent);
}, },
onLongPress: () { onLongPress: () {
showDialog(context: context, builder: (BuildContext context) { showDialog(context: context, builder: (BuildContext context) {
@ -47,7 +51,7 @@ class PizzaEventsState extends State<PizzaEventsPage> {
TextButton( TextButton(
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
Navigator.pushNamed(context, "/event/view", arguments: pizzaEvent); Navigator.pushNamed(context, PizzaEventPage.route, arguments: pizzaEvent);
}, },
child: const Text("View"), child: const Text("View"),
), ),
@ -111,7 +115,7 @@ class PizzaEventsState extends State<PizzaEventsPage> {
onPressed: () async { onPressed: () async {
final dynamic newPizzaEvent = await Navigator.pushNamed( final dynamic newPizzaEvent = await Navigator.pushNamed(
context, context,
"/event/pick_recipe", PickPizzaRecipePage.route,
); );
if (newPizzaEvent != null){ if (newPizzaEvent != null){

View file

@ -7,6 +7,8 @@ import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
class RecipePage extends StatefulWidget { class RecipePage extends StatefulWidget {
static const String route = "/recipe/view";
final PizzaRecipe pizzaRecipe; final PizzaRecipe pizzaRecipe;
const RecipePage(this.pizzaRecipe); const RecipePage(this.pizzaRecipe);

View file

@ -15,6 +15,8 @@ class RecipeStepInstructionPageArguments {
} }
class RecipeStepInstructionPage extends StatefulWidget { class RecipeStepInstructionPage extends StatefulWidget {
static const String route = "/event/recipe_step";
late final PizzaEvent pizzaEvent; late final PizzaEvent pizzaEvent;
late final RecipeStep recipeStep; late final RecipeStep recipeStep;

View file

@ -5,7 +5,10 @@ import 'package:flutter/material.dart';
import 'package:hive_flutter/hive_flutter.dart'; import 'package:hive_flutter/hive_flutter.dart';
import 'package:path_provider/path_provider.dart'; import 'package:path_provider/path_provider.dart';
import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart'; import 'package:pizzaplanner/entities/PizzaRecipe/pizza_recipe.dart';
import 'package:pizzaplanner/pages/add_recipe_url.dart';
import 'package:pizzaplanner/pages/edit_recipe_page.dart';
import 'package:pizzaplanner/pages/nav_drawer.dart'; import 'package:pizzaplanner/pages/nav_drawer.dart';
import 'package:pizzaplanner/pages/recipe_page.dart';
import 'package:pizzaplanner/pages/scaffold.dart'; import 'package:pizzaplanner/pages/scaffold.dart';
import 'package:pizzaplanner/widgets/pizza_recipe_widget.dart'; import 'package:pizzaplanner/widgets/pizza_recipe_widget.dart';
import 'package:path/path.dart' as path; import 'package:path/path.dart' as path;
@ -13,6 +16,7 @@ import 'package:share_plus/share_plus.dart';
class RecipesPage extends StatefulWidget { class RecipesPage extends StatefulWidget {
static const String route = "/recipes/view";
@override @override
RecipesPageState createState() => RecipesPageState(); RecipesPageState createState() => RecipesPageState();
} }
@ -61,7 +65,7 @@ class RecipesPageState extends State<RecipesPage> {
return InkWell( return InkWell(
onTap: () { onTap: () {
FocusScope.of(context).unfocus(); FocusScope.of(context).unfocus();
Navigator.pushNamed(context, "/recipe/view", arguments: pizzaRecipe); Navigator.pushNamed(context, RecipePage.route, arguments: pizzaRecipe);
}, },
onLongPress: () { onLongPress: () {
FocusScope.of(context).unfocus(); FocusScope.of(context).unfocus();
@ -80,14 +84,14 @@ class RecipesPageState extends State<RecipesPage> {
TextButton( TextButton(
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
Navigator.pushNamed(context, "/recipe/view", arguments: pizzaRecipe); Navigator.pushNamed(context, RecipePage.route, arguments: pizzaRecipe);
}, },
child: const Text("View"), child: const Text("View"),
), ),
TextButton( TextButton(
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
Navigator.pushNamed(context, "/recipes/edit", arguments: pizzaRecipe); Navigator.pushNamed(context, EditRecipePage.route, arguments: pizzaRecipe);
}, },
child: const Text("Edit"), child: const Text("Edit"),
), ),
@ -170,7 +174,7 @@ class RecipesPageState extends State<RecipesPage> {
TextButton( TextButton(
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
Navigator.pushNamed(context, "/recipes/add/url"); Navigator.pushNamed(context, AddRecipeURLPage.route);
}, },
child: const Text("URL"), child: const Text("URL"),
) )
@ -194,7 +198,7 @@ class RecipesPageState extends State<RecipesPage> {
width: double.infinity, width: double.infinity,
child: TextButton( child: TextButton(
onPressed: () async { onPressed: () async {
Navigator.pushNamed(context, "/recipes/edit"); Navigator.pushNamed(context, EditRecipePage.route);
}, },
child: const Text("New Recipe", style: TextStyle(color: Colors.white)), child: const Text("New Recipe", style: TextStyle(color: Colors.white)),
) )