diff --git a/packages/SystemUI/res/anim/tv_pip_onboarding_background_enter_animation.xml b/packages/SystemUI/res/anim/tv_pip_onboarding_background_enter_animation.xml new file mode 100644 index 0000000000000..9ab41d0be5253 --- /dev/null +++ b/packages/SystemUI/res/anim/tv_pip_onboarding_background_enter_animation.xml @@ -0,0 +1,25 @@ + + + + + + + diff --git a/packages/SystemUI/res/layout/tv_pip_onboarding.xml b/packages/SystemUI/res/layout/tv_pip_onboarding.xml index 288ad1edd4719..fe80b9464a019 100644 --- a/packages/SystemUI/res/layout/tv_pip_onboarding.xml +++ b/packages/SystemUI/res/layout/tv_pip_onboarding.xml @@ -21,8 +21,13 @@ android:id="@+id/pip_onboarding" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="#B3000000" android:orientation="vertical"> + 40 + + 1000 1000 diff --git a/packages/SystemUI/res/values/strings_tv.xml b/packages/SystemUI/res/values/strings_tv.xml index dcd165418b718..b1d23d8998520 100644 --- a/packages/SystemUI/res/values/strings_tv.xml +++ b/packages/SystemUI/res/values/strings_tv.xml @@ -32,9 +32,9 @@ - PIP mode + Picture-in-picture - To control PIP press and hold the HOME button on the remote + This keeps your video in view until you play another one. Press and hold HOME to control it. Got it diff --git a/packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java b/packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java index 398572abcdce8..9a87cfc97db5f 100644 --- a/packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java +++ b/packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java @@ -24,6 +24,7 @@ import android.app.Activity; import android.graphics.drawable.AnimationDrawable; import android.os.Bundle; import android.view.View; +import android.view.KeyEvent; import android.widget.ImageView; import com.android.systemui.R; @@ -33,6 +34,7 @@ import com.android.systemui.R; */ public class PipOnboardingActivity extends Activity implements PipManager.Listener { private final PipManager mPipManager = PipManager.getInstance(); + private AnimatorSet mEnterAnimator; @Override protected void onCreate(Bundle bundle) { @@ -51,22 +53,25 @@ public class PipOnboardingActivity extends Activity implements PipManager.Listen @Override public void onResume() { super.onResume(); - AnimatorSet enterAnimator = new AnimatorSet(); - enterAnimator.playTogether( + mEnterAnimator = new AnimatorSet(); + mEnterAnimator.playTogether( + loadAnimator(R.id.background, R.anim.tv_pip_onboarding_background_enter_animation), loadAnimator(R.id.remote, R.anim.tv_pip_onboarding_image_enter_animation), loadAnimator(R.id.remote_button, R.anim.tv_pip_onboarding_image_enter_animation), loadAnimator(R.id.title, R.anim.tv_pip_onboarding_title_enter_animation), loadAnimator(R.id.description, R.anim.tv_pip_onboarding_description_enter_animation), loadAnimator(R.id.button, R.anim.tv_pip_onboarding_button_enter_animation)); - enterAnimator.addListener(new AnimatorListenerAdapter() { + mEnterAnimator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { ImageView button = (ImageView) findViewById(R.id.remote_button); ((AnimationDrawable) button.getDrawable()).start(); } }); - enterAnimator.start(); + int delay = getResources().getInteger(R.integer.tv_pip_onboarding_anim_start_delay); + mEnterAnimator.setStartDelay(delay); + mEnterAnimator.start(); } private Animator loadAnimator(int viewResId, int animResId) { @@ -75,6 +80,22 @@ public class PipOnboardingActivity extends Activity implements PipManager.Listen return animator; } + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) { + if (mEnterAnimator.isStarted()) { + return true; + } + return super.onKeyUp(keyCode, event); + } + + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + if (mEnterAnimator.isStarted()) { + return true; + } + return super.onKeyDown(keyCode, event); + } + @Override public void onPause() { super.onPause();