-
Notifications
You must be signed in to change notification settings - Fork 179
Expand file tree
/
Copy pathhome_view.dart
More file actions
59 lines (52 loc) · 1.99 KB
/
Copy pathhome_view.dart
File metadata and controls
59 lines (52 loc) · 1.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:taskwarrior/app/modules/home/views/filter_drawer_home_page.dart';
import 'package:taskwarrior/app/modules/home/views/home_page_app_bar.dart';
import 'package:taskwarrior/app/modules/home/views/home_page_body.dart';
import 'package:taskwarrior/app/modules/home/views/home_page_floating_action_button.dart';
import 'package:taskwarrior/app/modules/home/views/nav_drawer.dart';
import 'package:taskwarrior/app/utils/constants/taskwarrior_colors.dart';
import 'package:taskwarrior/app/utils/taskserver/taskserver.dart';
import 'package:taskwarrior/app/utils/home_path/home_path.dart' as rc;
import '../controllers/home_controller.dart';
class HomeView extends GetView<HomeController> {
const HomeView({super.key});
@override
Widget build(BuildContext context) {
Server? server;
Credentials? credentials;
var contents = rc.Taskrc(controller.storage.home.home).readTaskrc();
if (contents != null) {
server = Taskrc.fromString(contents).server;
credentials = Taskrc.fromString(contents).credentials;
}
controller.checkForSync(context);
return Obx(
() => Scaffold(
appBar: HomePageAppBar(
server: server,
credentials: credentials,
controller: controller,
),
backgroundColor: controller.isDarkModeOn.value
? TaskWarriorColors.kprimaryBackgroundColor
: TaskWarriorColors.kLightPrimaryBackgroundColor,
drawer: NavDrawer(homeController: controller),
drawerEnableOpenDragGesture: true,
drawerEdgeDragWidth: 80,
body: HomePageBody(
controller: controller,
),
endDrawer: Obx(
() => FilterDrawer(
filters: controller.getFilters(),
homeController: controller,
),
),
floatingActionButton:
HomePageFloatingActionButton(controller: controller),
resizeToAvoidBottomInset: false,
),
);
}
}