diff options
| author | Harsh Shandilya <me@msfjarvis.dev> | 2022-01-09 17:50:22 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-01-09 17:50:22 +0530 |
| commit | 35155e55841bc87b2c0e0dc577e1433041b44bc5 (patch) | |
| tree | c9cf58da55e5876b4fe5676a415b9299881e83ef /app/src/main/java/dev/msfjarvis/aps/ui/autofill | |
| parent | 1738879fb3ba1b2c2d0ca7933c861bf99ae32535 (diff) | |
| download | HardenedPass-35155e55841bc87b2c0e0dc577e1433041b44bc5.tar.gz HardenedPass-35155e55841bc87b2c0e0dc577e1433041b44bc5.zip | |
Make PGPainless backend feature flag runtime configurable (#1654)
* Make feature flags runtime configurable
* Add a settings entry for PGPainless feature flag
* Add changelog entry
Diffstat (limited to 'app/src/main/java/dev/msfjarvis/aps/ui/autofill')
| -rw-r--r-- | app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt | 9 | ||||
| -rw-r--r-- | app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillSaveActivity.kt | 11 |
2 files changed, 16 insertions, 4 deletions
diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt index bb6d1056..55f3fc11 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt @@ -25,23 +25,27 @@ import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.lifecycleScope import androidx.recyclerview.widget.LinearLayoutManager import com.github.androidpasswordstore.autofillparser.FormOrigin +import dagger.hilt.android.AndroidEntryPoint import dev.msfjarvis.aps.R import dev.msfjarvis.aps.data.password.PasswordItem import dev.msfjarvis.aps.databinding.ActivityOreoAutofillFilterBinding -import dev.msfjarvis.aps.util.FeatureFlags import dev.msfjarvis.aps.util.autofill.AutofillMatcher import dev.msfjarvis.aps.util.autofill.AutofillPreferences import dev.msfjarvis.aps.util.autofill.DirectoryStructure import dev.msfjarvis.aps.util.extensions.viewBinding +import dev.msfjarvis.aps.util.features.Feature +import dev.msfjarvis.aps.util.features.Features import dev.msfjarvis.aps.util.viewmodel.FilterMode import dev.msfjarvis.aps.util.viewmodel.ListMode import dev.msfjarvis.aps.util.viewmodel.SearchMode import dev.msfjarvis.aps.util.viewmodel.SearchableRepositoryAdapter import dev.msfjarvis.aps.util.viewmodel.SearchableRepositoryViewModel +import javax.inject.Inject import logcat.LogPriority.ERROR import logcat.logcat @TargetApi(Build.VERSION_CODES.O) +@AndroidEntryPoint class AutofillFilterView : AppCompatActivity() { companion object { @@ -76,6 +80,7 @@ class AutofillFilterView : AppCompatActivity() { } } + @Inject lateinit var features: Features private lateinit var formOrigin: FormOrigin private lateinit var directoryStructure: DirectoryStructure private val binding by viewBinding(ActivityOreoAutofillFilterBinding::inflate) @@ -222,7 +227,7 @@ class AutofillFilterView : AppCompatActivity() { AutofillMatcher.addMatchFor(applicationContext, formOrigin, item.file) // intent?.extras? is checked to be non-null in onCreate decryptAction.launch( - if (FeatureFlags.ENABLE_PGP_V2_BACKEND) { + if (features.isEnabled(Feature.EnablePGPainlessBackend)) { AutofillDecryptActivityV2.makeDecryptFileIntent(item.file, intent!!.extras!!, this) } else { AutofillDecryptActivity.makeDecryptFileIntent(item.file, intent!!.extras!!, this) diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillSaveActivity.kt b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillSaveActivity.kt index 49b14ea4..f79ad6a8 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillSaveActivity.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillSaveActivity.kt @@ -18,19 +18,23 @@ import androidx.core.os.bundleOf import com.github.androidpasswordstore.autofillparser.AutofillAction import com.github.androidpasswordstore.autofillparser.Credentials import com.github.androidpasswordstore.autofillparser.FormOrigin +import dagger.hilt.android.AndroidEntryPoint import dev.msfjarvis.aps.data.repo.PasswordRepository import dev.msfjarvis.aps.ui.crypto.PasswordCreationActivity import dev.msfjarvis.aps.ui.crypto.PasswordCreationActivityV2 -import dev.msfjarvis.aps.util.FeatureFlags import dev.msfjarvis.aps.util.autofill.AutofillMatcher import dev.msfjarvis.aps.util.autofill.AutofillPreferences import dev.msfjarvis.aps.util.autofill.AutofillResponseBuilder import dev.msfjarvis.aps.util.extensions.unsafeLazy +import dev.msfjarvis.aps.util.features.Feature +import dev.msfjarvis.aps.util.features.Features import java.io.File +import javax.inject.Inject import logcat.LogPriority.ERROR import logcat.logcat @RequiresApi(Build.VERSION_CODES.O) +@AndroidEntryPoint class AutofillSaveActivity : AppCompatActivity() { companion object { @@ -105,11 +109,14 @@ class AutofillSaveActivity : AppCompatActivity() { } } + @Inject lateinit var features: Features + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) val repo = PasswordRepository.getRepositoryDirectory() val creationActivity = - if (FeatureFlags.ENABLE_PGP_V2_BACKEND) PasswordCreationActivityV2::class.java + if (features.isEnabled(Feature.EnablePGPainlessBackend)) + PasswordCreationActivityV2::class.java else PasswordCreationActivity::class.java val saveIntent = Intent(this, creationActivity).apply { |
