From bbd7f661918fa2a96c7c2f2d954c0a10dc24ce9b Mon Sep 17 00:00:00 2001 From: zeapo Date: Mon, 5 Jun 2017 14:30:19 +0200 Subject: add autoSync on startup --- .../java/com/zeapo/pwdstore/git/GitAsyncTask.java | 30 +++++++++++++++------- 1 file changed, 21 insertions(+), 9 deletions(-) (limited to 'app/src/main/java/com/zeapo/pwdstore/git/GitAsyncTask.java') diff --git a/app/src/main/java/com/zeapo/pwdstore/git/GitAsyncTask.java b/app/src/main/java/com/zeapo/pwdstore/git/GitAsyncTask.java index 6b0edb7a..644d3c6b 100644 --- a/app/src/main/java/com/zeapo/pwdstore/git/GitAsyncTask.java +++ b/app/src/main/java/com/zeapo/pwdstore/git/GitAsyncTask.java @@ -3,7 +3,10 @@ package com.zeapo.pwdstore.git; import android.app.Activity; import android.app.ProgressDialog; import android.os.AsyncTask; +import android.support.design.widget.Snackbar; +import android.text.Html; import android.util.Log; +import android.widget.Toast; import com.zeapo.pwdstore.PasswordStore; import com.zeapo.pwdstore.R; @@ -13,26 +16,35 @@ import org.eclipse.jgit.api.GitCommand; import org.eclipse.jgit.api.StatusCommand; -public class GitAsyncTask extends AsyncTask { +public class GitAsyncTask extends AsyncTask { private Activity activity; private boolean finishOnEnd; private boolean refreshListOnEnd; private ProgressDialog dialog; private GitOperation operation; + private Snackbar snack; public GitAsyncTask(Activity activity, boolean finishOnEnd, boolean refreshListOnEnd, GitOperation operation) { this.activity = activity; this.finishOnEnd = finishOnEnd; this.refreshListOnEnd = refreshListOnEnd; this.operation = operation; - - dialog = new ProgressDialog(this.activity); } protected void onPreExecute() { - this.dialog.setMessage(activity.getResources().getString(R.string.running_dialog_text)); - this.dialog.setCancelable(false); - this.dialog.show(); +// Toast.makeText(activity.getApplicationContext(), String.format("Running %s", operation.toString()), Toast.LENGTH_LONG).show(); + snack = Snackbar.make(activity.findViewById(R.id.main_layout), + Html.fromHtml(String.format("Running the Git operation %s", operation.toString())), + Snackbar.LENGTH_INDEFINITE); + snack.show(); + } + + protected void onProgressUpdate(String... progress) { + if (this.snack != null) snack.dismiss(); + snack = Snackbar.make(activity.findViewById(R.id.main_layout), + Html.fromHtml(String.format("Running: %s", progress[0])), + Snackbar.LENGTH_INDEFINITE); + snack.show(); } @Override @@ -51,7 +63,7 @@ public class GitAsyncTask extends AsyncTask { } else { command.call(); } - + publishProgress(command.getClass().getName()); } catch (Exception e) { e.printStackTrace(); return e.getMessage() + "\nCaused by:\n" + e.getCause(); @@ -61,9 +73,9 @@ public class GitAsyncTask extends AsyncTask { } protected void onPostExecute(String result) { - if (this.dialog != null) + if (this.snack != null) try { - this.dialog.dismiss(); + this.snack.dismiss(); } catch (Exception e) { // ignore } -- cgit v1.2.3