showInfoDialog function
Future<bool?>
showInfoDialog(
- BuildContext context, {
- required String title,
- required String okText,
- Widget? icon,
- String? details,
- StreamChatThemeData? theme,
Shows info dialog
Implementation
Future<bool?> showInfoDialog(
BuildContext context, {
required String title,
required String okText,
Widget? icon,
String? details,
StreamChatThemeData? theme,
}) {
final chatThemeData = StreamChatTheme.of(context);
return showModalBottomSheet(
useRootNavigator: false,
backgroundColor:
theme?.colorTheme.barsBg ?? chatThemeData.colorTheme.barsBg,
context: context,
shape: const RoundedRectangleBorder(
borderRadius: BorderRadius.only(
topLeft: Radius.circular(16),
topRight: Radius.circular(16),
),
),
builder: (context) => SafeArea(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
const SizedBox(
height: 26,
),
if (icon != null) icon,
const SizedBox(
height: 26,
),
Text(
title,
style: theme?.textTheme.headlineBold ??
chatThemeData.textTheme.headlineBold,
),
const SizedBox(
height: 7,
),
if (details != null) Text(details),
const SizedBox(
height: 36,
),
Container(
color: theme?.colorTheme.textHighEmphasis.withOpacity(0.08) ??
chatThemeData.colorTheme.textHighEmphasis.withOpacity(0.08),
height: 1,
),
Center(
child: TextButton(
onPressed: () {
Navigator.of(context).pop();
},
child: Text(
okText,
style: TextStyle(
color: theme?.colorTheme.textHighEmphasis.withOpacity(0.5) ??
chatThemeData.colorTheme.accentPrimary,
fontWeight: FontWeight.w400,
),
),
),
),
],
),
),
);
}