Skip to content

Commit

Permalink
fix: Add back button on app bars of secondary views
Browse files Browse the repository at this point in the history
  • Loading branch information
ponces committed Sep 19, 2022
1 parent 3e6e94c commit 2a2bb82
Show file tree
Hide file tree
Showing 6 changed files with 64 additions and 13 deletions.
25 changes: 21 additions & 4 deletions lib/ui/views/app_selector/app_selector_view.dart
Original file line number Diff line number Diff line change
Expand Up @@ -37,12 +37,29 @@ class _AppSelectorViewState extends State<AppSelectorView> {
pinned: true,
floating: true,
snap: false,
title: I18nText('appSelectorView.viewTitle'),
title: I18nText(
'appSelectorView.viewTitle',
child: Text(
'',
style: TextStyle(
color: Theme.of(context).textTheme.headline6!.color,
),
),
),
leading: IconButton(
icon: Icon(
Icons.arrow_back,
color: Theme.of(context).textTheme.headline6!.color,
),
onPressed: () => Navigator.of(context).pop(),
),
bottom: PreferredSize(
preferredSize: const Size.fromHeight(64.0),
child: Padding(
padding: const EdgeInsets.symmetric(
vertical: 8.0, horizontal: 12.0),
vertical: 8.0,
horizontal: 12.0,
),
child: SearchBar(
showSelectIcon: false,
hintText: FlutterI18n.translate(
Expand All @@ -66,8 +83,8 @@ class _AppSelectorViewState extends State<AppSelectorView> {
: model.apps.isEmpty
? const AppSkeletonLoader()
: Padding(
padding: const EdgeInsets.only(bottom: 80).add(
const EdgeInsets.symmetric(horizontal: 12.0)),
padding: const EdgeInsets.symmetric(horizontal: 12.0)
.copyWith(bottom: 80),
child: Column(
children: model
.getFilteredApps(_query)
Expand Down
1 change: 1 addition & 0 deletions lib/ui/views/home/home_view.dart
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ class HomeView extends StatelessWidget {
child: CustomScrollView(
slivers: <Widget>[
CustomSliverAppBar(
isMainView: true,
title: I18nText(
'homeView.widgetTitle',
child: Text(
Expand Down
1 change: 1 addition & 0 deletions lib/ui/views/patcher/patcher_view.dart
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ class PatcherView extends StatelessWidget {
body: CustomScrollView(
slivers: <Widget>[
CustomSliverAppBar(
isMainView: true,
title: I18nText(
'patcherView.widgetTitle',
child: Text(
Expand Down
25 changes: 21 additions & 4 deletions lib/ui/views/patches_selector/patches_selector_view.dart
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,29 @@ class _PatchesSelectorViewState extends State<PatchesSelectorView> {
pinned: true,
floating: true,
snap: false,
title: I18nText('patchesSelectorView.viewTitle'),
title: I18nText(
'patchesSelectorView.viewTitle',
child: Text(
'',
style: TextStyle(
color: Theme.of(context).textTheme.headline6!.color,
),
),
),
leading: IconButton(
icon: Icon(
Icons.arrow_back,
color: Theme.of(context).textTheme.headline6!.color,
),
onPressed: () => Navigator.of(context).pop(),
),
bottom: PreferredSize(
preferredSize: const Size.fromHeight(64.0),
child: Padding(
padding: const EdgeInsets.symmetric(
vertical: 8.0, horizontal: 12.0),
vertical: 8.0,
horizontal: 12.0,
),
child: SearchBar(
showSelectIcon: true,
hintText: FlutterI18n.translate(
Expand Down Expand Up @@ -76,8 +93,8 @@ class _PatchesSelectorViewState extends State<PatchesSelectorView> {
),
)
: Padding(
padding: const EdgeInsets.only(bottom: 80)
.add(const EdgeInsets.symmetric(horizontal: 12.0)),
padding: const EdgeInsets.symmetric(horizontal: 12.0)
.copyWith(bottom: 80),
child: Column(
children: model
.getQueriedPatches(_query)
Expand Down
1 change: 1 addition & 0 deletions lib/ui/views/settings/settings_view.dart
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ class SettingsView extends StatelessWidget {
body: CustomScrollView(
slivers: <Widget>[
CustomSliverAppBar(
isMainView: true,
title: I18nText(
'settingsView.widgetTitle',
child: Text(
Expand Down
24 changes: 19 additions & 5 deletions lib/ui/widgets/shared/custom_sliver_app_bar.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,14 @@ class CustomSliverAppBar extends StatelessWidget {
final Widget title;
final List<Widget>? actions;
final PreferredSizeWidget? bottom;
final bool isMainView;

const CustomSliverAppBar({
Key? key,
required this.title,
this.actions,
this.bottom,
this.isMainView = false,
}) : super(key: key);

@override
Expand All @@ -19,16 +21,28 @@ class CustomSliverAppBar extends StatelessWidget {
snap: false,
floating: false,
expandedHeight: 100.0,
automaticallyImplyLeading: false,
automaticallyImplyLeading: !isMainView,
flexibleSpace: FlexibleSpaceBar(
titlePadding: EdgeInsets.only(
bottom: 14.0,
left: isMainView ? 20.0 : 55.0,
),
title: title,
),
leading: isMainView
? null
: IconButton(
icon: Icon(
Icons.arrow_back,
color: Theme.of(context).textTheme.headline6!.color,
),
onPressed: () => Navigator.of(context).pop(),
),
backgroundColor: MaterialStateColor.resolveWith(
(states) => states.contains(MaterialState.scrolledUnder)
? Theme.of(context).colorScheme.surface
: Theme.of(context).canvasColor,
),
flexibleSpace: FlexibleSpaceBar(
titlePadding: const EdgeInsets.only(bottom: 16.0, left: 20.0),
title: title,
),
actions: actions,
bottom: bottom,
);
Expand Down

0 comments on commit 2a2bb82

Please sign in to comment.