From e22f3d2c1b9bb763bdcaef42883833b11dc71acd Mon Sep 17 00:00:00 2001 From: Daniel Applebaum Date: Mon, 19 Apr 2010 02:55:02 +0000 Subject: [PATCH] Provide user control over the account size measurement and search result counting that are displayed in the Accouts Activity. These can both be slow, so some users may opt-out. --- res/values/strings.xml | 7 ++++++ res/xml/global_preferences.xml | 10 +++++++++ src/com/fsck/k9/Account.java | 5 ++++- src/com/fsck/k9/AccountStats.java | 2 +- src/com/fsck/k9/K9.java | 26 +++++++++++++++++++++++ src/com/fsck/k9/activity/Accounts.java | 10 +++++---- src/com/fsck/k9/activity/setup/Prefs.java | 13 ++++++++++++ 7 files changed, 67 insertions(+), 6 deletions(-) diff --git a/res/values/strings.xml b/res/values/strings.xml index 1504023c0..91558196d 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -635,6 +635,7 @@ Welcome to K-9 Mail setup. K-9 is an open source mail client for Android origin Global Preferences Debugging Sync + Account List Message Lists Theme @@ -683,6 +684,12 @@ Welcome to K-9 Mail setup. K-9 is an open source mail client for Android origin Gestures Accept gesture control + Show account size + Turn off for faster display + + Count search results + Turn off for faster display + All unread messages Unread messages in searchable accounts diff --git a/res/xml/global_preferences.xml b/res/xml/global_preferences.xml index ed6a5a1a8..d166330d3 100644 --- a/res/xml/global_preferences.xml +++ b/res/xml/global_preferences.xml @@ -42,6 +42,16 @@ android:title="@string/gestures_title" android:summary="@string/gestures_summary" /> + + + + = 0) { holder.email.setText(SizeFormatter.formatSize(Accounts.this, stats.size)); } diff --git a/src/com/fsck/k9/activity/setup/Prefs.java b/src/com/fsck/k9/activity/setup/Prefs.java index 233d65913..a48aafae7 100644 --- a/src/com/fsck/k9/activity/setup/Prefs.java +++ b/src/com/fsck/k9/activity/setup/Prefs.java @@ -31,6 +31,8 @@ public class Prefs extends K9PreferenceActivity private static final String PREFERENCE_MESSAGELIST_CHECKBOXES = "messagelist_checkboxes"; private static final String PREFERENCE_MESSAGELIST_TOUCHABLE = "messagelist_touchable"; + private static final String PREFERENCE_MEASURE_ACCOUNTS = "measure_accounts"; + private static final String PREFERENCE_COUNT_SEARCH = "count_search"; private ListPreference mTheme; private ListPreference mDateFormat; private ListPreference mBackgroundOps; @@ -41,6 +43,8 @@ public class Prefs extends K9PreferenceActivity private CheckBoxPreference mStars; private CheckBoxPreference mCheckboxes; private CheckBoxPreference mTouchable; + private CheckBoxPreference mMeasureAccounts; + private CheckBoxPreference mCountSearch; private String initBackgroundOps; @@ -137,6 +141,12 @@ public class Prefs extends K9PreferenceActivity mTouchable = (CheckBoxPreference)findPreference(PREFERENCE_MESSAGELIST_TOUCHABLE); mTouchable.setChecked(K9.messageListTouchable()); + + mMeasureAccounts = (CheckBoxPreference)findPreference(PREFERENCE_MEASURE_ACCOUNTS); + mMeasureAccounts.setChecked(K9.measureAccounts()); + + mCountSearch = (CheckBoxPreference)findPreference(PREFERENCE_COUNT_SEARCH); + mCountSearch.setChecked(K9.countSearchMessages()); } @Override @@ -160,6 +170,9 @@ public class Prefs extends K9PreferenceActivity K9.setMessageListTouchable(mTouchable.isChecked()); + K9.setMeasureAccounts(mMeasureAccounts.isChecked()); + K9.setCountSearchMessages(mCountSearch.isChecked()); + Editor editor = preferences.edit(); K9.save(editor); DateFormatter.setDateFormat(editor, mDateFormat.getValue());