[app] Update module summary after fully uninstalling a module (#1457)

This commit is contained in:
Howard Wu 2021-11-29 22:16:19 +08:00 committed by GitHub
parent 62667a4e05
commit 08b813fded
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 18 deletions

View File

@ -102,10 +102,7 @@ public final class ModuleUtil {
enabledModules = new HashSet<>(Arrays.asList(ConfigManager.getEnabledModules())); enabledModules = new HashSet<>(Arrays.asList(ConfigManager.getEnabledModules()));
modulesLoaded = true; modulesLoaded = true;
listeners.forEach(ModuleListener::onModulesReloaded);
for (var listener : listeners) {
listener.onModulesReloaded();
}
} }
public InstalledModule reloadSingleModule(String packageName, int userId) { public InstalledModule reloadSingleModule(String packageName, int userId) {
@ -113,19 +110,17 @@ public final class ModuleUtil {
} }
public InstalledModule reloadSingleModule(String packageName, int userId, boolean packageFullyRemoved) { public InstalledModule reloadSingleModule(String packageName, int userId, boolean packageFullyRemoved) {
if (packageFullyRemoved && isModuleEnabled(packageName)) if (packageFullyRemoved && isModuleEnabled(packageName)) {
enabledModules.remove(packageName); enabledModules.remove(packageName);
listeners.forEach(ModuleListener::onModulesReloaded);
}
PackageInfo pkg; PackageInfo pkg;
try { try {
pkg = ConfigManager.getPackageInfo(packageName, PackageManager.GET_META_DATA, userId); pkg = ConfigManager.getPackageInfo(packageName, PackageManager.GET_META_DATA, userId);
} catch (NameNotFoundException e) { } catch (NameNotFoundException e) {
InstalledModule old = installedModules.remove(Pair.create(packageName, userId)); InstalledModule old = installedModules.remove(Pair.create(packageName, userId));
if (old != null) { if (old != null) listeners.forEach(i -> i.onSingleModuleReloaded(old));
for (ModuleListener listener : listeners) {
listener.onSingleModuleReloaded(old);
}
}
return null; return null;
} }
@ -133,17 +128,11 @@ public final class ModuleUtil {
if (app.metaData != null && app.metaData.containsKey("xposedminversion")) { if (app.metaData != null && app.metaData.containsKey("xposedminversion")) {
InstalledModule module = new InstalledModule(pkg); InstalledModule module = new InstalledModule(pkg);
installedModules.put(Pair.create(packageName, userId), module); installedModules.put(Pair.create(packageName, userId), module);
for (ModuleListener listener : listeners) { listeners.forEach(i -> i.onSingleModuleReloaded(module));
listener.onSingleModuleReloaded(module);
}
return module; return module;
} else { } else {
InstalledModule old = installedModules.remove(Pair.create(packageName, userId)); InstalledModule old = installedModules.remove(Pair.create(packageName, userId));
if (old != null) { if (old != null) listeners.forEach(i -> i.onSingleModuleReloaded(old));
for (ModuleListener listener : listeners) {
listener.onSingleModuleReloaded(old);
}
}
return null; return null;
} }
} }