mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-22 23:59:54 +01:00
recover activity
This commit is contained in:
@@ -153,15 +153,14 @@
|
|||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name="org.briarproject.briar.android.socialbackup.OldDistributedBackupActivity"
|
android:name="org.briarproject.briar.android.socialbackup.RecoverActivity"
|
||||||
android:label="@string/activity_name_old_distributed_backup"
|
android:label="@string/activity_name_recovery"
|
||||||
android:parentActivityName="org.briarproject.briar.android.settings.SettingsActivity">
|
android:parentActivityName="org.briarproject.briar.android.account.NewOrRecoverActivity">
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="android.support.PARENT_ACTIVITY"
|
android:name="android.support.PARENT_ACTIVITY"
|
||||||
android:value="org.briarproject.briar.android.settings.SettingsActivity" />
|
android:value="org.briarproject.briar.android.account.NewOrRecoverActivity" />
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name="org.briarproject.briar.android.conversation.ConversationActivity"
|
android:name="org.briarproject.briar.android.conversation.ConversationActivity"
|
||||||
android:label="@string/app_name"
|
android:label="@string/app_name"
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import org.briarproject.briar.R;
|
|||||||
import org.briarproject.briar.android.activity.ActivityComponent;
|
import org.briarproject.briar.android.activity.ActivityComponent;
|
||||||
import org.briarproject.briar.android.activity.BaseActivity;
|
import org.briarproject.briar.android.activity.BaseActivity;
|
||||||
import org.briarproject.briar.android.fragment.BaseFragment;
|
import org.briarproject.briar.android.fragment.BaseFragment;
|
||||||
|
import org.briarproject.briar.android.socialbackup.RecoverActivity;
|
||||||
|
|
||||||
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TASK;
|
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TASK;
|
||||||
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP;
|
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP;
|
||||||
@@ -14,7 +15,8 @@ import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK;
|
|||||||
import static android.content.Intent.FLAG_ACTIVITY_TASK_ON_HOME;
|
import static android.content.Intent.FLAG_ACTIVITY_TASK_ON_HOME;
|
||||||
|
|
||||||
public class NewOrRecoverActivity extends BaseActivity implements
|
public class NewOrRecoverActivity extends BaseActivity implements
|
||||||
BaseFragment.BaseFragmentListener, SetupNewAccountChosenListener {
|
BaseFragment.BaseFragmentListener, SetupNewAccountChosenListener,
|
||||||
|
RecoverAccountListener {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void injectActivity(ActivityComponent component) {
|
public void injectActivity(ActivityComponent component) {
|
||||||
@@ -26,13 +28,13 @@ public class NewOrRecoverActivity extends BaseActivity implements
|
|||||||
super.onCreate(state);
|
super.onCreate(state);
|
||||||
// fade-in after splash screen instead of default animation
|
// fade-in after splash screen instead of default animation
|
||||||
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
|
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
|
||||||
setContentView(R.layout.activity_fragment_container);
|
setContentView(R.layout.activity_fragment_container);
|
||||||
NewOrRecoverFragment fragment = NewOrRecoverFragment.newInstance();
|
NewOrRecoverFragment fragment = NewOrRecoverFragment.newInstance();
|
||||||
showInitialFragment(fragment);
|
showInitialFragment(fragment);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setupNewAccountChosen () {
|
public void setupNewAccountChosen() {
|
||||||
finish();
|
finish();
|
||||||
Intent i = new Intent(this, SetupActivity.class);
|
Intent i = new Intent(this, SetupActivity.class);
|
||||||
i.addFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TOP |
|
i.addFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TOP |
|
||||||
@@ -40,6 +42,14 @@ public class NewOrRecoverActivity extends BaseActivity implements
|
|||||||
startActivity(i);
|
startActivity(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void recoverAccountChosen() {
|
||||||
|
finish();
|
||||||
|
Intent i = new Intent(this, RecoverActivity.class);
|
||||||
|
i.addFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TOP |
|
||||||
|
FLAG_ACTIVITY_CLEAR_TASK | FLAG_ACTIVITY_TASK_ON_HOME);
|
||||||
|
startActivity(i);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void runOnDbThread(Runnable runnable) {
|
public void runOnDbThread(Runnable runnable) {
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,8 @@ public class NewOrRecoverFragment extends BaseFragment {
|
|||||||
|
|
||||||
public static final String TAG = NewOrRecoverFragment.class.getName();
|
public static final String TAG = NewOrRecoverFragment.class.getName();
|
||||||
|
|
||||||
protected SetupNewAccountChosenListener listener;
|
protected SetupNewAccountChosenListener setupNewAccountListener;
|
||||||
|
protected RecoverAccountListener recoverAccountListener;
|
||||||
|
|
||||||
public static NewOrRecoverFragment newInstance() {
|
public static NewOrRecoverFragment newInstance() {
|
||||||
Bundle bundle = new Bundle();
|
Bundle bundle = new Bundle();
|
||||||
@@ -38,9 +39,14 @@ public class NewOrRecoverFragment extends BaseFragment {
|
|||||||
ViewGroup container, @Nullable Bundle savedInstanceState) {
|
ViewGroup container, @Nullable Bundle savedInstanceState) {
|
||||||
View view = inflater.inflate(R.layout.fragment_new_or_recover,
|
View view = inflater.inflate(R.layout.fragment_new_or_recover,
|
||||||
container, false);
|
container, false);
|
||||||
Button button = view.findViewById(R.id.buttonSetupNewAccount);
|
Button newAccountButton = view.findViewById(R.id.buttonSetupNewAccount);
|
||||||
button.setOnClickListener(e -> {
|
newAccountButton.setOnClickListener(e -> {
|
||||||
listener.setupNewAccountChosen();
|
setupNewAccountListener.setupNewAccountChosen();
|
||||||
|
});
|
||||||
|
|
||||||
|
Button recoverAccountButton = view.findViewById(R.id.buttonRestoreAccount);
|
||||||
|
recoverAccountButton.setOnClickListener(e -> {
|
||||||
|
recoverAccountListener.recoverAccountChosen();
|
||||||
});
|
});
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
@@ -48,7 +54,8 @@ public class NewOrRecoverFragment extends BaseFragment {
|
|||||||
@Override
|
@Override
|
||||||
public void onAttach(Context context) {
|
public void onAttach(Context context) {
|
||||||
super.onAttach(context);
|
super.onAttach(context);
|
||||||
listener = (SetupNewAccountChosenListener) context;
|
setupNewAccountListener = (SetupNewAccountChosenListener) context;
|
||||||
|
recoverAccountListener = (RecoverAccountListener) context;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
package org.briarproject.briar.android.account;
|
||||||
|
|
||||||
|
import androidx.annotation.UiThread;
|
||||||
|
|
||||||
|
public interface RecoverAccountListener {
|
||||||
|
@UiThread
|
||||||
|
void recoverAccountChosen();
|
||||||
|
}
|
||||||
@@ -85,6 +85,8 @@ import org.briarproject.briar.android.socialbackup.CustodianSelectorFragment;
|
|||||||
import org.briarproject.briar.android.socialbackup.DistributedBackupActivity;
|
import org.briarproject.briar.android.socialbackup.DistributedBackupActivity;
|
||||||
import org.briarproject.briar.android.socialbackup.ExistingBackupFragment;
|
import org.briarproject.briar.android.socialbackup.ExistingBackupFragment;
|
||||||
import org.briarproject.briar.android.socialbackup.OldDistributedBackupActivity;
|
import org.briarproject.briar.android.socialbackup.OldDistributedBackupActivity;
|
||||||
|
import org.briarproject.briar.android.socialbackup.OwnerRecoveryModeExplainerFragment;
|
||||||
|
import org.briarproject.briar.android.socialbackup.RecoverActivity;
|
||||||
import org.briarproject.briar.android.socialbackup.ShardsSentFragment;
|
import org.briarproject.briar.android.socialbackup.ShardsSentFragment;
|
||||||
import org.briarproject.briar.android.socialbackup.ThresholdSelectorFragment;
|
import org.briarproject.briar.android.socialbackup.ThresholdSelectorFragment;
|
||||||
import org.briarproject.briar.android.socialbackup.creation.CreateBackupController;
|
import org.briarproject.briar.android.socialbackup.creation.CreateBackupController;
|
||||||
@@ -257,8 +259,8 @@ public interface ActivityComponent {
|
|||||||
void inject(ThresholdSelectorFragment thresholdSelectorFragment);
|
void inject(ThresholdSelectorFragment thresholdSelectorFragment);
|
||||||
|
|
||||||
void inject(DistributedBackupActivity distributedBackupActivity);
|
void inject(DistributedBackupActivity distributedBackupActivity);
|
||||||
// void inject(CreateBackupController createBackupController);
|
|
||||||
// void inject(CustodianDisplayFragment custodianDisplayFragment);
|
void inject(RecoverActivity recoverActivity);
|
||||||
|
|
||||||
void inject(DatabaseComponent databaseComponent);
|
void inject(DatabaseComponent databaseComponent);
|
||||||
|
|
||||||
@@ -266,6 +268,8 @@ public interface ActivityComponent {
|
|||||||
|
|
||||||
void inject(ShardsSentFragment shardsSentFragment);
|
void inject(ShardsSentFragment shardsSentFragment);
|
||||||
|
|
||||||
|
void inject(OwnerRecoveryModeExplainerFragment ownerRecoveryModeExplainerFragment);
|
||||||
|
|
||||||
void inject(ExistingBackupFragment existingBackupFragment);
|
void inject(ExistingBackupFragment existingBackupFragment);
|
||||||
|
|
||||||
void inject(NewOrRecoverFragment newOrRecoverFragment);
|
void inject(NewOrRecoverFragment newOrRecoverFragment);
|
||||||
|
|||||||
@@ -0,0 +1,52 @@
|
|||||||
|
package org.briarproject.briar.android.socialbackup;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.View;
|
||||||
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.Button;
|
||||||
|
|
||||||
|
import org.briarproject.briar.R;
|
||||||
|
import org.briarproject.briar.android.activity.ActivityComponent;
|
||||||
|
import org.briarproject.briar.android.fragment.BaseFragment;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
|
public class OwnerRecoveryModeExplainerFragment extends BaseFragment {
|
||||||
|
|
||||||
|
public static final String TAG =
|
||||||
|
OwnerRecoveryModeExplainerFragment.class.getName();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreate(@Nullable Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
requireActivity().setTitle(R.string.title_recovery_mode);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Nullable
|
||||||
|
@Override
|
||||||
|
public View onCreateView(@NonNull LayoutInflater inflater,
|
||||||
|
@Nullable ViewGroup container,
|
||||||
|
@Nullable Bundle savedInstanceState) {
|
||||||
|
View view = inflater.inflate(R.layout.fragment_recovery_owner_explainer,
|
||||||
|
container, false);
|
||||||
|
// Button button = view.findViewById(R.id.button);
|
||||||
|
// button.setOnClickListener(e -> {
|
||||||
|
// listener.shardsSentDismissed();
|
||||||
|
// });
|
||||||
|
|
||||||
|
return view;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void injectFragment(ActivityComponent component) {
|
||||||
|
component.inject(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getUniqueTag() {
|
||||||
|
return TAG;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
package org.briarproject.briar.android.socialbackup;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import org.briarproject.briar.R;
|
||||||
|
import org.briarproject.briar.android.activity.ActivityComponent;
|
||||||
|
import org.briarproject.briar.android.activity.BriarActivity;
|
||||||
|
import org.briarproject.briar.android.fragment.BaseFragment;
|
||||||
|
|
||||||
|
public class RecoverActivity extends BriarActivity implements
|
||||||
|
BaseFragment.BaseFragmentListener {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
setContentView(R.layout.activity_recover);
|
||||||
|
|
||||||
|
OwnerRecoveryModeExplainerFragment fragment = new OwnerRecoveryModeExplainerFragment();
|
||||||
|
showInitialFragment(fragment);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void injectActivity(ActivityComponent component) {
|
||||||
|
component.inject(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
8
briar-android/src/main/res/layout/activity_recover.xml
Normal file
8
briar-android/src/main/res/layout/activity_recover.xml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:id="@+id/fragmentContainer"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
@@ -717,4 +717,5 @@
|
|||||||
<string name="social_backup_shard_sent">You have sent a social backup shard.</string>
|
<string name="social_backup_shard_sent">You have sent a social backup shard.</string>
|
||||||
|
|
||||||
<string name="activity_name_new_or_recover_account">Create new account or recover existing account</string>
|
<string name="activity_name_new_or_recover_account">Create new account or recover existing account</string>
|
||||||
|
<string name="activity_name_recovery">Recover Account</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
Reference in New Issue
Block a user