import 'package:ltx_flutter/appwrite/database_api.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'today_views/day_view.dart'; import 'today_views/infinity_view.dart'; class TodayPage extends StatefulWidget { const TodayPage({Key? key}) : super(key: key); @override _TodayPageState createState() => _TodayPageState(); } class _TodayPageState extends State { @override Widget build(BuildContext context) { return LayoutBuilder( builder: (BuildContext context, BoxConstraints constraints) { if (constraints.maxWidth > 800) { return Text("Wide"); } else { return Consumer(builder: (context, database, child) { return database.ready ? NarrowView() : Center( child: CircularProgressIndicator( value: database.progress, )); }); } }); } } class NarrowView extends StatelessWidget { const NarrowView({ super.key, }); @override Widget build(BuildContext context) { return DefaultTabController( length: 4, initialIndex: 0, child: Column( children: [ TabBar( tabs: [ Tab(icon: Icon(Icons.calendar_view_day)), Tab(icon: Icon(Icons.calendar_view_week)), Tab(icon: Icon(Icons.calendar_view_month)), Tab(icon: Icon(Icons.all_inclusive)), ], ), Expanded( child: TabBarView( physics: const NeverScrollableScrollPhysics(), children: [ DayView(), Icon(Icons.directions_transit, size: 350), Icon(Icons.directions_car, size: 350), InfinityView(), ], ), ) ], ), ); } }