diff options
author | Allan Wang <me@allanwang.ca> | 2017-07-23 00:16:31 -0700 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2017-07-23 00:16:31 -0700 |
commit | 3b0bc17a514eba6670de0405b6b0c6d4d8e15a83 (patch) | |
tree | 50b1f12a1fe4b062a801b714fb2bd9ac5761abae | |
parent | a623b7de106b5894ffe037cf0e27c71e235962d7 (diff) | |
download | frost-3b0bc17a514eba6670de0405b6b0c6d4d8e15a83.tar.gz frost-3b0bc17a514eba6670de0405b6b0c6d4d8e15a83.tar.bz2 frost-3b0bc17a514eba6670de0405b6b0c6d4d8e15a83.zip |
Allow for multiple result flags from settings
5 files changed, 23 insertions, 13 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/activities/SettingsActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/activities/SettingsActivity.kt index 182c99f7..fb595095 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/activities/SettingsActivity.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/activities/SettingsActivity.kt @@ -1,5 +1,6 @@ package com.pitchedapps.frost.activities +import android.app.Activity import android.content.Intent import android.os.Bundle import android.view.Menu @@ -27,11 +28,12 @@ import com.pitchedapps.frost.utils.iab.IS_FROST_PRO */ class SettingsActivity : KPrefActivity(), FrostBilling by IABSettings() { + var resultFlag = Activity.RESULT_CANCELED + override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { - if (!onActivityResultBilling(requestCode, resultCode, data)) { + if (!onActivityResultBilling(requestCode, resultCode, data)) super.onActivityResult(requestCode, resultCode, data) - adapter.notifyDataSetChanged() - } + adapter.notifyDataSetChanged() } override fun kPrefCoreAttributes(): CoreAttributeContract.() -> Unit = { @@ -87,7 +89,7 @@ class SettingsActivity : KPrefActivity(), FrostBilling by IABSettings() { } fun shouldRestartMain() { - setResult(MainActivity.REQUEST_RESTART) + setFrostResult(MainActivity.REQUEST_RESTART) } override fun onCreate(savedInstanceState: Bundle?) { @@ -107,10 +109,14 @@ class SettingsActivity : KPrefActivity(), FrostBilling by IABSettings() { } override fun onBackPressed() { - if (!super.backPress()) + if (!super.backPress()) { + setResult(resultFlag) finishSlideOut() + } } + + override fun onCreateOptionsMenu(menu: Menu): Boolean { menuInflater.inflate(R.menu.menu_settings, menu) toolbar.tint(Prefs.iconColor) @@ -135,6 +141,10 @@ class SettingsActivity : KPrefActivity(), FrostBilling by IABSettings() { return true } + fun setFrostResult(flag: Int) { + resultFlag = resultFlag and flag + } + override fun onDestroy() { onDestroyBilling() super.onDestroy() diff --git a/app/src/main/kotlin/com/pitchedapps/frost/settings/Appearance.kt b/app/src/main/kotlin/com/pitchedapps/frost/settings/Appearance.kt index d38270f7..9c9754bb 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/settings/Appearance.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/settings/Appearance.kt @@ -108,7 +108,7 @@ fun SettingsActivity.getAppearancePrefs(): KPrefAdapterBuilder.() -> Unit = { checkbox(R.string.rounded_icons, { Prefs.showRoundedIcons }, { Prefs.showRoundedIcons = it - setResult(MainActivity.REQUEST_REFRESH) + setFrostResult(MainActivity.REQUEST_REFRESH) }) { descRes = R.string.rounded_icons_desc } @@ -116,7 +116,7 @@ fun SettingsActivity.getAppearancePrefs(): KPrefAdapterBuilder.() -> Unit = { checkbox(R.string.tint_nav, { Prefs.tintNavBar }, { Prefs.tintNavBar = it frostNavigationBar() - setResult(MainActivity.REQUEST_NAV) + setFrostResult(MainActivity.REQUEST_NAV) }) { descRes = R.string.tint_nav_desc } @@ -124,5 +124,5 @@ fun SettingsActivity.getAppearancePrefs(): KPrefAdapterBuilder.() -> Unit = { list.add(KPrefTextSeekbar( KPrefSeekbar.KPrefSeekbarBuilder( globalOptions, - R.string.web_text_scaling, { Prefs.webTextScaling }, { Prefs.webTextScaling = it; setResult(MainActivity.REQUEST_WEB_ZOOM) }))) + R.string.web_text_scaling, { Prefs.webTextScaling }, { Prefs.webTextScaling = it; setFrostResult(MainActivity.REQUEST_WEB_ZOOM) }))) }
\ No newline at end of file diff --git a/app/src/main/kotlin/com/pitchedapps/frost/settings/Behaviour.kt b/app/src/main/kotlin/com/pitchedapps/frost/settings/Behaviour.kt index 00ff00c3..831b1bff 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/settings/Behaviour.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/settings/Behaviour.kt @@ -15,7 +15,7 @@ fun SettingsActivity.getBehaviourPrefs(): KPrefAdapterBuilder.() -> Unit = { descRes = R.string.fancy_animations_desc } - checkbox(R.string.overlay_swipe, { Prefs.overlayEnabled }, { Prefs.overlayEnabled = it; setResult(MainActivity.REQUEST_REFRESH) }) { + checkbox(R.string.overlay_swipe, { Prefs.overlayEnabled }, { Prefs.overlayEnabled = it; setFrostResult(MainActivity.REQUEST_REFRESH) }) { descRes = R.string.overlay_swipe_desc } diff --git a/app/src/main/kotlin/com/pitchedapps/frost/settings/Experimental.kt b/app/src/main/kotlin/com/pitchedapps/frost/settings/Experimental.kt index c780948d..81758e7e 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/settings/Experimental.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/settings/Experimental.kt @@ -22,7 +22,7 @@ fun SettingsActivity.getExperimentalPrefs(): KPrefAdapterBuilder.() -> Unit = { // Experimental content starts here ------------------ - checkbox(R.string.search_bar, { Prefs.searchBar }, { Prefs.searchBar = it; setResult(MainActivity.REQUEST_SEARCH) }) { + checkbox(R.string.search_bar, { Prefs.searchBar }, { Prefs.searchBar = it; setFrostResult(MainActivity.REQUEST_SEARCH) }) { descRes = R.string.search_bar_desc } @@ -36,7 +36,7 @@ fun SettingsActivity.getExperimentalPrefs(): KPrefAdapterBuilder.() -> Unit = { descRes = R.string.restart_frost_desc onClick = { _, _, _ -> - setResult(MainActivity.REQUEST_RESTART_APPLICATION) + setFrostResult(MainActivity.REQUEST_RESTART_APPLICATION) finish() true } diff --git a/app/src/main/kotlin/com/pitchedapps/frost/settings/Feed.kt b/app/src/main/kotlin/com/pitchedapps/frost/settings/Feed.kt index 9b214c26..a80642bb 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/settings/Feed.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/settings/Feed.kt @@ -39,7 +39,7 @@ fun SettingsActivity.getFeedPrefs(): KPrefAdapterBuilder.() -> Unit = { checkbox(R.string.suggested_friends, { Prefs.showSuggestedFriends }, { Prefs.showSuggestedFriends = it - setResult(MainActivity.REQUEST_REFRESH) + setFrostResult(MainActivity.REQUEST_REFRESH) }) { descRes = R.string.suggested_friends_desc dependsOnPro() @@ -47,7 +47,7 @@ fun SettingsActivity.getFeedPrefs(): KPrefAdapterBuilder.() -> Unit = { checkbox(R.string.facebook_ads, { Prefs.showFacebookAds }, { Prefs.showFacebookAds = it - setResult(MainActivity.REQUEST_REFRESH) + setFrostResult(MainActivity.REQUEST_REFRESH) }) { descRes = R.string.facebook_ads_desc dependsOnPro() |