Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a8d14c1d authored by cketti's avatar cketti
Browse files

Code cleanup

parent b2c232e4
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -23,3 +23,7 @@
-dontnote com.fsck.k9.view.**

-keep public class org.openintents.openpgp.**

-keepclassmembers class * extends android.support.v7.widget.SearchView {
   public <init>(android.content.Context);
}
+0 −2
Original line number Diff line number Diff line
@@ -19,8 +19,6 @@ dependencies {
    implementation project(':plugins:openpgp-api-lib:openpgp-api')

    implementation "com.android.support:appcompat-v7:${versions.supportLibrary}"
    implementation "com.android.support:preference-v14:${versions.supportLibrary}"
    implementation "com.android.support:cardview-v7:${versions.supportLibrary}"
    implementation "com.takisoft.fix:preference-v7:${versions.preferencesFix}"
    implementation "com.takisoft.fix:preference-v7-datetimepicker:${versions.preferencesFix}"
    implementation "com.takisoft.fix:preference-v7-colorpicker:${versions.preferencesFix}"
+15 −0
Original line number Diff line number Diff line
package com.fsck.k9.ui

import android.content.res.Resources.Theme
import android.util.TypedValue

fun Theme.resolveAttribute(resId: Int): Int {
    val typedValue = TypedValue()

    val found = resolveAttribute(resId, typedValue, true)
    if (!found) {
        throw IllegalStateException("Couldn't resolve attribute ($resId)")
    }

    return typedValue.data
}
+31 −24
Original line number Diff line number Diff line
@@ -7,7 +7,6 @@ import android.os.Handler
import android.support.v7.preference.PreferenceFragmentCompat
import android.support.v7.preference.PreferenceFragmentCompat.OnPreferenceStartScreenCallback
import android.support.v7.preference.PreferenceScreen
import android.util.Log
import android.view.Menu
import android.view.MenuItem
import com.bytehamster.lib.preferencesearch.SearchPreferenceActionView
@@ -18,6 +17,7 @@ import com.fsck.k9.activity.setup.FontSizeSettings
import com.fsck.k9.ui.R
import com.fsck.k9.ui.fragmentTransaction
import com.fsck.k9.ui.fragmentTransactionWithBackStack
import com.fsck.k9.ui.resolveAttribute

class GeneralSettingsActivity : K9Activity(), OnPreferenceStartScreenCallback, SearchPreferenceResultListener {
    private lateinit var searchPreferenceActionView: SearchPreferenceActionView
@@ -41,6 +41,18 @@ class GeneralSettingsActivity : K9Activity(), OnPreferenceStartScreenCallback, S
        }
    }

    private fun initializeActionBar() {
        val actionBar = supportActionBar ?: throw RuntimeException("getSupportActionBar() == null")
        actionBar.setDisplayHomeAsUpEnabled(true)
    }

    override fun onSaveInstanceState(outState: Bundle) {
        outState.putString(KEY_SEARCH_QUERY, searchPreferenceActionView.query.toString())
        outState.putBoolean(KEY_SEARCH_ENABLED, !searchPreferenceActionView.isIconified)
        searchPreferenceActionView.onBackPressed()
        super.onSaveInstanceState(outState)
    }

    override fun onSearchResultClicked(result: SearchPreferenceResult) {
        searchPreferenceActionView.close()
        searchPreferenceMenuItem.collapseActionView()
@@ -54,30 +66,32 @@ class GeneralSettingsActivity : K9Activity(), OnPreferenceStartScreenCallback, S
                replace(R.id.generalSettingsContainer, fragment)
            }

            result.highlight(fragment as PreferenceFragmentCompat?, 0x009688) // Default material accent color
            val accentColor = theme.resolveAttribute(R.attr.colorAccent)
            result.highlight(fragment as PreferenceFragmentCompat, accentColor)
        }
    }

    private fun initializeActionBar() {
        val actionBar = supportActionBar ?: throw RuntimeException("getSupportActionBar() == null")
        actionBar.setDisplayHomeAsUpEnabled(true)
    }

    override fun onCreateOptionsMenu(menu: Menu): Boolean {
        menuInflater.inflate(R.menu.general_settings_option, menu)

        searchPreferenceMenuItem = menu.findItem(R.id.search)
        searchPreferenceActionView = searchPreferenceMenuItem.actionView as SearchPreferenceActionView
        searchPreferenceActionView.setActivity(this)
        val config = searchPreferenceActionView.searchConfiguration
        config.setFragmentContainerViewId(R.id.generalSettingsContainer)
        config.setBreadcrumbsEnabled(true)
        config.setFuzzySearchEnabled(true)
        config.index().addFile(R.xml.general_settings)
        config.index().addBreadcrumb(R.string.general_settings_title)
                .addBreadcrumb(R.string.display_preferences)
                .addBreadcrumb(R.string.global_preferences)
                .addBreadcrumb(R.string.font_size_settings_title)
                .addFile(R.xml.font_preferences)

        with(searchPreferenceActionView.searchConfiguration) {
            setFragmentContainerViewId(R.id.generalSettingsContainer)
            setBreadcrumbsEnabled(true)
            setFuzzySearchEnabled(true)

            with(index()) {
                addFile(R.xml.general_settings)
                addBreadcrumb(R.string.general_settings_title)
                addBreadcrumb(R.string.display_preferences)
                addBreadcrumb(R.string.global_preferences)
                addBreadcrumb(R.string.font_size_settings_title)
                addFile(R.xml.font_preferences)
            }
        }

        searchPreferenceMenuItem.setOnActionExpandListener(object : MenuItem.OnActionExpandListener {
            override fun onMenuItemActionCollapse(item: MenuItem): Boolean {
@@ -135,11 +149,4 @@ class GeneralSettingsActivity : K9Activity(), OnPreferenceStartScreenCallback, S
            context.startActivity(intent)
        }
    }

    override fun onSaveInstanceState(outState: Bundle) {
        outState.putString(KEY_SEARCH_QUERY, searchPreferenceActionView.query.toString())
        outState.putBoolean(KEY_SEARCH_ENABLED, !searchPreferenceActionView.isIconified)
        searchPreferenceActionView.onBackPressed()
        super.onSaveInstanceState(outState)
    }
}
+2 −0
Original line number Diff line number Diff line
@@ -56,6 +56,8 @@ subprojects {
            force "com.android.support:support-annotations:${versions.supportLibrary}"
            force "com.android.support:design:${versions.supportLibrary}"
            force "com.android.support:support-fragment:${versions.supportLibrary}"
            force "com.android.support:preference-v14:${versions.supportLibrary}"
            force "com.android.support:cardview-v7:${versions.supportLibrary}"
        }
    }
}