diff --git a/briar-android/src/main/AndroidManifest.xml b/briar-android/src/main/AndroidManifest.xml index 30f3ab4a4..e4e606166 100644 --- a/briar-android/src/main/AndroidManifest.xml +++ b/briar-android/src/main/AndroidManifest.xml @@ -134,6 +134,15 @@ + + + + { + listener.setupNewAccountChosen(); + }); + return view; + } + + @Override + public void onAttach(Context context) { + super.onAttach(context); + listener = (SetupNewAccountChosenListener) context; + } + + @Override + public String getUniqueTag() { + return TAG; + } + + @Override + public void injectFragment(ActivityComponent component) { + component.inject(this); + } +} diff --git a/briar-android/src/main/java/org/briarproject/briar/android/account/SetupNewAccountChosenListener.java b/briar-android/src/main/java/org/briarproject/briar/android/account/SetupNewAccountChosenListener.java new file mode 100644 index 000000000..b404b7573 --- /dev/null +++ b/briar-android/src/main/java/org/briarproject/briar/android/account/SetupNewAccountChosenListener.java @@ -0,0 +1,8 @@ +package org.briarproject.briar.android.account; + +import androidx.annotation.UiThread; + +public interface SetupNewAccountChosenListener { + @UiThread + void setupNewAccountChosen(); +} diff --git a/briar-android/src/main/java/org/briarproject/briar/android/activity/ActivityComponent.java b/briar-android/src/main/java/org/briarproject/briar/android/activity/ActivityComponent.java index 836452a60..d90007f79 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/activity/ActivityComponent.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/activity/ActivityComponent.java @@ -7,6 +7,8 @@ import org.briarproject.briar.android.AndroidComponent; import org.briarproject.briar.android.StartupFailureActivity; import org.briarproject.briar.android.account.AuthorNameFragment; import org.briarproject.briar.android.account.DozeFragment; +import org.briarproject.briar.android.account.NewOrRecoverActivity; +import org.briarproject.briar.android.account.NewOrRecoverFragment; import org.briarproject.briar.android.account.SetPasswordFragment; import org.briarproject.briar.android.account.SetupActivity; import org.briarproject.briar.android.account.UnlockActivity; @@ -89,6 +91,7 @@ import org.briarproject.briar.android.socialbackup.creation.CreateBackupControll import org.briarproject.briar.android.socialbackup.creation.CreateBackupModule; import org.briarproject.briar.android.splash.SplashScreenActivity; import org.briarproject.briar.android.test.TestDataActivity; +import org.h2.util.New; import dagger.Component; @@ -193,6 +196,8 @@ public interface ActivityComponent { void inject(CrashReportActivity crashReportActivity); + void inject(NewOrRecoverActivity newOrRecoverActivity); + // Fragments void inject(AuthorNameFragment fragment); @@ -263,5 +268,7 @@ public interface ActivityComponent { void inject(ExistingBackupFragment existingBackupFragment); + void inject(NewOrRecoverFragment newOrRecoverFragment); + void inject(OldDistributedBackupActivity oldDistributedBackupActivity); } diff --git a/briar-android/src/main/java/org/briarproject/briar/android/login/StartupActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/login/StartupActivity.java index faf469c28..0303d7447 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/login/StartupActivity.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/login/StartupActivity.java @@ -7,6 +7,7 @@ import org.briarproject.bramble.api.nullsafety.MethodsNotNullByDefault; import org.briarproject.bramble.api.nullsafety.ParametersNotNullByDefault; import org.briarproject.briar.R; import org.briarproject.briar.android.BriarService; +import org.briarproject.briar.android.account.NewOrRecoverActivity; import org.briarproject.briar.android.account.SetupActivity; import org.briarproject.briar.android.activity.ActivityComponent; import org.briarproject.briar.android.activity.BaseActivity; @@ -107,7 +108,7 @@ public class StartupActivity extends BaseActivity implements private void onAccountDeleted() { setResult(RESULT_CANCELED); finish(); - Intent i = new Intent(this, SetupActivity.class); + Intent i = new Intent(this, NewOrRecoverActivity.class); i.addFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TOP | FLAG_ACTIVITY_CLEAR_TASK | FLAG_ACTIVITY_TASK_ON_HOME); startActivity(i); diff --git a/briar-android/src/main/java/org/briarproject/briar/android/socialbackup/ShardsSentFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/socialbackup/ShardsSentFragment.java index bfac28d3f..79d3d56a5 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/socialbackup/ShardsSentFragment.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/socialbackup/ShardsSentFragment.java @@ -3,9 +3,6 @@ package org.briarproject.briar.android.socialbackup; import android.content.Context; import android.os.Bundle; import android.view.LayoutInflater; -import android.view.Menu; -import android.view.MenuInflater; -import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.Button; @@ -17,8 +14,6 @@ import org.briarproject.briar.android.fragment.BaseFragment; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import static java.util.Objects.requireNonNull; - public class ShardsSentFragment extends BaseFragment { public static final String TAG = ShardsSentFragment.class.getName(); diff --git a/briar-android/src/main/res/layout/fragment_new_or_recover.xml b/briar-android/src/main/res/layout/fragment_new_or_recover.xml new file mode 100644 index 000000000..ad5ec624b --- /dev/null +++ b/briar-android/src/main/res/layout/fragment_new_or_recover.xml @@ -0,0 +1,34 @@ + + + +