mirror of
https://github.com/revanced/revanced-manager.git
synced 2025-06-12 12:47:37 +02:00
fix: experimental/universal patches being used even when turned off (#1090)
Co-authored-by: Pun Butrach <pun.butrach@gmail.com>
This commit is contained in:
@ -1,7 +1,9 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_i18n/widgets/I18nText.dart';
|
||||
import 'package:revanced_manager/ui/views/patcher/patcher_viewmodel.dart';
|
||||
import 'package:revanced_manager/ui/views/patches_selector/patches_selector_viewmodel.dart';
|
||||
import 'package:revanced_manager/ui/views/settings/settings_viewmodel.dart';
|
||||
import 'package:revanced_manager/utils/check_for_supported_patch.dart';
|
||||
|
||||
class SExperimentalPatches extends StatefulWidget {
|
||||
const SExperimentalPatches({super.key});
|
||||
@ -11,7 +13,8 @@ class SExperimentalPatches extends StatefulWidget {
|
||||
}
|
||||
|
||||
final _settingsViewModel = SettingsViewModel();
|
||||
final List<String> selectedUnsupportedPatches = [];
|
||||
final _patchesSelectorViewModel = PatchesSelectorViewModel();
|
||||
final _patcherViewModel = PatcherViewModel();
|
||||
|
||||
class _SExperimentalPatchesState extends State<SExperimentalPatches> {
|
||||
@override
|
||||
@ -35,12 +38,10 @@ class _SExperimentalPatchesState extends State<SExperimentalPatches> {
|
||||
_settingsViewModel.useExperimentalPatches(value);
|
||||
});
|
||||
if (!value) {
|
||||
for (final patch in selectedUnsupportedPatches) {
|
||||
PatchesSelectorViewModel()
|
||||
.selectedPatches
|
||||
.removeWhere((element) => patch == element.name);
|
||||
}
|
||||
selectedUnsupportedPatches.clear();
|
||||
_patcherViewModel.selectedPatches
|
||||
.removeWhere((patch) => !isPatchSupported(patch));
|
||||
_patchesSelectorViewModel.selectedPatches
|
||||
.removeWhere((patch) => !isPatchSupported(patch));
|
||||
}
|
||||
},
|
||||
);
|
||||
|
@ -2,6 +2,9 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_i18n/widgets/I18nText.dart';
|
||||
import 'package:revanced_manager/ui/views/settings/settings_viewmodel.dart';
|
||||
|
||||
import 'package:revanced_manager/ui/views/patcher/patcher_viewmodel.dart';
|
||||
import 'package:revanced_manager/ui/views/patches_selector/patches_selector_viewmodel.dart';
|
||||
|
||||
class SExperimentalUniversalPatches extends StatefulWidget {
|
||||
const SExperimentalUniversalPatches({super.key});
|
||||
|
||||
@ -11,6 +14,8 @@ class SExperimentalUniversalPatches extends StatefulWidget {
|
||||
}
|
||||
|
||||
final _settingsViewModel = SettingsViewModel();
|
||||
final _patchesSelectorViewModel = PatchesSelectorViewModel();
|
||||
final _patcherViewModel = PatcherViewModel();
|
||||
|
||||
class _SExperimentalUniversalPatchesState
|
||||
extends State<SExperimentalUniversalPatches> {
|
||||
@ -34,6 +39,12 @@ class _SExperimentalUniversalPatchesState
|
||||
setState(() {
|
||||
_settingsViewModel.showUniversalPatches(value);
|
||||
});
|
||||
if (!value) {
|
||||
_patcherViewModel.selectedPatches
|
||||
.removeWhere((patch) => patch.compatiblePackages.isEmpty);
|
||||
_patchesSelectorViewModel.selectedPatches
|
||||
.removeWhere((patch) => patch.compatiblePackages.isEmpty);
|
||||
}
|
||||
},
|
||||
);
|
||||
}
|
||||
|
Reference in New Issue
Block a user