mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-11 18:29:05 +01:00
Start NavDrawerActivity only after database was opened and services started
This commit is contained in:
@@ -17,7 +17,6 @@ import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
||||
import org.briarproject.bramble.api.lifecycle.LifecycleManager.StartResult;
|
||||
import org.briarproject.bramble.api.system.AndroidExecutor;
|
||||
import org.briarproject.briar.R;
|
||||
import org.briarproject.briar.android.login.OpenDatabaseActivity;
|
||||
import org.briarproject.briar.android.navdrawer.NavDrawerActivity;
|
||||
|
||||
import java.util.concurrent.CountDownLatch;
|
||||
@@ -90,11 +89,6 @@ public class BriarService extends Service {
|
||||
return;
|
||||
}
|
||||
|
||||
Intent intent =
|
||||
new Intent(getApplicationContext(), OpenDatabaseActivity.class);
|
||||
intent.setFlags(FLAG_ACTIVITY_NEW_TASK);
|
||||
startActivity(intent);
|
||||
|
||||
// Create notification channels
|
||||
if (SDK_INT >= 26) {
|
||||
NotificationManager nm = (NotificationManager)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package org.briarproject.briar.android.login;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.widget.ImageView;
|
||||
@@ -13,7 +14,8 @@ import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
||||
import org.briarproject.bramble.api.lifecycle.event.StartupEvent;
|
||||
import org.briarproject.briar.R;
|
||||
import org.briarproject.briar.android.activity.ActivityComponent;
|
||||
import org.briarproject.briar.android.activity.BaseActivity;
|
||||
import org.briarproject.briar.android.activity.BriarActivity;
|
||||
import org.briarproject.briar.android.navdrawer.NavDrawerActivity;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import javax.inject.Inject;
|
||||
@@ -22,7 +24,7 @@ import static org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleS
|
||||
import static org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleState.RUNNING;
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
public class OpenDatabaseActivity extends BaseActivity
|
||||
public class OpenDatabaseActivity extends BriarActivity
|
||||
implements EventListener {
|
||||
|
||||
@Inject
|
||||
@@ -48,15 +50,10 @@ public class OpenDatabaseActivity extends BaseActivity
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
// do not let the user bail out of here
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onStart() {
|
||||
public void onStart() {
|
||||
super.onStart();
|
||||
if (lifecycleManager.getLifecycleState() == RUNNING) {
|
||||
supportFinishAfterTransition();
|
||||
finishAndStartApp();
|
||||
} else {
|
||||
if (lifecycleManager.getLifecycleState() == MIGRATING) {
|
||||
showMigration();
|
||||
@@ -74,7 +71,7 @@ public class OpenDatabaseActivity extends BaseActivity
|
||||
@Override
|
||||
public void eventOccurred(Event e) {
|
||||
if (e instanceof StartupEvent) {
|
||||
runOnUiThreadUnlessDestroyed(this::supportFinishAfterTransition);
|
||||
runOnUiThreadUnlessDestroyed(this::finishAndStartApp);
|
||||
} else if (e instanceof DatabaseMigrationEvent) {
|
||||
runOnUiThreadUnlessDestroyed(this::showMigration);
|
||||
}
|
||||
@@ -87,4 +84,9 @@ public class OpenDatabaseActivity extends BaseActivity
|
||||
showingMigration = true;
|
||||
}
|
||||
|
||||
private void finishAndStartApp() {
|
||||
startActivity(new Intent(this, NavDrawerActivity.class));
|
||||
supportFinishAfterTransition();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -8,7 +8,6 @@ import org.briarproject.briar.R;
|
||||
import org.briarproject.briar.android.activity.ActivityComponent;
|
||||
import org.briarproject.briar.android.activity.BaseActivity;
|
||||
import org.briarproject.briar.android.fragment.BaseFragment.BaseFragmentListener;
|
||||
import org.briarproject.briar.android.navdrawer.NavDrawerActivity;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
@@ -48,7 +47,7 @@ public class SetupActivity extends BaseActivity
|
||||
}
|
||||
|
||||
public void showApp() {
|
||||
Intent i = new Intent(this, NavDrawerActivity.class);
|
||||
Intent i = new Intent(this, OpenDatabaseActivity.class);
|
||||
i.setFlags(FLAG_ACTIVITY_NEW_TASK);
|
||||
startActivity(i);
|
||||
supportFinishAfterTransition();
|
||||
|
||||
@@ -12,8 +12,8 @@ import org.briarproject.briar.R;
|
||||
import org.briarproject.briar.android.activity.ActivityComponent;
|
||||
import org.briarproject.briar.android.activity.BaseActivity;
|
||||
import org.briarproject.briar.android.controller.ConfigController;
|
||||
import org.briarproject.briar.android.login.OpenDatabaseActivity;
|
||||
import org.briarproject.briar.android.login.SetupActivity;
|
||||
import org.briarproject.briar.android.navdrawer.NavDrawerActivity;
|
||||
|
||||
import java.util.logging.Logger;
|
||||
|
||||
@@ -44,7 +44,7 @@ public class SplashScreenActivity extends BaseActivity {
|
||||
setContentView(R.layout.splash);
|
||||
|
||||
if (configController.accountSignedIn()) {
|
||||
startActivity(new Intent(this, NavDrawerActivity.class));
|
||||
startActivity(new Intent(this, OpenDatabaseActivity.class));
|
||||
finish();
|
||||
} else {
|
||||
new Handler().postDelayed(() -> {
|
||||
@@ -65,7 +65,7 @@ public class SplashScreenActivity extends BaseActivity {
|
||||
startActivity(new Intent(this, ExpiredActivity.class));
|
||||
} else {
|
||||
if (configController.accountExists()) {
|
||||
startActivity(new Intent(this, NavDrawerActivity.class));
|
||||
startActivity(new Intent(this, OpenDatabaseActivity.class));
|
||||
} else {
|
||||
configController.deleteAccount(this);
|
||||
startActivity(new Intent(this, SetupActivity.class));
|
||||
|
||||
Reference in New Issue
Block a user