Fix title not changing when swiped
This commit is contained in:
@@ -16,18 +16,29 @@ class HomePage extends StatelessWidget {
|
|||||||
return SafeArea(
|
return SafeArea(
|
||||||
child: DefaultTabController(
|
child: DefaultTabController(
|
||||||
length: 4,
|
length: 4,
|
||||||
child: Consumer<GlobalModel>(
|
child: Builder(builder: (context) {
|
||||||
|
TabController cont = DefaultTabController.of(context);
|
||||||
|
// print("Rebuilt");
|
||||||
|
// if (!cont.hasListeners) {
|
||||||
|
// print("Adding callback");
|
||||||
|
cont.addListener(() {
|
||||||
|
// print("Called Callback");
|
||||||
|
Provider.of<GlobalModel>(context, listen: false)
|
||||||
|
.setMenuTime(cont.index);
|
||||||
|
});
|
||||||
|
// }
|
||||||
|
return Consumer<GlobalModel>(
|
||||||
builder: (BuildContext context, GlobalModel data, Widget? child) {
|
builder: (BuildContext context, GlobalModel data, Widget? child) {
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
title: Text("Daily ${data.menuTime} Menu"),
|
title: Text("Daily ${data.menuTime} Menu"),
|
||||||
bottom: TabBar(
|
bottom: TabBar(
|
||||||
|
controller: cont,
|
||||||
splashFactory: NoSplash.splashFactory,
|
splashFactory: NoSplash.splashFactory,
|
||||||
indicator: const UnderlineTabIndicator(
|
indicator: const UnderlineTabIndicator(
|
||||||
insets: EdgeInsets.fromLTRB(10, 3, 10, 3)),
|
insets: EdgeInsets.fromLTRB(10, 3, 10, 3)),
|
||||||
onTap: (int index) {
|
onTap: (int index) {
|
||||||
Provider.of<GlobalModel>(context, listen: false)
|
data.setMenuTime(index);
|
||||||
.setMenuTime(index);
|
|
||||||
},
|
},
|
||||||
tabs: const [
|
tabs: const [
|
||||||
Tab(icon: Icon(Icons.breakfast_dining_outlined)),
|
Tab(icon: Icon(Icons.breakfast_dining_outlined)),
|
||||||
@@ -51,10 +62,10 @@ class HomePage extends StatelessWidget {
|
|||||||
showDatePicker(
|
showDatePicker(
|
||||||
context: context,
|
context: context,
|
||||||
initialDate: data.currentDate,
|
initialDate: data.currentDate,
|
||||||
firstDate:
|
firstDate: data.currentDate
|
||||||
data.currentDate.add(const Duration(days: -30)),
|
.add(const Duration(days: -30)),
|
||||||
lastDate:
|
lastDate: data.currentDate
|
||||||
data.currentDate.add(const Duration(days: 30)))
|
.add(const Duration(days: 30)))
|
||||||
.then((value) {
|
.then((value) {
|
||||||
data.setDateToADay(value ?? data.currentDate);
|
data.setDateToADay(value ?? data.currentDate);
|
||||||
});
|
});
|
||||||
@@ -80,6 +91,7 @@ class HomePage extends StatelessWidget {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
body: TabBarView(
|
body: TabBarView(
|
||||||
|
controller: cont,
|
||||||
children: data.menuAvailable
|
children: data.menuAvailable
|
||||||
? const [
|
? const [
|
||||||
MenuListView(menuType: "bf"),
|
MenuListView(menuType: "bf"),
|
||||||
@@ -94,6 +106,7 @@ class HomePage extends StatelessWidget {
|
|||||||
noMenuWidget,
|
noMenuWidget,
|
||||||
]),
|
]),
|
||||||
);
|
);
|
||||||
|
});
|
||||||
}),
|
}),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user