X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2FNewTransactionActivity.java;h=6709b7d9e566af4acceb203c54e6df951b8f83cc;hp=7fc8bcc817eb43272d8819b0d4d04fe74706bc41;hb=df4148e4f3dbfeb798455e33b96838c386ab6797;hpb=c8c3f12402b41edcbf323a68857007c18e1b6220 diff --git a/app/src/main/java/net/ktnx/mobileledger/NewTransactionActivity.java b/app/src/main/java/net/ktnx/mobileledger/NewTransactionActivity.java index 7fc8bcc8..6709b7d9 100644 --- a/app/src/main/java/net/ktnx/mobileledger/NewTransactionActivity.java +++ b/app/src/main/java/net/ktnx/mobileledger/NewTransactionActivity.java @@ -1,11 +1,14 @@ package net.ktnx.mobileledger; +import android.animation.AnimatorInflater; +import android.animation.AnimatorSet; import android.annotation.TargetApi; import android.database.Cursor; import android.database.MatrixCursor; import android.database.sqlite.SQLiteDatabase; import android.os.Build; import android.os.Bundle; +import android.os.Handler; import android.preference.PreferenceManager; import android.provider.FontsContract; import android.support.design.widget.FloatingActionButton; @@ -23,6 +26,7 @@ import android.view.View; import android.widget.AutoCompleteTextView; import android.widget.EditText; import android.widget.FilterQueryProvider; +import android.widget.ProgressBar; import android.widget.SimpleCursorAdapter; import android.widget.TableLayout; import android.widget.TableRow; @@ -50,6 +54,7 @@ import java.util.Objects; public class NewTransactionActivity extends AppCompatActivity implements TaskCallback { private TableLayout table; private FloatingActionButton fab; + private ProgressBar progress; private TextView text_date; private TextView text_descr; private static SaveTransactionTask saver; @@ -75,6 +80,8 @@ public class NewTransactionActivity extends AppCompatActivity implements TaskCal new_transaction_save_clicked(view); } }); + progress = findViewById(R.id.save_transaction_progress); + Objects.requireNonNull(getSupportActionBar()).setDisplayHomeAsUpEnabled(true); table = findViewById(R.id.new_transaction_accounts_table); for (int i = 0; i < table.getChildCount(); i++) { @@ -86,6 +93,7 @@ public class NewTransactionActivity extends AppCompatActivity implements TaskCal public void new_transaction_save_clicked(View view) { fab.setEnabled(false); + progress.setVisibility(View.VISIBLE); saver = new SaveTransactionTask(this); @@ -217,7 +225,27 @@ public class NewTransactionActivity extends AppCompatActivity implements TaskCal @Override public void done() { + fab.setImageResource(R.drawable.ic_check_white_24dp); fab.setEnabled(true); + + AnimatorSet set = (AnimatorSet) AnimatorInflater.loadAnimator(this, R.animator.new_trans_animation); + set.setTarget(fab); + set.start(); + final Handler at_fade_out = new Handler(); + at_fade_out.postDelayed(new Runnable() { + @Override + public void run() { + + final Handler at_fade_in = new Handler(); + at_fade_in.postDelayed(new Runnable() { + @Override + public void run() { + fab.setImageResource(R.drawable.ic_save_white_24dp); + } + }, 1000); + } + }, 500); + progress.setVisibility(View.INVISIBLE); reset_form(); }