2021-02-02 14:33:23 +00:00
|
|
|
import 'package:flutter/material.dart';
|
2021-11-29 23:44:22 +00:00
|
|
|
import 'package:flutter/services.dart';
|
2021-02-02 14:33:23 +00:00
|
|
|
|
2021-04-04 08:44:31 +00:00
|
|
|
import '../shared/app_colors.dart';
|
2021-02-02 14:33:23 +00:00
|
|
|
import '../widgets/about_iconbutton.dart';
|
|
|
|
|
|
|
|
class MyAppBar extends AppBar {
|
|
|
|
static final List<Widget> aboutEnabledWidgets = [AboutIconButton()];
|
|
|
|
static final List<Widget> aboutDisabledWidgets = [];
|
|
|
|
|
2022-06-22 22:42:37 +00:00
|
|
|
MyAppBar({Key? key, required Widget title, List<Widget>? actionWidgets, bool enableAbout = true})
|
2021-04-04 08:44:31 +00:00
|
|
|
: super(
|
|
|
|
key: key,
|
|
|
|
title: Row(children: <Widget>[title]),
|
|
|
|
actions: _renderIconButtons(actionWidgets, enableAbout),
|
2021-11-29 23:44:22 +00:00
|
|
|
systemOverlayStyle: SystemUiOverlayStyle(
|
|
|
|
systemNavigationBarColor: primaryAccentColor, // Navigation bar
|
|
|
|
statusBarColor: primaryAccentColor, // Status bar
|
|
|
|
),
|
2021-04-04 08:44:31 +00:00
|
|
|
backgroundColor: primaryAccentColor);
|
2021-02-02 14:33:23 +00:00
|
|
|
|
2022-06-22 22:42:37 +00:00
|
|
|
static List<Widget> _renderIconButtons(List<Widget>? actionWidgets, bool aboutEnabled) {
|
2021-02-02 14:33:23 +00:00
|
|
|
if (actionWidgets == null) {
|
|
|
|
actionWidgets = [];
|
|
|
|
}
|
|
|
|
|
|
|
|
List<Widget> widgets = [...actionWidgets];
|
|
|
|
|
|
|
|
if (aboutEnabled) {
|
|
|
|
widgets.add(AboutIconButton());
|
|
|
|
}
|
|
|
|
|
|
|
|
return widgets;
|
|
|
|
}
|
|
|
|
}
|