From 05c1aa03779b6bf2a45e2ab89cb7e7f486eac037 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Sat, 26 Jan 2019 15:12:38 +0100 Subject: show spinning wheel in restore backup activity --- .../de/pixart/messenger/ui/ImportBackupActivity.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'src/main/java/de/pixart/messenger/ui') diff --git a/src/main/java/de/pixart/messenger/ui/ImportBackupActivity.java b/src/main/java/de/pixart/messenger/ui/ImportBackupActivity.java index f1c9eea25..4aa4dbfed 100644 --- a/src/main/java/de/pixart/messenger/ui/ImportBackupActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ImportBackupActivity.java @@ -14,6 +14,7 @@ import android.support.v7.app.AlertDialog; import android.support.v7.widget.Toolbar; import android.util.Log; import android.view.LayoutInflater; +import android.view.View; import android.widget.Toast; import java.util.List; @@ -63,6 +64,7 @@ public class ImportBackupActivity extends ActionBarActivity implements ServiceCo ImportBackupService.ImportBackupServiceBinder binder = (ImportBackupService.ImportBackupServiceBinder) service; this.service = binder.getService(); this.service.addOnBackupProcessedListener(this); + setLoadingState(this.service.getLoadingState()); this.service.loadBackupFiles(this); } @@ -73,9 +75,7 @@ public class ImportBackupActivity extends ActionBarActivity implements ServiceCo @Override public void onBackupFilesLoaded(final List files) { - runOnUiThread(() -> { - backupFileAdapter.setFiles(files); - }); + runOnUiThread(() -> backupFileAdapter.setFiles(files)); } @Override @@ -92,12 +92,20 @@ public class ImportBackupActivity extends ActionBarActivity implements ServiceCo Intent intent = new Intent(this, ImportBackupService.class); intent.putExtra("password", password); intent.putExtra("file", backupFile.getFile().getAbsolutePath()); + setLoadingState(true); ContextCompat.startForegroundService(this, intent); }); builder.setCancelable(false); builder.create().show(); } + private void setLoadingState(final boolean loadingState) { + binding.coordinator.setVisibility(loadingState ? View.GONE : View.VISIBLE); + binding.inProgress.setVisibility(loadingState ? View.VISIBLE : View.GONE); + setTitle(loadingState ? R.string.restoring_backup : R.string.restore_backup); + configureActionBar(getSupportActionBar(), !loadingState); + } + @Override public void onBackupRestored() { runOnUiThread(() -> { @@ -111,6 +119,7 @@ public class ImportBackupActivity extends ActionBarActivity implements ServiceCo @Override public void onBackupDecryptionFailed() { runOnUiThread(() -> { + setLoadingState(false); Snackbar.make(binding.coordinator, R.string.unable_to_decrypt_backup, Snackbar.LENGTH_LONG).show(); }); } @@ -118,6 +127,7 @@ public class ImportBackupActivity extends ActionBarActivity implements ServiceCo @Override public void onBackupRestoreFailed() { runOnUiThread(() -> { + setLoadingState(false); Snackbar.make(binding.coordinator, R.string.unable_to_restore_backup, Snackbar.LENGTH_LONG).show(); }); } -- cgit v1.2.3