summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap/bitmaskclient/StartActivity.java
diff options
context:
space:
mode:
authorFup Duck <fupduck@sacknagel.com>2018-01-21 19:17:36 +0100
committerFup Duck <fupduck@sacknagel.com>2018-01-21 19:17:36 +0100
commit042e10b53b95d48ffbcce45213ebec5f0794fb01 (patch)
tree1474c13c8a487e38f81528396da8fb0a19cc8583 /app/src/main/java/se/leap/bitmaskclient/StartActivity.java
parent6e45a5bcb4de152543b5dd5d9bd2027fb62f7375 (diff)
handle startActivityForResult
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/StartActivity.java')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/StartActivity.java26
1 files changed, 23 insertions, 3 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/StartActivity.java b/app/src/main/java/se/leap/bitmaskclient/StartActivity.java
index bb01ddc0..69079735 100644
--- a/app/src/main/java/se/leap/bitmaskclient/StartActivity.java
+++ b/app/src/main/java/se/leap/bitmaskclient/StartActivity.java
@@ -17,6 +17,7 @@ import se.leap.bitmaskclient.userstatus.User;
import static se.leap.bitmaskclient.Constants.APP_ACTION_CONFIGURE_ALWAYS_ON_PROFILE;
import static se.leap.bitmaskclient.Constants.PREFERENCES_APP_VERSION;
+import static se.leap.bitmaskclient.Constants.PROVIDER_CONFIGURED;
import static se.leap.bitmaskclient.Constants.REQUEST_CODE_CONFIGURE_LEAP;
import static se.leap.bitmaskclient.Constants.SHARED_PREFERENCES;
@@ -153,9 +154,7 @@ public class StartActivity extends Activity {
//buildDashboard(getIntent().getBooleanExtra(EIP_RESTART_ON_BOOT, false));
// user_status_fragment.restoreSessionStatus(savedInstanceState);
- Intent intent = new Intent(this, MainActivity.class);
- intent.setAction(MainActivity.ACTION_SHOW_VPN_FRAGMENT);
- startActivity(intent);
+ showMainActivity();
}
} else {
configureLeapProvider();
@@ -169,4 +168,25 @@ public class StartActivity extends Activity {
startActivityForResult(new Intent(this, ConfigurationWizard.class), REQUEST_CODE_CONFIGURE_LEAP);
}
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if (requestCode == REQUEST_CODE_CONFIGURE_LEAP) {
+ if (resultCode == RESULT_OK && data.hasExtra(Provider.KEY)) {
+ Provider provider = data.getParcelableExtra(Provider.KEY);
+ provider.storeInPreferences(preferences);
+
+ showMainActivity();
+ } else if (resultCode == RESULT_CANCELED) {
+ finish();
+ }
+ }
+ }
+
+ private void showMainActivity() {
+ Intent intent = new Intent(this, MainActivity.class);
+ intent.setAction(MainActivity.ACTION_SHOW_VPN_FRAGMENT);
+ startActivity(intent);
+ finish();
+ }
+
}