diff options
author | Jorim Jaggi <jjaggi@google.com> | 2015-06-09 15:31:28 -0700 |
---|---|---|
committer | Jorim Jaggi <jjaggi@google.com> | 2015-06-10 15:17:24 -0700 |
commit | ff41a9a5a6e307ca6dcbc45361854b5ac4e59857 (patch) | |
tree | 362a3c53f034682ac398bb73af428988f22b861e /src/com/android/settings/ConfirmDeviceCredentialBaseActivity.java | |
parent | 1fdd4f521ced6bece495fcba9d434c98c2da7731 (diff) | |
download | packages_apps_Settings-ff41a9a5a6e307ca6dcbc45361854b5ac4e59857.zip packages_apps_Settings-ff41a9a5a6e307ca6dcbc45361854b5ac4e59857.tar.gz packages_apps_Settings-ff41a9a5a6e307ca6dcbc45361854b5ac4e59857.tar.bz2 |
Animations/success state for external confirm device credentials (2/2)
Bug: 20929186
Change-Id: I4489dd37f1148fb03315ec337a546eee04660cb5
Diffstat (limited to 'src/com/android/settings/ConfirmDeviceCredentialBaseActivity.java')
-rw-r--r-- | src/com/android/settings/ConfirmDeviceCredentialBaseActivity.java | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/src/com/android/settings/ConfirmDeviceCredentialBaseActivity.java b/src/com/android/settings/ConfirmDeviceCredentialBaseActivity.java index fe3de97..f56c315 100644 --- a/src/com/android/settings/ConfirmDeviceCredentialBaseActivity.java +++ b/src/com/android/settings/ConfirmDeviceCredentialBaseActivity.java @@ -16,17 +16,23 @@ package com.android.settings; +import android.app.Fragment; import android.app.KeyguardManager; import android.os.Bundle; import android.view.MenuItem; import android.view.WindowManager; -public class ConfirmDeviceCredentialBaseActivity extends SettingsActivity { +public abstract class ConfirmDeviceCredentialBaseActivity extends SettingsActivity { + + private boolean mRestoring; + private boolean mDark; + private boolean mEnterAnimationPending; @Override protected void onCreate(Bundle savedState) { if (getIntent().getBooleanExtra(ConfirmDeviceCredentialBaseFragment.DARK_THEME, false)) { setTheme(R.style.Theme_ConfirmDeviceCredentialsDark); + mDark = true; } super.onCreate(savedState); boolean deviceLocked = getSystemService(KeyguardManager.class).isKeyguardLocked(); @@ -41,6 +47,7 @@ public class ConfirmDeviceCredentialBaseActivity extends SettingsActivity { getActionBar().setDisplayHomeAsUpEnabled(true); getActionBar().setHomeButtonEnabled(true); } + mRestoring = savedState != null; } @Override @@ -51,4 +58,37 @@ public class ConfirmDeviceCredentialBaseActivity extends SettingsActivity { } return super.onOptionsItemSelected(item); } + + @Override + public void onResume() { + super.onResume(); + if (!isChangingConfigurations() && !mRestoring && mDark) { + prepareEnterAnimation(); + mEnterAnimationPending = true; + } + } + + private ConfirmDeviceCredentialBaseFragment getFragment() { + Fragment fragment = getFragmentManager().findFragmentById(R.id.main_content); + if (fragment != null && fragment instanceof ConfirmDeviceCredentialBaseFragment) { + return (ConfirmDeviceCredentialBaseFragment) fragment; + } + return null; + } + + @Override + public void onEnterAnimationComplete() { + super.onEnterAnimationComplete(); + if (mEnterAnimationPending) { + startEnterAnimation(); + } + } + + public void prepareEnterAnimation() { + getFragment().prepareEnterAnimation(); + } + + public void startEnterAnimation() { + getFragment().startEnterAnimation(); + } } |