setting to control modal barrier

This commit is contained in:
Fabian Freund
2026-03-11 15:54:18 +01:00
parent cdd7a3ffd5
commit c751c6fe15
9 changed files with 76 additions and 3 deletions
+17
View File
@@ -163,6 +163,11 @@ class _MainWidget extends HookConsumerWidget {
(value) => value.disableAnimations,
),
);
final showModalBarrier = ref.watch(
generalSettingsWithDefaultsProvider.select(
(value) => value.showModalBarrier,
),
);
useOnInitialization(() async {
await CountryCodes.init();
@@ -286,6 +291,12 @@ class _MainWidget extends HookConsumerWidget {
pageTransitionsTheme: disableAnimations
? _noAnimationPageTransitionsTheme
: null,
dialogTheme: DialogThemeData(
barrierColor: showModalBarrier ? null : Colors.transparent,
),
bottomSheetTheme: BottomSheetThemeData(
modalBarrierColor: showModalBarrier ? null : Colors.transparent,
),
extensions: const <ThemeExtension<dynamic>>[AppColors.light],
),
darkTheme: ThemeData(
@@ -294,6 +305,12 @@ class _MainWidget extends HookConsumerWidget {
pageTransitionsTheme: disableAnimations
? _noAnimationPageTransitionsTheme
: null,
dialogTheme: DialogThemeData(
barrierColor: showModalBarrier ? null : Colors.transparent,
),
bottomSheetTheme: BottomSheetThemeData(
modalBarrierColor: showModalBarrier ? null : Colors.transparent,
),
extensions: const <ThemeExtension<dynamic>>[AppColors.dark],
),
themeMode: themeMode,