mirror of
https://github.com/ImranR98/Obtainium.git
synced 2025-08-13 10:28:10 +02:00
Bugfix in version detection toggles
This commit is contained in:
@@ -28,8 +28,18 @@ class _AppPageState extends State<AppPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
var appsProvider = context.watch<AppsProvider>();
|
var appsProvider = context.watch<AppsProvider>();
|
||||||
var settingsProvider = context.watch<SettingsProvider>();
|
var settingsProvider = context.watch<SettingsProvider>();
|
||||||
getUpdate(String id) {
|
getUpdate(String id, {bool resetVersion = false}) {
|
||||||
appsProvider.checkUpdate(id).catchError((e) {
|
appsProvider.checkUpdate(id).then((e) {
|
||||||
|
if (resetVersion) {
|
||||||
|
appsProvider.apps[id]?.app.additionalSettings['versionDetection'] =
|
||||||
|
true;
|
||||||
|
if (appsProvider.apps[id]?.app.installedVersion != null) {
|
||||||
|
appsProvider.apps[id]?.app.installedVersion =
|
||||||
|
appsProvider.apps[id]?.app.latestVersion;
|
||||||
|
}
|
||||||
|
appsProvider.saveApps([appsProvider.apps[id]!.app]);
|
||||||
|
}
|
||||||
|
}).catchError((e) {
|
||||||
showError(e, context);
|
showError(e, context);
|
||||||
return null;
|
return null;
|
||||||
});
|
});
|
||||||
@@ -296,24 +306,34 @@ class _AppPageState extends State<AppPage> {
|
|||||||
// ignore: use_build_context_synchronously
|
// ignore: use_build_context_synchronously
|
||||||
showMessage(tr('appsFromSourceAreTrackOnly'), context);
|
showMessage(tr('appsFromSourceAreTrackOnly'), context);
|
||||||
}
|
}
|
||||||
if (app.app.additionalSettings['releaseDateAsVersion'] == true) {
|
var versionDetectionEnabled =
|
||||||
if (originalSettings['releaseDateAsVersion'] != true) {
|
app.app.additionalSettings['versionDetection'] == true &&
|
||||||
if (app.app.releaseDate != null) {
|
originalSettings['versionDetection'] != true;
|
||||||
bool isUpdated =
|
var releaseDateVersionEnabled =
|
||||||
app.app.installedVersion == app.app.latestVersion;
|
app.app.additionalSettings['releaseDateAsVersion'] == true &&
|
||||||
app.app.latestVersion =
|
originalSettings['releaseDateAsVersion'] != true;
|
||||||
app.app.releaseDate!.microsecondsSinceEpoch.toString();
|
var releaseDateVersionDisabled =
|
||||||
if (isUpdated) {
|
app.app.additionalSettings['releaseDateAsVersion'] != true &&
|
||||||
app.app.installedVersion = app.app.latestVersion;
|
originalSettings['releaseDateAsVersion'] == true;
|
||||||
}
|
if (releaseDateVersionEnabled) {
|
||||||
|
if (app.app.releaseDate != null) {
|
||||||
|
bool isUpdated = app.app.installedVersion == app.app.latestVersion;
|
||||||
|
app.app.latestVersion =
|
||||||
|
app.app.releaseDate!.microsecondsSinceEpoch.toString();
|
||||||
|
if (isUpdated) {
|
||||||
|
app.app.installedVersion = app.app.latestVersion;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (originalSettings['releaseDateAsVersion'] == true) {
|
} else if (releaseDateVersionDisabled) {
|
||||||
app.app.installedVersion =
|
app.app.installedVersion =
|
||||||
app.installedInfo?.versionName ?? app.app.installedVersion;
|
app.installedInfo?.versionName ?? app.app.installedVersion;
|
||||||
}
|
}
|
||||||
|
if (versionDetectionEnabled) {
|
||||||
|
app.app.additionalSettings['versionDetection'] = true;
|
||||||
|
app.app.additionalSettings['releaseDateAsVersion'] = false;
|
||||||
|
}
|
||||||
appsProvider.saveApps([app.app]).then((value) {
|
appsProvider.saveApps([app.app]).then((value) {
|
||||||
getUpdate(app.app.id);
|
getUpdate(app.app.id, resetVersion: versionDetectionEnabled);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user