design: Adjust design to new material 3 capabilities of Flutter 3.7
parent
d226bf6020
commit
b176811f7c
@ -1,51 +0,0 @@
|
|||||||
import 'package:flutter/material.dart';
|
|
||||||
|
|
||||||
import 'package:fluffychat/config/app_config.dart';
|
|
||||||
|
|
||||||
class M2PopupMenuButton<T> extends StatelessWidget {
|
|
||||||
final List<PopupMenuEntry<T>> Function(BuildContext) itemBuilder;
|
|
||||||
final T? initialValue;
|
|
||||||
final void Function(T)? onSelected;
|
|
||||||
final void Function()? onCanceled;
|
|
||||||
final Widget? icon;
|
|
||||||
final Color? color;
|
|
||||||
final Widget? child;
|
|
||||||
|
|
||||||
const M2PopupMenuButton({
|
|
||||||
Key? key,
|
|
||||||
required this.itemBuilder,
|
|
||||||
this.initialValue,
|
|
||||||
this.onSelected,
|
|
||||||
this.onCanceled,
|
|
||||||
this.icon,
|
|
||||||
this.color,
|
|
||||||
this.child,
|
|
||||||
}) : super(key: key);
|
|
||||||
|
|
||||||
@override
|
|
||||||
Widget build(BuildContext context) {
|
|
||||||
final theme = Theme.of(context);
|
|
||||||
return Theme(
|
|
||||||
data: theme.copyWith(
|
|
||||||
useMaterial3: false,
|
|
||||||
popupMenuTheme: PopupMenuThemeData(
|
|
||||||
color: theme.colorScheme.surface,
|
|
||||||
shape: RoundedRectangleBorder(
|
|
||||||
borderRadius: BorderRadius.circular(AppConfig.borderRadius),
|
|
||||||
),
|
|
||||||
elevation: theme.appBarTheme.scrolledUnderElevation,
|
|
||||||
textStyle: theme.textTheme.bodyLarge,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
child: PopupMenuButton<T>(
|
|
||||||
itemBuilder: itemBuilder,
|
|
||||||
initialValue: initialValue,
|
|
||||||
onSelected: onSelected,
|
|
||||||
onCanceled: onCanceled,
|
|
||||||
icon: icon,
|
|
||||||
color: color,
|
|
||||||
child: child,
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue