From: Damyan Ivanov Date: Sat, 21 Aug 2021 16:15:50 +0000 (+0300) Subject: gray out the backup controls if there is nothing to backup X-Git-Tag: v0.20.0~11 X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=commitdiff_plain;h=c23ad9955ae6fd92f6fac4fb176678ee3eb8fe7c gray out the backup controls if there is nothing to backup --- diff --git a/app/src/main/java/net/ktnx/mobileledger/BackupsActivity.java b/app/src/main/java/net/ktnx/mobileledger/BackupsActivity.java index 9a1f706a..65ab5446 100644 --- a/app/src/main/java/net/ktnx/mobileledger/BackupsActivity.java +++ b/app/src/main/java/net/ktnx/mobileledger/BackupsActivity.java @@ -33,6 +33,7 @@ import com.google.android.material.snackbar.Snackbar; import net.ktnx.mobileledger.async.ConfigReader; import net.ktnx.mobileledger.async.ConfigWriter; import net.ktnx.mobileledger.databinding.FragmentBackupsBinding; +import net.ktnx.mobileledger.model.Data; import java.io.IOException; import java.text.DateFormat; @@ -67,6 +68,17 @@ public class BackupsActivity extends AppCompatActivity { restoreChooserLauncher = registerForActivityResult(new ActivityResultContracts.OpenDocument(), this::readConfig); + + Data.observeProfile(this, p -> { + if (p == null) { + b.backupButton.setEnabled(false); + b.backupExplanationText.setEnabled(false); + } + else { + b.backupButton.setEnabled(true); + b.backupExplanationText.setEnabled(true); + } + }); } @Override public boolean onOptionsItemSelected(MenuItem item) { diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java b/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java index c3331ce6..de91ca77 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java @@ -220,6 +220,7 @@ public class MainActivity extends ProfileThemedActivity implements FabManager.Fa } b.btnNoProfilesAdd.setOnClickListener(v -> ProfileDetailActivity.start(this, null)); + b.btnRestore.setOnClickListener(v -> BackupsActivity.start(this)); b.btnAddTransaction.setOnClickListener(this::fabNewTransactionClicked);