diff options
Diffstat (limited to 'app/src/main/java/dev/msfjarvis/aps/Application.kt')
| -rw-r--r-- | app/src/main/java/dev/msfjarvis/aps/Application.kt | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/app/src/main/java/dev/msfjarvis/aps/Application.kt b/app/src/main/java/dev/msfjarvis/aps/Application.kt deleted file mode 100644 index 6aa6e53b..00000000 --- a/app/src/main/java/dev/msfjarvis/aps/Application.kt +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright © 2014-2021 The Android Password Store Authors. All Rights Reserved. - * SPDX-License-Identifier: GPL-3.0-only - */ -package dev.msfjarvis.aps - -import android.content.SharedPreferences -import androidx.appcompat.app.AppCompatDelegate -import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_AUTO_BATTERY -import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM -import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_NO -import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_YES -import com.google.android.material.color.DynamicColors -import dagger.hilt.android.HiltAndroidApp -import dev.msfjarvis.aps.injection.context.FilesDirPath -import dev.msfjarvis.aps.injection.prefs.SettingsPreferences -import dev.msfjarvis.aps.util.extensions.getString -import dev.msfjarvis.aps.util.features.Feature -import dev.msfjarvis.aps.util.features.Features -import dev.msfjarvis.aps.util.git.sshj.setUpBouncyCastleForSshj -import dev.msfjarvis.aps.util.proxy.ProxyUtils -import dev.msfjarvis.aps.util.settings.GitSettings -import dev.msfjarvis.aps.util.settings.PreferenceKeys -import dev.msfjarvis.aps.util.settings.runMigrations -import io.sentry.Sentry -import io.sentry.protocol.User -import javax.inject.Inject -import logcat.AndroidLogcatLogger -import logcat.LogPriority.DEBUG -import logcat.LogcatLogger - -@Suppress("Unused") -@HiltAndroidApp -class Application : android.app.Application(), SharedPreferences.OnSharedPreferenceChangeListener { - - @Inject @SettingsPreferences lateinit var prefs: SharedPreferences - @Inject @FilesDirPath lateinit var filesDirPath: String - @Inject lateinit var proxyUtils: ProxyUtils - @Inject lateinit var gitSettings: GitSettings - @Inject lateinit var features: Features - - override fun onCreate() { - super.onCreate() - instance = this - if ( - BuildConfig.ENABLE_DEBUG_FEATURES || - prefs.getBoolean(PreferenceKeys.ENABLE_DEBUG_LOGGING, false) - ) { - LogcatLogger.install(AndroidLogcatLogger(DEBUG)) - } - prefs.registerOnSharedPreferenceChangeListener(this) - setNightMode() - setUpBouncyCastleForSshj() - runMigrations(filesDirPath, prefs, gitSettings) - proxyUtils.setDefaultProxy() - DynamicColors.applyToActivitiesIfAvailable(this) - Sentry.configureScope { scope -> - val user = User() - user.others = - Feature.VALUES.associate { feature -> - "features.${feature.configKey}" to features.isEnabled(feature).toString() - } - scope.user = user - } - } - - override fun onTerminate() { - prefs.unregisterOnSharedPreferenceChangeListener(this) - super.onTerminate() - } - - override fun onSharedPreferenceChanged(prefs: SharedPreferences, key: String) { - if (key == PreferenceKeys.APP_THEME) { - setNightMode() - } - } - - private fun setNightMode() { - AppCompatDelegate.setDefaultNightMode( - when (prefs.getString(PreferenceKeys.APP_THEME) ?: getString(R.string.app_theme_def)) { - "light" -> MODE_NIGHT_NO - "dark" -> MODE_NIGHT_YES - "follow_system" -> MODE_NIGHT_FOLLOW_SYSTEM - else -> MODE_NIGHT_AUTO_BATTERY - } - ) - } - - companion object { - - lateinit var instance: Application - } -} |
