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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
import 'package:flutter_ics_homescreen/export.dart';
// import 'package:media_kit_video/media_kit_video.dart';
class HomeScreen extends ConsumerStatefulWidget {
const HomeScreen({
super.key,
});
@override
HomeScreenState createState() => HomeScreenState();
}
class HomeScreenState extends ConsumerState<HomeScreen> {
@override
void initState() {
super.initState();
}
@override
void dispose() {
// player.dispose();
super.dispose();
}
@override
Widget build(
BuildContext context,
) {
return Consumer(builder: (context, ref, child) {
final state = ref.read(appProvider);
const disableBkgAnimation = bool.fromEnvironment('DISABLE_BKG_ANIMATION');
if(disableBkgAnimation)
print('Background animation: disabled');
return Scaffold(
key: homeScaffoldKey,
extendBody: true,
extendBodyBehindAppBar: true,
appBar: const CustomTopBar(),
body: Stack(
children: [
if (!disableBkgAnimation)
Lottie.asset(
'animations/BG-dotwaveform.json',
fit: BoxFit.cover,
repeat: true,
),
FlowBuilder<AppState>(
state: ref.watch(appProvider),
onGeneratePages: onGenerateAppViewPages,
observers: [
HeroController(),
],
),
if (state != AppState.splash)
Positioned(
top: 0,
bottom: 0,
child: Container(
padding: const EdgeInsets.only(left: 8),
height: 500,
child: const VolumeFanControl()),
),
],
),
bottomNavigationBar:
state == AppState.splash ? null : const CustomBottomBar(),
);
});
}
}
|