Merge "Announce user credential deletions"
This commit is contained in:
committed by
Android (Google) Code Review
commit
9298f8c604
@@ -5303,6 +5303,8 @@
|
|||||||
<string name="n_cacrts">%d CA certificates</string>
|
<string name="n_cacrts">%d CA certificates</string>
|
||||||
<!-- Alert dialog when viewing a set of user credentials. -->
|
<!-- Alert dialog when viewing a set of user credentials. -->
|
||||||
<string name="user_credential_title">Credential Details</string>
|
<string name="user_credential_title">Credential Details</string>
|
||||||
|
<!-- Announcement to confirm a user credential being removed. [CHAR LIMIT=NONE] -->
|
||||||
|
<string name="user_credential_removed">Removed credential: <xliff:g id="credential_name" example="signing key">%s</xliff:g></string>
|
||||||
|
|
||||||
<!-- Title for spell checker settings -->
|
<!-- Title for spell checker settings -->
|
||||||
<string name="spellcheckers_settings_title">Spell checker</string>
|
<string name="spellcheckers_settings_title">Spell checker</string>
|
||||||
|
@@ -91,6 +91,12 @@ public class UserCredentialsSettings extends OptionsMenuFragment implements OnIt
|
|||||||
CredentialDialogFragment.show(this, item);
|
CredentialDialogFragment.show(this, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void announceRemoval(String alias) {
|
||||||
|
if (isAdded()) {
|
||||||
|
mListView.announceForAccessibility(getString(R.string.user_credential_removed, alias));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void refreshItems() {
|
protected void refreshItems() {
|
||||||
if (isAdded()) {
|
if (isAdded()) {
|
||||||
new AliasLoader().execute();
|
new AliasLoader().execute();
|
||||||
@@ -142,8 +148,7 @@ public class UserCredentialsSettings extends OptionsMenuFragment implements OnIt
|
|||||||
RestrictedLockUtils.sendShowAdminSupportDetailsIntent(getContext(),
|
RestrictedLockUtils.sendShowAdminSupportDetailsIntent(getContext(),
|
||||||
admin);
|
admin);
|
||||||
} else {
|
} else {
|
||||||
new RemoveCredentialsTask(getContext(), getTargetFragment())
|
new RemoveCredentialsTask(getTargetFragment()).execute(item.alias);
|
||||||
.execute(item.alias);
|
|
||||||
}
|
}
|
||||||
dialog.dismiss();
|
dialog.dismiss();
|
||||||
}
|
}
|
||||||
@@ -153,17 +158,15 @@ public class UserCredentialsSettings extends OptionsMenuFragment implements OnIt
|
|||||||
return builder.create();
|
return builder.create();
|
||||||
}
|
}
|
||||||
|
|
||||||
private class RemoveCredentialsTask extends AsyncTask<String, Void, Void> {
|
private class RemoveCredentialsTask extends AsyncTask<String, Void, String[]> {
|
||||||
private Context context;
|
|
||||||
private Fragment targetFragment;
|
private Fragment targetFragment;
|
||||||
|
|
||||||
public RemoveCredentialsTask(Context context, Fragment targetFragment) {
|
public RemoveCredentialsTask(Fragment targetFragment) {
|
||||||
this.context = context;
|
|
||||||
this.targetFragment = targetFragment;
|
this.targetFragment = targetFragment;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Void doInBackground(String... aliases) {
|
protected String[] doInBackground(String... aliases) {
|
||||||
try {
|
try {
|
||||||
final KeyChainConnection conn = KeyChain.bind(getContext());
|
final KeyChainConnection conn = KeyChain.bind(getContext());
|
||||||
try {
|
try {
|
||||||
@@ -179,13 +182,17 @@ public class UserCredentialsSettings extends OptionsMenuFragment implements OnIt
|
|||||||
} catch (InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
Log.w(TAG, "Connecting to keychain", e);
|
Log.w(TAG, "Connecting to keychain", e);
|
||||||
}
|
}
|
||||||
return null;
|
return aliases;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onPostExecute(Void result) {
|
protected void onPostExecute(String... aliases) {
|
||||||
if (targetFragment instanceof UserCredentialsSettings) {
|
if (targetFragment instanceof UserCredentialsSettings && targetFragment.isAdded()) {
|
||||||
((UserCredentialsSettings) targetFragment).refreshItems();
|
final UserCredentialsSettings target = (UserCredentialsSettings) targetFragment;
|
||||||
|
for (final String alias : aliases) {
|
||||||
|
target.announceRemoval(alias);
|
||||||
|
}
|
||||||
|
target.refreshItems();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user