diff --git a/lib/screens/settings_home/large_screen_settings_home_list.dart b/lib/screens/settings_home/large_screen_settings_home_list.dart index e84f70cd4..82bab118d 100644 --- a/lib/screens/settings_home/large_screen_settings_home_list.dart +++ b/lib/screens/settings_home/large_screen_settings_home_list.dart @@ -5,7 +5,6 @@ import 'package:fluent_ui/fluent_ui.dart'; import 'package:material_symbols_icons/material_symbols_icons.dart'; import '../../utils/l10n.dart'; -import '../../utils/settings_manager.dart'; import '../../utils/dialogs/register/show_register_dialog.dart'; import '../../config/animation.dart'; import '../../widgets/smooth_horizontal_scroll.dart'; @@ -18,17 +17,17 @@ import '../../widgets/navigation_bar/page_content_frame.dart'; import '../../screens/settings_home/constants/first_column.dart'; import '../../providers/license.dart'; -import '../settings_about/settings_about.dart'; - class LargeScreenSettingsHomeListView extends StatefulWidget { const LargeScreenSettingsHomeListView({ super.key, required this.layoutManager, required this.topPadding, + required this.mysterious, }); final StartScreenLayoutManager layoutManager; final bool topPadding; + final bool? mysterious; @override LargeScreenSettingsHomeListViewState createState() => @@ -37,8 +36,6 @@ class LargeScreenSettingsHomeListView extends StatefulWidget { class LargeScreenSettingsHomeListViewState extends State { - bool? mysterious; - @override void initState() { super.initState(); @@ -46,14 +43,6 @@ class LargeScreenSettingsHomeListViewState Duration(milliseconds: gridAnimationDelay), () => widget.layoutManager.playAnimations(), ); - - SettingsManager().getValue(mysteriousKey).then((x) { - if (!context.mounted) return; - - setState(() { - mysterious = x; - }); - }); } @override @@ -128,7 +117,7 @@ class LargeScreenSettingsHomeListViewState }, direction: Axis.horizontal, ), - if (mysterious == true) + if (widget.mysterious == true) StartGroup< ( String Function(BuildContext), diff --git a/lib/screens/settings_home/settings_home.dart b/lib/screens/settings_home/settings_home.dart index 1e93a780d..50371eb96 100644 --- a/lib/screens/settings_home/settings_home.dart +++ b/lib/screens/settings_home/settings_home.dart @@ -1,6 +1,9 @@ import 'package:provider/provider.dart'; import 'package:fluent_ui/fluent_ui.dart'; +import 'package:material_symbols_icons/symbols.dart'; +import '../../utils/l10n.dart'; +import '../../utils/settings_manager.dart'; import '../../widgets/belt_container.dart'; import '../../widgets/navigation_bar/page_content_frame.dart'; import '../../widgets/turntile/small_screen_feature_list.dart'; @@ -8,6 +11,8 @@ import '../../widgets/band_screen/band_screen_feature_list.dart'; import '../../widgets/start_screen/providers/start_screen_layout_manager.dart'; import '../../providers/responsive_providers.dart'; +import '../settings_about/settings_about.dart'; + import 'constants/first_column.dart'; import 'large_screen_settings_home_list.dart'; @@ -21,6 +26,21 @@ class SettingsHomePage extends StatefulWidget { class _SettingsHomePageState extends State { final _layoutManager = StartScreenLayoutManager(); + bool? mysterious; + + @override + void initState() { + super.initState(); + + SettingsManager().getValue(mysteriousKey).then((x) { + if (!context.mounted) return; + + setState(() { + mysterious = x; + }); + }); + } + @override void dispose() { super.dispose(); @@ -65,7 +85,16 @@ class _SettingsHomePageState extends State { if (activeBreakpoint == DeviceType.zune) { return SmallScreenFeatureListView( - items: firstColumn, + items: [ + ...firstColumn, + if (mysterious == true) + ( + (context) => S.of(context).laboratory, + '/settings/laboratory', + Symbols.interests, + false + ) + ], layoutManager: _layoutManager, topPadding: !isDock, ); @@ -74,6 +103,7 @@ class _SettingsHomePageState extends State { return LargeScreenSettingsHomeListView( layoutManager: _layoutManager, topPadding: !isDock, + mysterious: mysterious, ); }, );