summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/com/android/settings/vpn/VpnSettings.java16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/com/android/settings/vpn/VpnSettings.java b/src/com/android/settings/vpn/VpnSettings.java
index 0587619..960d37e 100644
--- a/src/com/android/settings/vpn/VpnSettings.java
+++ b/src/com/android/settings/vpn/VpnSettings.java
@@ -190,30 +190,38 @@ public class VpnSettings extends SettingsPreferenceFragment
// for long-press gesture on a profile preference
registerForContextMenu(getListView());
- // listen to vpn connectivity event
- mVpnManager.registerConnectivityReceiver(mConnectivityReceiver);
retrieveVpnListFromStorage();
- checkVpnConnectionStatusInBackground();
restoreInstanceState(savedInstanceState);
}
@Override
+ public void onPause() {
+ // ignore vpn connectivity event
+ mVpnManager.unregisterConnectivityReceiver(mConnectivityReceiver);
+ super.onPause();
+ }
+
+ @Override
public void onResume() {
super.onResume();
if (DEBUG)
Log.d(TAG, "onResume");
+
+ // listen to vpn connectivity event
+ mVpnManager.registerConnectivityReceiver(mConnectivityReceiver);
+
if ((mUnlockAction != null) && isKeyStoreUnlocked()) {
Runnable action = mUnlockAction;
mUnlockAction = null;
getActivity().runOnUiThread(action);
}
+ checkVpnConnectionStatusInBackground();
}
@Override
public void onDestroyView() {
unregisterForContextMenu(getListView());
- mVpnManager.unregisterConnectivityReceiver(mConnectivityReceiver);
if ((mShowingDialog != null) && mShowingDialog.isShowing()) {
mShowingDialog.dismiss();
}