File tree Expand file tree Collapse file tree
download_manager/services Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -28,6 +28,12 @@ class General {
2828
2929 set enabledPreloadMods (bool value) => box.put ('enabledPreloadMods' , value);
3030
31+ bool get incrementalDownloadsEnabled =>
32+ box.get ('incrementalDownloadsEnabled' , defaultValue: true ) as bool ;
33+
34+ set incrementalDownloadsEnabled (bool value) =>
35+ box.put ('incrementalDownloadsEnabled' , value);
36+
3137 String ? get currentVersion => box.get ('currentVersion' ) as String ? ;
3238
3339 set currentVersion (String ? value) => box.put ('currentVersion' , value);
Original file line number Diff line number Diff line change @@ -196,8 +196,12 @@ class DownloadOrchestrator with ChangeNotifier {
196196 return false ;
197197 }
198198
199- final updater = IncrementalUpdater ();
200- if (resolved.filename.endsWith ('.zip' )) {
199+ final isZipFile = extension (resolved.filename) == '.zip' ;
200+ final useIncrementalUpdate =
201+ Preferences .general.incrementalDownloadsEnabled;
202+
203+ if (useIncrementalUpdate && isZipFile) {
204+ final updater = IncrementalUpdater ();
201205 final isEligible = await updater.checkEligibility (resolved.url);
202206 if (isEligible) {
203207 _logger.info ('Using incremental update for ${request .displayName }' );
Original file line number Diff line number Diff line change @@ -17,7 +17,7 @@ class ModSupport extends StatelessWidget {
1717 const SettingsHeader (title: 'MODS' ),
1818 HiveListener (
1919 box: box,
20- keys: ['enabledPreloadMods' ],
20+ keys: ['enabledPreloadMods' , 'incrementalDownloadsEnabled' ],
2121 builder: (_) => KyberTable (
2222 items: [
2323 KyberTableItem .button (
@@ -43,6 +43,13 @@ class ModSupport extends StatelessWidget {
4343 Preferences .general.enabledPreloadMods = value;
4444 },
4545 ),
46+ KyberTableItem .switchButton (
47+ title: 'Incremental Mod Downloads' ,
48+ value: Preferences .general.incrementalDownloadsEnabled,
49+ onChange: (bool value) {
50+ Preferences .general.incrementalDownloadsEnabled = value;
51+ },
52+ ),
4653 ],
4754 ),
4855 ),
You can’t perform that action at this time.
0 commit comments