diff --git a/app/src/main/java/eu/faircode/email/ActivitySetup.java b/app/src/main/java/eu/faircode/email/ActivitySetup.java
index 2bb1b2b7bc..143dc40524 100644
--- a/app/src/main/java/eu/faircode/email/ActivitySetup.java
+++ b/app/src/main/java/eu/faircode/email/ActivitySetup.java
@@ -302,6 +302,14 @@ public class ActivitySetup extends ActivityBase implements FragmentManager.OnBac
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
drawerToggle.syncState();
+
+ Intent intent = getIntent();
+ boolean navigate = intent.hasExtra("navigate");
+ if (navigate) {
+ intent.removeExtra("navigate");
+ setIntent(intent);
+ onSetupMore(intent);
+ }
}
@Override
diff --git a/app/src/main/java/eu/faircode/email/FragmentPro.java b/app/src/main/java/eu/faircode/email/FragmentPro.java
index 1d8afec85c..76f2e38429 100644
--- a/app/src/main/java/eu/faircode/email/FragmentPro.java
+++ b/app/src/main/java/eu/faircode/email/FragmentPro.java
@@ -50,6 +50,7 @@ import com.google.android.material.snackbar.Snackbar;
public class FragmentPro extends FragmentBase implements SharedPreferences.OnSharedPreferenceChangeListener {
private TextView tvPending;
private TextView tvActivated;
+ private Button btnBackup;
private TextView tvInfo;
private CheckBox cbHide;
private TextView tvList;
@@ -73,6 +74,7 @@ public class FragmentPro extends FragmentBase implements SharedPreferences.OnSha
tvPending = view.findViewById(R.id.tvPending);
tvActivated = view.findViewById(R.id.tvActivated);
+ btnBackup = view.findViewById(R.id.btnBackup);
tvInfo = view.findViewById(R.id.tvInfo);
cbHide = view.findViewById(R.id.cbHide);
tvList = view.findViewById(R.id.tvList);
@@ -84,6 +86,14 @@ public class FragmentPro extends FragmentBase implements SharedPreferences.OnSha
btnCheck = view.findViewById(R.id.btnCheck);
+ btnBackup.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ startActivity(new Intent(getContext(), ActivitySetup.class).putExtra("navigate", true));
+ }
+ });
+ btnBackup.setVisibility(View.GONE);
+
tvInfo.setText(getString(R.string.title_pro_info)
.replaceAll("^\\s+", "").replaceAll("\\s+", " "));
@@ -283,6 +293,7 @@ public class FragmentPro extends FragmentBase implements SharedPreferences.OnSha
if ("pro".equals(key)) {
boolean pro = ActivityBilling.isPro(getContext());
tvActivated.setVisibility(pro ? View.VISIBLE : View.GONE);
+ btnBackup.setVisibility(pro ? View.VISIBLE : View.GONE);
cbHide.setVisibility(pro ? View.GONE : View.VISIBLE);
} else if ("banner_hidden".equals(key)) {
long banner_hidden = prefs.getLong("banner_hidden", 0);
diff --git a/app/src/main/res/layout/fragment_pro.xml b/app/src/main/res/layout/fragment_pro.xml
index dc82fb95d1..33f109281e 100644
--- a/app/src/main/res/layout/fragment_pro.xml
+++ b/app/src/main/res/layout/fragment_pro.xml
@@ -32,6 +32,16 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvPending" />
+
+
+ app:layout_constraintTop_toBottomOf="@id/btnBackup" />