tweaks + improvements

Signed-off-by: androidacy-user <opensource@androidacy.com>
pull/89/head
androidacy-user 2 years ago
parent 8af585e12e
commit bfc530fb7c

@ -28,6 +28,8 @@ import com.fox2code.foxcompat.app.internal.FoxProcessExt
import com.fox2code.foxcompat.view.FoxThemeWrapper import com.fox2code.foxcompat.view.FoxThemeWrapper
import com.fox2code.mmm.installer.InstallerInitializer import com.fox2code.mmm.installer.InstallerInitializer
import com.fox2code.mmm.installer.InstallerInitializer.Companion.peekMagiskVersion import com.fox2code.mmm.installer.InstallerInitializer.Companion.peekMagiskVersion
import com.fox2code.mmm.manager.LocalModuleInfo
import com.fox2code.mmm.repo.RepoModule
import com.fox2code.mmm.utils.TimberUtils.configTimber import com.fox2code.mmm.utils.TimberUtils.configTimber
import com.fox2code.mmm.utils.io.FileUtils import com.fox2code.mmm.utils.io.FileUtils
import com.fox2code.mmm.utils.io.GMSProviderInstaller.Companion.installIfNeeded import com.fox2code.mmm.utils.io.GMSProviderInstaller.Companion.installIfNeeded
@ -79,6 +81,9 @@ class MainApplication : FoxApplication(), Configuration.Provider {
private var makingNewKey = false private var makingNewKey = false
private var isCrashHandler = false private var isCrashHandler = false
var localModules: HashMap<String, LocalModuleInfo> = HashMap()
var repoModules: HashMap<String, RepoModule> = HashMap()
init { init {
check(!(INSTANCE != null && INSTANCE !== this)) { "Duplicate application instance!" } check(!(INSTANCE != null && INSTANCE !== this)) { "Duplicate application instance!" }
INSTANCE = this INSTANCE = this
@ -620,9 +625,9 @@ class MainApplication : FoxApplication(), Configuration.Provider {
get() = getSharedPreferences("mmm")!!.getBoolean("pref_dns_over_https", true) get() = getSharedPreferences("mmm")!!.getBoolean("pref_dns_over_https", true)
val isMonetEnabled: Boolean val isMonetEnabled: Boolean
get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.S && getSharedPreferences("mmm")!!.getBoolean( get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.S && getSharedPreferences("mmm")!!.getBoolean(
"pref_enable_monet", "pref_enable_monet",
true true
) )
val isBlurEnabled: Boolean val isBlurEnabled: Boolean
get() = getSharedPreferences("mmm")!!.getBoolean("pref_enable_blur", false) get() = getSharedPreferences("mmm")!!.getBoolean("pref_enable_blur", false)
@ -630,15 +635,15 @@ class MainApplication : FoxApplication(), Configuration.Provider {
val isDeveloper: Boolean val isDeveloper: Boolean
get() { get() {
return if (BuildConfig.DEBUG) true else getSharedPreferences("mmm")!!.getBoolean( return if (BuildConfig.DEBUG) true else getSharedPreferences("mmm")!!.getBoolean(
"developer", "developer",
false false
) )
} }
val isDisableLowQualityModuleFilter: Boolean val isDisableLowQualityModuleFilter: Boolean
get() = getSharedPreferences("mmm")!!.getBoolean( get() = getSharedPreferences("mmm")!!.getBoolean(
"pref_disable_low_quality_module_filter", "pref_disable_low_quality_module_filter",
false false
) && isDeveloper ) && isDeveloper
val isUsingMagiskCommand: Boolean val isUsingMagiskCommand: Boolean
get() = (peekMagiskVersion() >= Constants.MAGISK_VER_CODE_INSTALL_COMMAND) && getSharedPreferences( get() = (peekMagiskVersion() >= Constants.MAGISK_VER_CODE_INSTALL_COMMAND) && getSharedPreferences(
"mmm" "mmm"
@ -652,17 +657,17 @@ class MainApplication : FoxApplication(), Configuration.Provider {
} }
val wrapped = isWrapped val wrapped = isWrapped
val updateCheckBgTemp = !wrapped && getSharedPreferences("mmm")!!.getBoolean( val updateCheckBgTemp = !wrapped && getSharedPreferences("mmm")!!.getBoolean(
"pref_background_update_check", "pref_background_update_check",
true true
) )
updateCheckBg = updateCheckBgTemp.toString() updateCheckBg = updateCheckBgTemp.toString()
return java.lang.Boolean.parseBoolean(updateCheckBg) return java.lang.Boolean.parseBoolean(updateCheckBg)
} }
val isAndroidacyTestMode: Boolean val isAndroidacyTestMode: Boolean
get() = isDeveloper && getSharedPreferences("mmm")!!.getBoolean( get() = isDeveloper && getSharedPreferences("mmm")!!.getBoolean(
"pref_androidacy_test_mode", "pref_androidacy_test_mode",
false false
) )
fun setHasGottenRootAccess(bool: Boolean) { fun setHasGottenRootAccess(bool: Boolean) {
getSharedPreferences("mmm")!!.edit().putBoolean("has_root_access", bool).apply() getSharedPreferences("mmm")!!.edit().putBoolean("has_root_access", bool).apply()
@ -670,9 +675,9 @@ class MainApplication : FoxApplication(), Configuration.Provider {
val isCrashReportingEnabled: Boolean val isCrashReportingEnabled: Boolean
get() = SentryMain.IS_SENTRY_INSTALLED && getSharedPreferences("mmm")!!.getBoolean( get() = SentryMain.IS_SENTRY_INSTALLED && getSharedPreferences("mmm")!!.getBoolean(
"pref_crash_reporting", "pref_crash_reporting",
BuildConfig.DEFAULT_ENABLE_CRASH_REPORTING BuildConfig.DEFAULT_ENABLE_CRASH_REPORTING
) )
val bootSharedPreferences: SharedPreferences? val bootSharedPreferences: SharedPreferences?
get() = getSharedPreferences("mmm_boot") get() = getSharedPreferences("mmm_boot")
@ -689,9 +694,9 @@ class MainApplication : FoxApplication(), Configuration.Provider {
@JvmStatic @JvmStatic
fun isMatomoAllowed(): Boolean { fun isMatomoAllowed(): Boolean {
return getSharedPreferences("mmm")!!.getBoolean( return getSharedPreferences("mmm")!!.getBoolean(
"pref_analytics_enabled", "pref_analytics_enabled",
BuildConfig.DEFAULT_ENABLE_ANALYTICS BuildConfig.DEFAULT_ENABLE_ANALYTICS
) )
} }
} }
} }

@ -207,14 +207,14 @@ class ModuleManager private constructor() : SyncManager() {
var modules: HashMap<String, LocalModuleInfo> = HashMap() var modules: HashMap<String, LocalModuleInfo> = HashMap()
get() { get() {
Timber.d("getModules")
afterScan() afterScan()
return moduleInfos return moduleInfos
} }
set(value) { set(value) {
Timber.d("setModules") // add to MainApplication.INSTANCE!!.localModules hashmap
field = value field = value
moduleInfos = value moduleInfos = value
MainApplication.INSTANCE!!.localModules = value
} }
@Suppress("unused") @Suppress("unused")

@ -342,12 +342,12 @@ open class RepoData(url: String, cacheRoot: File) : XRepo() {
readProperties( readProperties(
moduleInfo, moduleInfo,
file.absolutePath, file.absolutePath,
repoModule.repoName + "/" + moduleInfo.name, "${repoModule.repoName}/${moduleInfo.name}",
false false
) )
moduleInfo.flags = moduleInfo.flags and ModuleInfo.FLAG_METADATA_INVALID.inv() moduleInfo.flags = moduleInfo.flags and ModuleInfo.FLAG_METADATA_INVALID.inv()
if (moduleInfo.version == null) { if (moduleInfo.version == null) {
moduleInfo.version = "v" + moduleInfo.versionCode moduleInfo.version = "v${moduleInfo.versionCode}"
} }
return true return true
} catch (ignored: Exception) { } catch (ignored: Exception) {

@ -97,6 +97,8 @@ class RepoUpdater(repoData2: RepoData) {
toUpdate = repoData.populate(JSONObject(String(indexRaw!!, StandardCharsets.UTF_8))) toUpdate = repoData.populate(JSONObject(String(indexRaw!!, StandardCharsets.UTF_8)))
// Since we reuse instances this should work // Since we reuse instances this should work
toApply = HashSet(repoData.moduleHashMap.values) toApply = HashSet(repoData.moduleHashMap.values)
// add toApply to the hashmap MainApplication.INSTANCE!!.repoModules
MainApplication.INSTANCE!!.repoModules.putAll(repoData.moduleHashMap)
(toUpdate as MutableList<RepoModule>?)?.let { (toUpdate as MutableList<RepoModule>?)?.let {
(toApply as HashSet<RepoModule>).removeAll( (toApply as HashSet<RepoModule>).removeAll(
it.toSet() it.toSet()

Loading…
Cancel
Save