Fix changes to archive type properly tracked

This commit is contained in:
Hank Grabowski 2022-03-09 08:34:52 -05:00
parent 1deaebd94e
commit 096c4ce3db
2 changed files with 9 additions and 3 deletions

View file

@ -90,6 +90,8 @@ class DiasporaArchiveService implements ArchiveService {
_postEntries.addAll(newPosts); _postEntries.addAll(newPosts);
} }
} }
_postEntries.sort((p1,p2)=>p2.entry.creationTimestamp.compareTo(p1.entry.creationTimestamp));
} }
void _loadImages() { void _loadImages() {

View file

@ -31,6 +31,7 @@ class _SettingsViewState extends State<SettingsView> {
VideoPlayerSettingType _videoPlayerTypeOption = VideoPlayerSettingType.custom; VideoPlayerSettingType _videoPlayerTypeOption = VideoPlayerSettingType.custom;
bool _validRootFolder = false; bool _validRootFolder = false;
bool _differentSettingValues = false; bool _differentSettingValues = false;
ArchiveType _archiveType = ArchiveType.unknown;
Level _logLevel = Level.SEVERE; Level _logLevel = Level.SEVERE;
@override @override
@ -159,10 +160,9 @@ class _SettingsViewState extends State<SettingsView> {
style: Theme.of(context).textTheme.bodyText1), style: Theme.of(context).textTheme.bodyText1),
const SizedBox(width: 10), const SizedBox(width: 10),
DropdownButton<ArchiveType>( DropdownButton<ArchiveType>(
value: widget._settingsController.archiveType, value: _archiveType,
onChanged: (newArchiveType) async { onChanged: (newArchiveType) async {
await widget._settingsController _archiveType = newArchiveType!;
.updateArchiveType(newArchiveType!);
setState(() {}); setState(() {});
}, },
items: ArchiveType.values items: ArchiveType.values
@ -172,6 +172,7 @@ class _SettingsViewState extends State<SettingsView> {
)) ))
.toList(), .toList(),
), ),
const SizedBox(width: 15),
Expanded( Expanded(
child: TextField( child: TextField(
controller: _folderPathController, controller: _folderPathController,
@ -281,6 +282,7 @@ class _SettingsViewState extends State<SettingsView> {
.updateVideoPlayerCommand(_videoPlayerPathController.text); .updateVideoPlayerCommand(_videoPlayerPathController.text);
} }
await widget._settingsController.updateLogLevel(_logLevel); await widget._settingsController.updateLogLevel(_logLevel);
await widget._settingsController.updateArchiveType(_archiveType);
setState(() {}); setState(() {});
} }
@ -290,6 +292,7 @@ class _SettingsViewState extends State<SettingsView> {
_videoPlayerTypeOption = widget._settingsController.videoPlayerSettingType; _videoPlayerTypeOption = widget._settingsController.videoPlayerSettingType;
_videoPlayerPathController.text = _videoPlayerPathController.text =
widget._settingsController.videoPlayerCommand; widget._settingsController.videoPlayerCommand;
_archiveType = widget._settingsController.archiveType;
_logLevel = widget._settingsController.logLevel; _logLevel = widget._settingsController.logLevel;
} }
@ -304,6 +307,7 @@ class _SettingsViewState extends State<SettingsView> {
newValue |= (_videoPlayerPathController.text != newValue |= (_videoPlayerPathController.text !=
widget._settingsController.videoPlayerCommand); widget._settingsController.videoPlayerCommand);
newValue |= (_logLevel != widget._settingsController.logLevel); newValue |= (_logLevel != widget._settingsController.logLevel);
newValue |= (_archiveType != widget._settingsController.archiveType);
if (oldValue == newValue) return; if (oldValue == newValue) return;
setState(() { setState(() {
_differentSettingValues = newValue; _differentSettingValues = newValue;