~repos /only-bible-app
git clone https://pyrossh.dev/repos/only-bible-app.git
The only bible app you will ever need. No ads. No in-app purchases. No distractions.
86805a6a
—
pyrossh 2 years ago
improve theme and transition
- lib/app.dart +13 -3
- lib/components/side_menu_page.dart +4 -2
- lib/components/sidebar.dart +8 -6
lib/app.dart
CHANGED
|
@@ -18,10 +18,15 @@ class App extends StatelessWidget {
|
|
|
18
18
|
theme: ThemeData(
|
|
19
19
|
visualDensity: VisualDensity.adaptivePlatformDensity,
|
|
20
20
|
primaryColor: const Color(0xFF4C2323),
|
|
21
|
+
primaryColorDark: const Color(0xFF3C1B1C),
|
|
22
|
+
primaryColorLight: const Color(0xFF7F3D3C),
|
|
21
23
|
secondaryHeaderColor: const Color(0xFFFFB341),
|
|
22
24
|
highlightColor: const Color(0xAAF8D0DC),
|
|
23
25
|
dividerColor: Colors.black,
|
|
24
26
|
shadowColor: Colors.black,
|
|
27
|
+
popupMenuTheme: const PopupMenuThemeData(
|
|
28
|
+
elevation: 4,
|
|
29
|
+
),
|
|
25
30
|
colorScheme: const ColorScheme.light(
|
|
26
31
|
background: Colors.white,
|
|
27
32
|
),
|
|
@@ -66,11 +71,16 @@ class App extends StatelessWidget {
|
|
|
66
71
|
),
|
|
67
72
|
darkTheme: ThemeData(
|
|
68
73
|
visualDensity: VisualDensity.adaptivePlatformDensity,
|
|
69
|
-
primaryColor: const Color(
|
|
74
|
+
primaryColor: const Color(0xFF2D0B0B),
|
|
75
|
+
primaryColorDark: const Color(0xFF260909),
|
|
76
|
+
primaryColorLight: const Color(0xFF481514),
|
|
70
|
-
secondaryHeaderColor: const Color(
|
|
77
|
+
secondaryHeaderColor: const Color(0xFFFFC351),
|
|
71
78
|
highlightColor: const Color(0xAA5D4979),
|
|
72
79
|
dividerColor: Colors.white,
|
|
73
80
|
shadowColor: Colors.white,
|
|
81
|
+
popupMenuTheme: const PopupMenuThemeData(
|
|
82
|
+
elevation: 2,
|
|
83
|
+
),
|
|
74
84
|
colorScheme: const ColorScheme.dark(
|
|
75
85
|
background: Color(0xFF1F1F22),
|
|
76
86
|
),
|
|
@@ -96,7 +106,7 @@ class App extends StatelessWidget {
|
|
|
96
106
|
headlineLarge: TextStyle(
|
|
97
107
|
fontSize: 38,
|
|
98
108
|
fontWeight: FontWeight.w700,
|
|
99
|
-
color: Color(
|
|
109
|
+
color: Color(0xFFFFC351),
|
|
100
110
|
),
|
|
101
111
|
headlineMedium: TextStyle(
|
|
102
112
|
color: Color(0xFFBCBEC4),
|
lib/components/side_menu_page.dart
CHANGED
|
@@ -47,9 +47,11 @@ class SideMenuPage extends ModalRoute<void> {
|
|
|
47
47
|
Animation<double> secondaryAnimation,
|
|
48
48
|
Widget child,
|
|
49
49
|
) {
|
|
50
|
+
if (isWide(context)) {
|
|
51
|
+
return child;
|
|
52
|
+
}
|
|
50
53
|
return SlideTransition(
|
|
51
|
-
position: Tween(begin: const Offset(-1, 0), end: Offset.zero)
|
|
54
|
+
position: Tween(begin: const Offset(-1, 0), end: Offset.zero).animate(animation),
|
|
52
|
-
.animate(animation),
|
|
53
55
|
child: child,
|
|
54
56
|
);
|
|
55
57
|
}
|
lib/components/sidebar.dart
CHANGED
|
@@ -7,16 +7,18 @@ class Sidebar extends StatelessWidget {
|
|
|
7
7
|
Widget build(BuildContext context) {
|
|
8
8
|
final height = MediaQuery.of(context).size.height;
|
|
9
9
|
return ColoredBox(
|
|
10
|
-
color:
|
|
10
|
+
color: Theme.of(context).primaryColor,
|
|
11
11
|
child: Stack(
|
|
12
12
|
children: [
|
|
13
13
|
Positioned(
|
|
14
14
|
left: 0.0,
|
|
15
15
|
top: 0.0,
|
|
16
16
|
child: Container(
|
|
17
|
-
width:
|
|
17
|
+
width: 30.0,
|
|
18
18
|
height: height,
|
|
19
|
-
decoration:
|
|
19
|
+
decoration: BoxDecoration(
|
|
20
|
+
color: Theme.of(context).primaryColorDark,
|
|
21
|
+
),
|
|
20
22
|
),
|
|
21
23
|
),
|
|
22
24
|
const Belt(top: 80),
|
|
@@ -128,12 +130,12 @@ class Belt extends StatelessWidget {
|
|
|
128
130
|
child: Container(
|
|
129
131
|
width: 60.0,
|
|
130
132
|
height: 30.0,
|
|
131
|
-
decoration:
|
|
133
|
+
decoration: BoxDecoration(
|
|
132
|
-
borderRadius: BorderRadius.only(
|
|
134
|
+
borderRadius: const BorderRadius.only(
|
|
133
135
|
bottomRight: Radius.circular(25),
|
|
134
136
|
topRight: Radius.circular(25),
|
|
135
137
|
),
|
|
136
|
-
color:
|
|
138
|
+
color: Theme.of(context).primaryColorLight,
|
|
137
139
|
),
|
|
138
140
|
),
|
|
139
141
|
);
|