This commit is contained in:
Scott E. Graves 2025-03-01 21:59:47 -06:00
parent b5aa5136e9
commit c817d432c0
2 changed files with 43 additions and 50 deletions

View File

@ -32,10 +32,14 @@ class MyApp extends StatelessWidget {
final mountConfig = settings.arguments as MountConfig; final mountConfig = settings.arguments as MountConfig;
return MaterialPageRoute( return MaterialPageRoute(
builder: (context) { builder: (context) {
return MountSettingsWidget( return Scaffold(
title: appBar: AppBar(
backgroundColor: Theme.of(context).colorScheme.inversePrimary,
title: Text(
'${initialCaps(mountConfig.type)} [${formatMountName(mountConfig.type, mountConfig.name)}] Settings', '${initialCaps(mountConfig.type)} [${formatMountName(mountConfig.type, mountConfig.name)}] Settings',
config: mountConfig, ),
),
body: MountSettingsWidget(config: mountConfig),
); );
}, },
); );

View File

@ -3,13 +3,8 @@ import 'package:repertory/types/mount_config.dart';
import 'package:settings_ui/settings_ui.dart'; import 'package:settings_ui/settings_ui.dart';
class MountSettingsWidget extends StatefulWidget { class MountSettingsWidget extends StatefulWidget {
final String title;
final MountConfig config; final MountConfig config;
const MountSettingsWidget({ const MountSettingsWidget({super.key, required this.config});
super.key,
required this.config,
required this.title,
});
@override @override
State<MountSettingsWidget> createState() => _MountSettingsWidgetState(); State<MountSettingsWidget> createState() => _MountSettingsWidgetState();
@ -388,47 +383,41 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
} }
}); });
return Scaffold( return SettingsList(
appBar: AppBar( shrinkWrap: false,
backgroundColor: Theme.of(context).colorScheme.inversePrimary, sections: [
title: Text(widget.title), if (encryptConfigSettings.isNotEmpty)
), SettingsSection(
body: SettingsList( title: const Text('Encrypt Config'),
shrinkWrap: false, tiles: encryptConfigSettings,
sections: [ ),
if (encryptConfigSettings.isNotEmpty) if (hostConfigSettings.isNotEmpty)
SettingsSection( SettingsSection(
title: const Text('Encrypt Config'), title: const Text('Host Config'),
tiles: encryptConfigSettings, tiles: hostConfigSettings,
), ),
if (hostConfigSettings.isNotEmpty) if (remoteConfigSettings.isNotEmpty)
SettingsSection( SettingsSection(
title: const Text('Host Config'), title: const Text('Remote Config'),
tiles: hostConfigSettings, tiles: remoteConfigSettings,
), ),
if (remoteConfigSettings.isNotEmpty) if (remoteMountSettings.isNotEmpty)
SettingsSection( SettingsSection(
title: const Text('Remote Config'), title: const Text('Remote Mount'),
tiles: remoteConfigSettings, tiles: remoteMountSettings,
), ),
if (remoteMountSettings.isNotEmpty) if (s3ConfigSettings.isNotEmpty)
SettingsSection( SettingsSection(
title: const Text('Remote Mount'), title: const Text('S3 Config'),
tiles: remoteMountSettings, tiles: s3ConfigSettings,
), ),
if (s3ConfigSettings.isNotEmpty) if (siaConfigSettings.isNotEmpty)
SettingsSection( SettingsSection(
title: const Text('S3 Config'), title: const Text('Sia Config'),
tiles: s3ConfigSettings, tiles: siaConfigSettings,
), ),
if (siaConfigSettings.isNotEmpty) SettingsSection(title: const Text('Settings'), tiles: commonSettings),
SettingsSection( ],
title: const Text('Sia Config'),
tiles: siaConfigSettings,
),
SettingsSection(title: const Text('Settings'), tiles: commonSettings),
],
),
); );
} }