summaryrefslogtreecommitdiff
path: root/main/src/main/java/de/blinkt/openvpn/fragments/VPNProfileList.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/main/java/de/blinkt/openvpn/fragments/VPNProfileList.java')
-rw-r--r--main/src/main/java/de/blinkt/openvpn/fragments/VPNProfileList.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/main/src/main/java/de/blinkt/openvpn/fragments/VPNProfileList.java b/main/src/main/java/de/blinkt/openvpn/fragments/VPNProfileList.java
index 3f5e806e..0323ba76 100644
--- a/main/src/main/java/de/blinkt/openvpn/fragments/VPNProfileList.java
+++ b/main/src/main/java/de/blinkt/openvpn/fragments/VPNProfileList.java
@@ -28,6 +28,7 @@ import android.widget.Toast;
import de.blinkt.openvpn.*;
import de.blinkt.openvpn.activities.ConfigConverter;
+import de.blinkt.openvpn.activities.DisconnectVPN;
import de.blinkt.openvpn.activities.FileSelect;
import de.blinkt.openvpn.activities.VPNPreferences;
import de.blinkt.openvpn.core.ProfileManager;
@@ -82,7 +83,7 @@ public class VPNProfileList extends ListFragment implements OnClickListener, Vpn
titleview.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
- startVPN(profile);
+ startOrStopVPN(profile);
}
});
@@ -110,6 +111,15 @@ public class VPNProfileList extends ListFragment implements OnClickListener, Vpn
}
}
+ private void startOrStopVPN(VpnProfile profile) {
+ if (VpnStatus.isVPNActive()) {
+ Intent disconnectVPN = new Intent(getActivity(), DisconnectVPN.class);
+ startActivity(disconnectVPN);
+ } else {
+ startVPN(profile);
+ }
+ }
+
private ArrayAdapter<VpnProfile> mArrayadapter;
@@ -212,7 +222,7 @@ public class VPNProfileList extends ListFragment implements OnClickListener, Vpn
}
private void setListAdapter() {
- if (mArrayadapter==null) {
+ if (mArrayadapter == null) {
mArrayadapter = new VPNArrayAdapter(getActivity(), R.layout.vpn_list_item, R.id.vpn_item_title);
}