diff --git a/src/com/android/settings/vpn/VpnSettings.java b/src/com/android/settings/vpn/VpnSettings.java index 4dfe21a0a0b..ea16f9d2b26 100644 --- a/src/com/android/settings/vpn/VpnSettings.java +++ b/src/com/android/settings/vpn/VpnSettings.java @@ -216,23 +216,27 @@ public class VpnSettings extends SettingsPreferenceFragment } } + private class ConnectDialog extends AlertDialog { + public ConnectDialog(Context context) { + super(context); + setTitle(String.format(getString(R.string.vpn_connect_to), + mActiveProfile.getName())); + setButton(DialogInterface.BUTTON_POSITIVE, + getString(R.string.vpn_connect_button), + VpnSettings.this); + setButton(DialogInterface.BUTTON_NEGATIVE, + getString(android.R.string.cancel), + VpnSettings.this); + setView(mConnectingActor.createConnectView()); + } + public void onBackPressed() { + changeState(mActiveProfile, VpnState.IDLE); + super.onBackPressed(); + } + } + private Dialog createConnectDialog() { - final Activity activity = getActivity(); - return new AlertDialog.Builder(activity) - .setView(mConnectingActor.createConnectView()) - .setTitle(String.format(activity.getString(R.string.vpn_connect_to), - mActiveProfile.getName())) - .setPositiveButton(activity.getString(R.string.vpn_connect_button), - this) - .setNegativeButton(activity.getString(android.R.string.cancel), - this) - .setOnCancelListener(new DialogInterface.OnCancelListener() { - public void onCancel(DialogInterface dialog) { - removeDialog(DIALOG_CONNECT); - changeState(mActiveProfile, VpnState.IDLE); - } - }) - .create(); + return new ConnectDialog(getActivity()); } private Dialog createReconnectDialog(int id) {