diff options
author | Brian Carlstrom <bdc@google.com> | 2011-07-06 13:45:07 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-07-06 13:45:07 -0700 |
commit | abb56b185b04369593adf4e294bcb5de21e1d51f (patch) | |
tree | 49f4e020af743c70d97a9d38a76175afe2f13123 /src/com | |
parent | a869123bc3ef386519cc247bfd95c3d200acbaaa (diff) | |
parent | 729c6d99e21856558f3631d31537b8dca6bb2314 (diff) | |
download | packages_apps_Settings-abb56b185b04369593adf4e294bcb5de21e1d51f.zip packages_apps_Settings-abb56b185b04369593adf4e294bcb5de21e1d51f.tar.gz packages_apps_Settings-abb56b185b04369593adf4e294bcb5de21e1d51f.tar.bz2 |
Merge "Convert CA loading from spinning wheel to progress bar"
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/settings/TrustedCredentialsSettings.java | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/src/com/android/settings/TrustedCredentialsSettings.java b/src/com/android/settings/TrustedCredentialsSettings.java index 1339409..55a0010 100644 --- a/src/com/android/settings/TrustedCredentialsSettings.java +++ b/src/com/android/settings/TrustedCredentialsSettings.java @@ -36,6 +36,7 @@ import android.widget.Button; import android.widget.CheckBox; import android.widget.FrameLayout; import android.widget.ListView; +import android.widget.ProgressBar; import android.widget.TabHost; import android.widget.TextView; import java.security.cert.CertificateEncodingException; @@ -210,15 +211,21 @@ public class TrustedCredentialsSettings extends Fragment { return view; }; - private class AliasLoader extends AsyncTask<Void, Void, List<CertHolder>> { + private class AliasLoader extends AsyncTask<Void, Integer, List<CertHolder>> { + ProgressBar mProgressBar; + View mList; @Override protected void onPreExecute() { View content = mTabHost.getTabContentView(); - content.findViewById(mTab.mProgress).setVisibility(View.VISIBLE); - content.findViewById(mTab.mList).setVisibility(View.GONE); + mProgressBar = (ProgressBar) content.findViewById(mTab.mProgress); + mList = content.findViewById(mTab.mList); + mProgressBar.setVisibility(View.VISIBLE); + mList.setVisibility(View.GONE); } @Override protected List<CertHolder> doInBackground(Void... params) { Set<String> aliases = mTab.getAliases(mStore); - List<CertHolder> certHolders = new ArrayList<CertHolder>(aliases.size()); + int max = aliases.size(); + int progress = 0; + List<CertHolder> certHolders = new ArrayList<CertHolder>(max); for (String alias : aliases) { X509Certificate cert = (X509Certificate) mStore.getCertificate(alias, true); certHolders.add(new CertHolder(mStore, @@ -226,10 +233,19 @@ public class TrustedCredentialsSettings extends Fragment { mTab, alias, cert)); + publishProgress(++progress, max); } Collections.sort(certHolders); return certHolders; } + @Override protected void onProgressUpdate(Integer... progressAndMax) { + int progress = progressAndMax[0]; + int max = progressAndMax[1]; + if (max != mProgressBar.getMax()) { + mProgressBar.setMax(max); + } + mProgressBar.setProgress(progress); + } @Override protected void onPostExecute(List<CertHolder> certHolders) { mCertHolders.clear(); mCertHolders.addAll(certHolders); |