Added option to open FileViewer always with system dialog, enabled by default on iOS

This commit is contained in:
2023-08-11 21:25:04 +02:00
parent bdb29029c9
commit d6ebc43e5c
8 changed files with 83 additions and 32 deletions

View File

@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:json_annotation/json_annotation.dart';
import '../file/fileSettings.dart';
import '../fileView/fileViewSettings.dart';
import '../gradeAverages/gradeAveragesSettings.dart';
import '../holidays/holidaysSettings.dart';
import '../talk/talkSettings.dart';
@ -23,6 +24,7 @@ class Settings {
TalkSettings talkSettings;
FileSettings fileSettings;
HolidaysSettings holidaysSettings;
FileViewSettings fileViewSettings;
Settings({
required this.appTheme,
@ -32,6 +34,7 @@ class Settings {
required this.talkSettings,
required this.fileSettings,
required this.holidaysSettings,
required this.fileViewSettings,
});
static String _themeToJson(ThemeMode m) => m.name;

View File

@ -19,6 +19,8 @@ Settings _$SettingsFromJson(Map<String, dynamic> json) => Settings(
FileSettings.fromJson(json['fileSettings'] as Map<String, dynamic>),
holidaysSettings: HolidaysSettings.fromJson(
json['holidaysSettings'] as Map<String, dynamic>),
fileViewSettings: FileViewSettings.fromJson(
json['fileViewSettings'] as Map<String, dynamic>),
);
Map<String, dynamic> _$SettingsToJson(Settings instance) => <String, dynamic>{
@ -29,4 +31,5 @@ Map<String, dynamic> _$SettingsToJson(Settings instance) => <String, dynamic>{
'talkSettings': instance.talkSettings.toJson(),
'fileSettings': instance.fileSettings.toJson(),
'holidaysSettings': instance.holidaysSettings.toJson(),
'fileViewSettings': instance.fileViewSettings.toJson(),
};

View File

@ -1,6 +1,8 @@
import 'dart:convert';
import 'dart:developer';
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:marianum_mobile/storage/fileView/fileViewSettings.dart';
import 'package:shared_preferences/shared_preferences.dart';
import '../../view/pages/files/files.dart';
@ -100,6 +102,9 @@ class SettingsProvider extends ChangeNotifier {
dismissedDisclaimer: false,
showPastEvents: false,
),
fileViewSettings: FileViewSettings(
alwaysOpenExternally: Platform.isIOS,
),
);
}
}