mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-13 11:19:04 +01:00
Add more lifecycle states, merge lifecycle events.
This commit is contained in:
@@ -6,12 +6,12 @@ import android.support.annotation.Nullable;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.briarproject.bramble.api.db.DatabaseMigrationEvent;
|
||||
import org.briarproject.bramble.api.event.Event;
|
||||
import org.briarproject.bramble.api.event.EventBus;
|
||||
import org.briarproject.bramble.api.event.EventListener;
|
||||
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
||||
import org.briarproject.bramble.api.lifecycle.event.StartupEvent;
|
||||
import org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleState;
|
||||
import org.briarproject.bramble.api.lifecycle.event.LifecycleEvent;
|
||||
import org.briarproject.briar.R;
|
||||
import org.briarproject.briar.android.activity.ActivityComponent;
|
||||
import org.briarproject.briar.android.activity.BriarActivity;
|
||||
@@ -20,8 +20,8 @@ import org.briarproject.briar.android.navdrawer.NavDrawerActivity;
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import javax.inject.Inject;
|
||||
|
||||
import static org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleState.MIGRATING;
|
||||
import static org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleState.RUNNING;
|
||||
import static org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleState.MIGRATING_DATABASE;
|
||||
import static org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleState.STARTING_SERVICES;
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
public class OpenDatabaseActivity extends BriarActivity
|
||||
@@ -52,12 +52,11 @@ public class OpenDatabaseActivity extends BriarActivity
|
||||
@Override
|
||||
public void onStart() {
|
||||
super.onStart();
|
||||
if (lifecycleManager.getLifecycleState() == RUNNING) {
|
||||
LifecycleState state = lifecycleManager.getLifecycleState();
|
||||
if (state.isAfter(STARTING_SERVICES)) {
|
||||
finishAndStartApp();
|
||||
} else {
|
||||
if (lifecycleManager.getLifecycleState() == MIGRATING) {
|
||||
showMigration();
|
||||
}
|
||||
if (state == MIGRATING_DATABASE) showMigration();
|
||||
eventBus.addListener(this);
|
||||
}
|
||||
}
|
||||
@@ -70,10 +69,12 @@ public class OpenDatabaseActivity extends BriarActivity
|
||||
|
||||
@Override
|
||||
public void eventOccurred(Event e) {
|
||||
if (e instanceof StartupEvent) {
|
||||
runOnUiThreadUnlessDestroyed(this::finishAndStartApp);
|
||||
} else if (e instanceof DatabaseMigrationEvent) {
|
||||
runOnUiThreadUnlessDestroyed(this::showMigration);
|
||||
if (e instanceof LifecycleEvent) {
|
||||
LifecycleState state = ((LifecycleEvent) e).getLifecycleState();
|
||||
if (state.isAfter(STARTING_SERVICES))
|
||||
runOnUiThreadUnlessDestroyed(this::finishAndStartApp);
|
||||
else if (state == MIGRATING_DATABASE)
|
||||
runOnUiThreadUnlessDestroyed(this::showMigration);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user