From 5c4d202a759d225cb9d55ea6cde450c98c5d7ad0 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Tue, 19 Jan 2021 11:58:50 -0600 Subject: [PATCH] Add PreferenceScreen.removeAt extension --- .../tasks/preferences/fragments/MainSettingsFragment.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/tasks/preferences/fragments/MainSettingsFragment.kt b/app/src/main/java/org/tasks/preferences/fragments/MainSettingsFragment.kt index 94ca5e650..4e97de226 100644 --- a/app/src/main/java/org/tasks/preferences/fragments/MainSettingsFragment.kt +++ b/app/src/main/java/org/tasks/preferences/fragments/MainSettingsFragment.kt @@ -78,9 +78,7 @@ class MainSettingsFragment : InjectingPreferenceFragment() { preferenceScreen.insertAt(current++) }) } - repeat(current.until(index).count()) { - preferenceScreen.removePreference(preferenceScreen.getPreference(current)) - } + preferenceScreen.removeAt(current, index - current) if (caldavAccounts.isEmpty() && googleTaskAccounts.isEmpty()) { addAccount.setTitle(R.string.not_signed_in) addAccount.setIcon(R.drawable.ic_outline_cloud_24px) @@ -225,6 +223,11 @@ class MainSettingsFragment : InjectingPreferenceFragment() { const val REQUEST_GOOGLE_TASKS = 10014 const val REQUEST_TASKS_ORG = 10016 + fun PreferenceScreen.removeAt(index: Int, count: Int = 1) { + repeat(count) { + removePreference(getPreference(index)) + } + } fun PreferenceScreen.indexOf(pref: Preference): Int = 0.until(preferenceCount).first { pref == getPreference(it) }