diff options
| author | Vincent Breitmoser <valodim@mugenguild.com> | 2015-02-27 23:09:35 +0100 | 
|---|---|---|
| committer | Vincent Breitmoser <valodim@mugenguild.com> | 2015-02-27 23:10:02 +0100 | 
| commit | aec9bdfc1e30c590a22d4860b9e955c5cb570a3a (patch) | |
| tree | 286044f4446bf16b6e1625c1bc330b59f4ad536a /OpenKeychain | |
| parent | 863f4e6ac18edbeb0dde5c79b5a4808f7915dd0c (diff) | |
| download | open-keychain-aec9bdfc1e30c590a22d4860b9e955c5cb570a3a.tar.gz open-keychain-aec9bdfc1e30c590a22d4860b9e955c5cb570a3a.tar.bz2 open-keychain-aec9bdfc1e30c590a22d4860b9e955c5cb570a3a.zip  | |
transition status color in key view
Diffstat (limited to 'OpenKeychain')
| -rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java | 33 | 
1 files changed, 30 insertions, 3 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java index f6c56d965..d14455511 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java @@ -18,11 +18,14 @@  package org.sufficientlysecure.keychain.ui; +import android.animation.ArgbEvaluator; +import android.animation.ObjectAnimator;  import android.annotation.TargetApi;  import android.app.ActivityOptions;  import android.content.Intent;  import android.database.Cursor;  import android.graphics.Bitmap; +import android.graphics.Color;  import android.net.Uri;  import android.nfc.NdefMessage;  import android.nfc.NdefRecord; @@ -717,6 +720,8 @@ public class ViewKeyActivity extends BaseActivity implements          }      } +    int mPreviousColor = 0; +      @Override      public void onLoadFinished(Loader<Cursor> loader, Cursor data) {          /* TODO better error handling? May cause problems when a key is deleted, @@ -861,9 +866,31 @@ public class ViewKeyActivity extends BaseActivity implements                              mFab.setVisibility(View.VISIBLE);                          }                      } -                    mToolbar.setBackgroundColor(color); -                    mStatusBar.setBackgroundColor(color); -                    mBigToolbar.setBackgroundColor(color); + +                    if (mPreviousColor == 0 || mPreviousColor == color) { +                        mToolbar.setBackgroundColor(color); +                        mStatusBar.setBackgroundColor(color); +                        mBigToolbar.setBackgroundColor(color); +                        mPreviousColor = color; +                    } else { +                        ObjectAnimator colorFade1 = +                                ObjectAnimator.ofObject(mToolbar, "backgroundColor", +                                        new ArgbEvaluator(), mPreviousColor, color); +                        ObjectAnimator colorFade2 = +                                ObjectAnimator.ofObject(mStatusBar, "backgroundColor", +                                        new ArgbEvaluator(), mPreviousColor, color); +                        ObjectAnimator colorFade3 = +                                ObjectAnimator.ofObject(mBigToolbar, "backgroundColor", +                                        new ArgbEvaluator(), mPreviousColor, color); + +                        colorFade1.setDuration(800); +                        colorFade2.setDuration(800); +                        colorFade3.setDuration(800); +                        colorFade1.start(); +                        colorFade2.start(); +                        colorFade3.start(); +                        mPreviousColor = color; +                    }                      mStatusImage.setAlpha(80);  | 
