Skip to content

Commit ca0e026

Browse files
committed
Improve dashboard design
1 parent a1225dd commit ca0e026

File tree

5 files changed

+58
-41
lines changed

5 files changed

+58
-41
lines changed

app/lib/pages/dashboard/events.dart

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ import 'package:flow_api/models/model.dart';
1111
import '../../cubits/flow.dart';
1212
import '../../widgets/markdown_field.dart';
1313

14-
class DashboardEventsCard extends StatefulWidget {
15-
const DashboardEventsCard({super.key});
14+
class DashboardEventsView extends StatefulWidget {
15+
const DashboardEventsView({super.key});
1616

1717
@override
18-
State<DashboardEventsCard> createState() => _DashboardEventsCardState();
18+
State<DashboardEventsView> createState() => _DashboardEventsViewState();
1919
}
2020

21-
class _DashboardEventsCardState extends State<DashboardEventsCard> {
21+
class _DashboardEventsViewState extends State<DashboardEventsView> {
2222
Future<List<SourcedConnectedModel<CalendarItem, Event?>>> _getAppointments(
2323
BuildContext context) async {
2424
final sources = context.read<FlowCubit>().getCurrentServicesMap();
@@ -33,7 +33,7 @@ class _DashboardEventsCardState extends State<DashboardEventsCard> {
3333
}
3434

3535
@override
36-
void didUpdateWidget(covariant DashboardEventsCard oldWidget) {
36+
void didUpdateWidget(covariant DashboardEventsView oldWidget) {
3737
super.didUpdateWidget(oldWidget);
3838
setState(() {});
3939
}

app/lib/pages/dashboard/notes.dart

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@ import 'package:flow_api/models/note/model.dart';
88

99
import '../../cubits/flow.dart';
1010

11-
class DashboardNotesCard extends StatefulWidget {
12-
const DashboardNotesCard({super.key});
11+
class DashboardNotesView extends StatefulWidget {
12+
const DashboardNotesView({super.key});
1313

1414
@override
15-
State<DashboardNotesCard> createState() => _DashboardNotesCardState();
15+
State<DashboardNotesView> createState() => _DashboardNotesViewState();
1616
}
1717

18-
class _DashboardNotesCardState extends State<DashboardNotesCard> {
18+
class _DashboardNotesViewState extends State<DashboardNotesView> {
1919
Future<List<(Note, String)>> _getNotes(BuildContext context) async {
2020
final sources = context.read<FlowCubit>().getCurrentServicesMap();
2121
final notes = <(Note, String)>[];
@@ -28,7 +28,7 @@ class _DashboardNotesCardState extends State<DashboardNotesCard> {
2828
}
2929

3030
@override
31-
void didUpdateWidget(covariant DashboardNotesCard oldWidget) {
31+
void didUpdateWidget(covariant DashboardNotesView oldWidget) {
3232
super.didUpdateWidget(oldWidget);
3333
setState(() {});
3434
}

app/lib/pages/dashboard/page.dart

Lines changed: 47 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import 'package:flow/widgets/clock.dart';
33
import 'package:flow/widgets/navigation.dart';
44
import 'package:flutter/material.dart';
55
import 'package:flow/src/generated/i18n/app_localizations.dart';
6+
import 'package:material_leap/helpers.dart';
67

78
import 'events.dart';
89

@@ -28,40 +29,56 @@ class _DashboardPageState extends State<DashboardPage> {
2829
children: [
2930
Card(
3031
child: Padding(
31-
padding: const EdgeInsets.all(8.0),
32-
child: ConstrainedBox(
33-
constraints: const BoxConstraints(
34-
minHeight: 300,
35-
minWidth: 300,
36-
maxWidth: 600,
37-
maxHeight: 600),
38-
child: const ClockView(),
32+
padding: const EdgeInsets.all(16),
33+
child: Column(
34+
children: [
35+
ConstrainedBox(
36+
constraints: const BoxConstraints(
37+
minHeight: 300,
38+
minWidth: 300,
39+
maxWidth: 600,
40+
maxHeight: 600),
41+
child: const ClockView(),
42+
),
43+
const SizedBox(height: 16),
44+
Text(
45+
AppLocalizations.of(context).welcome,
46+
style: Theme.of(context).textTheme.headlineMedium,
47+
textAlign: TextAlign.center,
48+
),
49+
],
3950
),
4051
)),
4152
Card(
42-
child: Padding(
43-
padding: const EdgeInsets.all(16.0),
44-
child: Text(
45-
AppLocalizations.of(context).welcome,
46-
style: Theme.of(context).textTheme.titleLarge,
47-
textAlign: TextAlign.center,
53+
child: Padding(
54+
padding: const EdgeInsets.all(16),
55+
child: LayoutBuilder(
56+
builder: (context, constraints) {
57+
if (constraints.maxWidth >= LeapBreakpoints.medium) {
58+
return SizedBox(
59+
height: 250,
60+
child: Row(
61+
crossAxisAlignment: CrossAxisAlignment.stretch,
62+
spacing: 8,
63+
children: [
64+
Expanded(child: DashboardNotesView()),
65+
const VerticalDivider(),
66+
Expanded(child: DashboardEventsView()),
67+
],
68+
),
69+
);
70+
}
71+
return Column(
72+
mainAxisAlignment: MainAxisAlignment.spaceBetween,
73+
children: [
74+
DashboardNotesView(),
75+
const Divider(),
76+
DashboardEventsView(),
77+
],
78+
);
79+
},
80+
),
4881
),
49-
)),
50-
Wrap(
51-
alignment: WrapAlignment.center,
52-
children: [
53-
const DashboardNotesCard(),
54-
const DashboardEventsCard(),
55-
]
56-
.map((e) => ConstrainedBox(
57-
constraints: const BoxConstraints(maxWidth: 500),
58-
child: Card(
59-
child: Padding(
60-
padding: const EdgeInsets.all(16.0),
61-
child: e,
62-
)),
63-
))
64-
.toList(),
6582
),
6683
],
6784
),

app/lib/pages/settings/data.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import 'package:flutter/material.dart';
55
import 'package:flutter_bloc/flutter_bloc.dart';
66
import 'package:flow/src/generated/i18n/app_localizations.dart';
77
import 'package:material_leap/material_leap.dart';
8-
import 'package:package_info_plus/package_info_plus.dart';
98
import 'package:phosphor_flutter/phosphor_flutter.dart';
109

1110
import '../../cubits/settings.dart';

metadata/en-US/changelogs/10.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
* Unify settings dialog with other linwood apps
2+
* Improve dashboard design
23
* Use linking instead of creating inside details tab views
34
* Fix calendar fetching not working correctly ([#86](https://github.com/LinwoodDev/Flow/issues/86))
45
* Fix group list view not working correctly

0 commit comments

Comments
 (0)