added color and blur to BottomActionBarWidget

This commit is contained in:
ashilkn 2022-11-29 20:21:38 +05:30
parent 9b0693de44
commit 392b548622

View file

@ -1,6 +1,9 @@
import 'dart:ui';
import 'package:expandable/expandable.dart'; import 'package:expandable/expandable.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:photos/models/selected_files.dart'; import 'package:photos/models/selected_files.dart';
import 'package:photos/theme/effects.dart';
import 'package:photos/theme/ente_theme.dart'; import 'package:photos/theme/ente_theme.dart';
import 'package:photos/ui/components/bottom_action_bar/action_bar_widget.dart'; import 'package:photos/ui/components/bottom_action_bar/action_bar_widget.dart';
import 'package:photos/ui/components/icon_button_widget.dart'; import 'package:photos/ui/components/icon_button_widget.dart';
@ -26,7 +29,7 @@ class BottomActionBarWidget extends StatefulWidget {
} }
class _BottomActionBarWidgetState extends State<BottomActionBarWidget> { class _BottomActionBarWidgetState extends State<BottomActionBarWidget> {
late bool _showBottomActionBar; late bool _showBottomActionBar; //need to use this
final ExpandableController _expandableController = final ExpandableController _expandableController =
ExpandableController(initialExpanded: false); ExpandableController(initialExpanded: false);
@override @override
@ -47,58 +50,63 @@ class _BottomActionBarWidgetState extends State<BottomActionBarWidget> {
final colorScheme = getEnteColorScheme(context); final colorScheme = getEnteColorScheme(context);
final textTheme = getEnteTextTheme(context); final textTheme = getEnteTextTheme(context);
//todo : restrict width of column //todo : restrict width of column
return Container( return ClipRRect(
color: Colors.white, child: BackdropFilter(
padding: EdgeInsets.only( filter: ImageFilter.blur(sigmaX: blurBase, sigmaY: blurBase),
top: 4, child: Container(
bottom: !_expandableController.expanded && color: colorScheme.backdropBase,
((widget.selectedFiles?.files.isNotEmpty) ?? false) padding: EdgeInsets.only(
? 24 top: 4,
: 36, bottom: !_expandableController.expanded &&
), ((widget.selectedFiles?.files.isNotEmpty) ?? false)
child: Column( ? 24
mainAxisSize: MainAxisSize.min, : 36,
children: [
ExpandableNotifier(
controller: _expandableController,
child: ExpandablePanel(
theme: getExpandableTheme(context),
header: Padding(
padding: EdgeInsets.symmetric(
horizontal: widget.text == null ? 12 : 0,
),
child: ActionBarWidget(
text: widget.text,
iconButtons: _iconButtons(),
),
),
expanded: widget.expandedMenu,
collapsed: const SizedBox.shrink(),
controller: _expandableController,
),
), ),
GestureDetector( child: Column(
onTap: () { mainAxisSize: MainAxisSize.min,
//unselect all files here children: [
//or collapse the expansion panel ExpandableNotifier(
_expandableController.value = false; controller: _expandableController,
}, child: ExpandablePanel(
child: Container( theme: getExpandableTheme(context),
width: double.infinity, header: Padding(
padding: const EdgeInsets.symmetric( padding: EdgeInsets.symmetric(
horizontal: 16, horizontal: widget.text == null ? 12 : 0,
vertical: 14, ),
), child: ActionBarWidget(
child: Center( text: widget.text,
child: Text( iconButtons: _iconButtons(),
"Cancel", ),
style: textTheme.bodyBold ),
.copyWith(color: colorScheme.blurTextBase), expanded: widget.expandedMenu,
collapsed: const SizedBox.shrink(),
controller: _expandableController,
), ),
), ),
), GestureDetector(
) onTap: () {
], //unselect all files here
//or collapse the expansion panel
_expandableController.value = false;
},
child: Container(
width: double.infinity,
padding: const EdgeInsets.symmetric(
horizontal: 16,
vertical: 14,
),
child: Center(
child: Text(
"Cancel",
style: textTheme.bodyBold
.copyWith(color: colorScheme.blurTextBase),
),
),
),
)
],
),
),
), ),
); );
} }