Skip to content

Commit

Permalink
feat: Implement force Zune mode config
Browse files Browse the repository at this point in the history
  • Loading branch information
Losses committed Dec 11, 2024
1 parent d01d3e2 commit a1c23df
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 15 deletions.
17 changes: 3 additions & 14 deletions lib/screens/settings_home/large_screen_settings_home_list.dart
Original file line number Diff line number Diff line change
Expand Up @@ -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';
Expand All @@ -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() =>
Expand All @@ -37,23 +36,13 @@ class LargeScreenSettingsHomeListView extends StatefulWidget {

class LargeScreenSettingsHomeListViewState
extends State<LargeScreenSettingsHomeListView> {
bool? mysterious;

@override
void initState() {
super.initState();
Timer(
Duration(milliseconds: gridAnimationDelay),
() => widget.layoutManager.playAnimations(),
);

SettingsManager().getValue<bool>(mysteriousKey).then((x) {
if (!context.mounted) return;

setState(() {
mysterious = x;
});
});
}

@override
Expand Down Expand Up @@ -128,7 +117,7 @@ class LargeScreenSettingsHomeListViewState
},
direction: Axis.horizontal,
),
if (mysterious == true)
if (widget.mysterious == true)
StartGroup<
(
String Function(BuildContext),
Expand Down
32 changes: 31 additions & 1 deletion lib/screens/settings_home/settings_home.dart
Original file line number Diff line number Diff line change
@@ -1,13 +1,18 @@
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';
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';

Expand All @@ -21,6 +26,21 @@ class SettingsHomePage extends StatefulWidget {
class _SettingsHomePageState extends State<SettingsHomePage> {
final _layoutManager = StartScreenLayoutManager();

bool? mysterious;

@override
void initState() {
super.initState();

SettingsManager().getValue<bool>(mysteriousKey).then((x) {
if (!context.mounted) return;

setState(() {
mysterious = x;
});
});
}

@override
void dispose() {
super.dispose();
Expand Down Expand Up @@ -65,7 +85,16 @@ class _SettingsHomePageState extends State<SettingsHomePage> {

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,
);
Expand All @@ -74,6 +103,7 @@ class _SettingsHomePageState extends State<SettingsHomePage> {
return LargeScreenSettingsHomeListView(
layoutManager: _layoutManager,
topPadding: !isDock,
mysterious: mysterious,
);
},
);
Expand Down

0 comments on commit a1c23df

Please sign in to comment.