diff --git a/app/build.gradle b/app/build.gradle index d29e98a..c11fcb1 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,12 +26,13 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.2.0' + implementation "androidx.preference:preference-ktx:1.1.1" testImplementation 'junit:junit:4.12' androidTestImplementation('androidx.test.espresso:espresso-core:3.1.0', { exclude group: 'com.android.support', module: 'support-annotations' }) implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.1.0" + implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.0" implementation 'com.jaredrummler:colorpicker:1.1.0' // The xiph.org Vorbis encoding library is included as source, in src/main/java/org/xiph. // It was downloaded from https://xiph.org/downloads/ diff --git a/app/src/main/java/com/dozingcatsoftware/vectorcamera/MainActivity.kt b/app/src/main/java/com/dozingcatsoftware/vectorcamera/MainActivity.kt index 917bda5..39b0708 100644 --- a/app/src/main/java/com/dozingcatsoftware/vectorcamera/MainActivity.kt +++ b/app/src/main/java/com/dozingcatsoftware/vectorcamera/MainActivity.kt @@ -5,12 +5,12 @@ import android.content.Intent import android.content.res.Configuration import android.os.Bundle import android.os.Handler -import android.preference.PreferenceManager import android.provider.MediaStore import android.renderscript.RenderScript import android.util.Log import android.util.Size import android.util.TypedValue +import androidx.preference.PreferenceManager import com.dozingcatsoftware.util.getLandscapeDisplaySize import kotlinx.android.synthetic.main.activity_main.* import java.io.FileOutputStream diff --git a/app/src/main/java/com/dozingcatsoftware/vectorcamera/VCPreferencesActivity.kt b/app/src/main/java/com/dozingcatsoftware/vectorcamera/VCPreferencesActivity.kt index 0fc708b..8280a65 100644 --- a/app/src/main/java/com/dozingcatsoftware/vectorcamera/VCPreferencesActivity.kt +++ b/app/src/main/java/com/dozingcatsoftware/vectorcamera/VCPreferencesActivity.kt @@ -9,6 +9,7 @@ import android.os.Build import android.os.Bundle import android.os.Handler import androidx.appcompat.app.AppCompatActivity +import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat class VCPreferencesActivity: AppCompatActivity() { @@ -40,12 +41,11 @@ class VCPreferencesFragment : PreferenceFragmentCompat() { setPreferencesFromResource(R.xml.preferences, rootKey) val pm = this.preferenceManager - val autoConvertPref = pm.findPreference(getString(R.string.autoConvertPicturesPrefsKey)) + val autoConvertPref: Preference? = findPreference(getString(R.string.autoConvertPicturesPrefsKey)) autoConvertPref!!.setOnPreferenceChangeListener { pref, value -> // Update broadcast receivers immediately so the change takes effect even if the user // doesn't go back to the main activity. - setAutoConvertEnabled( - this@VCPreferencesFragment.context!!, java.lang.Boolean.TRUE == value) + setAutoConvertEnabled(this.requireContext(), java.lang.Boolean.TRUE == value) true } @@ -58,9 +58,9 @@ class VCPreferencesFragment : PreferenceFragmentCompat() { getString(R.string.ansiColorPixelCharsPrefId), getString(R.string.fullColorPixelCharsPrefId)) for (prefId in asciiPrefIds) { - pm.findPreference(prefId).setOnPreferenceChangeListener { pref, value -> + pm.findPreference(prefId)!!.setOnPreferenceChangeListener { pref, value -> handler.post { - val storedPrefs = VCPreferences(this.context!!) + val storedPrefs = VCPreferences(this.requireContext()) if (storedPrefs.effectName() == "ascii") { val params = storedPrefs.effectParameters() if (params["prefId"] == prefId) { @@ -76,9 +76,9 @@ class VCPreferencesFragment : PreferenceFragmentCompat() { // Same for number of characters. val textEffectNames = setOf("ascii", "matrix") val numColumnsPrefId = getString(R.string.numAsciiColumnsPrefId) - pm.findPreference(numColumnsPrefId).setOnPreferenceChangeListener { pref, value -> + pm.findPreference(numColumnsPrefId)!!.setOnPreferenceChangeListener { pref, value -> handler.post { - val storedPrefs = VCPreferences(this.context!!) + val storedPrefs = VCPreferences(this.requireContext()) if (textEffectNames.contains(storedPrefs.effectName())) { val params = storedPrefs.effectParameters() val newEffectParams = HashMap(params) @@ -90,9 +90,9 @@ class VCPreferencesFragment : PreferenceFragmentCompat() { } // And update matrix text color. val matrixColorPrefId = getString(R.string.matrixTextColorPrefId) - pm.findPreference(matrixColorPrefId).setOnPreferenceChangeListener { pref, value -> + pm.findPreference(matrixColorPrefId)!!.setOnPreferenceChangeListener { pref, value -> handler.post { - val storedPrefs = VCPreferences(this.context!!) + val storedPrefs = VCPreferences(this.requireContext()) if (storedPrefs.effectName() == "matrix") { val params = storedPrefs.effectParameters() val newEffectParams = HashMap(params)