Loading libs/WindowManager/Shell/res/layout/tv_pip_menu.xml +1 −1 Original line number Diff line number Diff line Loading @@ -67,7 +67,7 @@ <!-- Temporarily extending the background to show an edu text hint for opening the menu --> <FrameLayout android:id="@+id/tv_pip_menu_edu_text_drawer_placeholder" android:id="@+id/tv_pip_menu_edu_text_container" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@+id/tv_pip" Loading libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/TvPipMenuEduTextDrawer.java +4 −6 Original line number Diff line number Diff line Loading @@ -260,11 +260,12 @@ class TvPipMenuEduTextDrawer extends FrameLayout { }); heightAnimator.start(); mListener.onCloseEduText(); mListener.onCloseEduTextAnimationStart(); } public void onCloseEduTextAnimationEnd() { setVisibility(GONE); mListener.onCloseEduTextAnimationEnd(); } /** Loading Loading @@ -295,11 +296,8 @@ class TvPipMenuEduTextDrawer extends FrameLayout { * A listener for edu text drawer event states. */ interface Listener { /** * The edu text closing impacts the size of the Picture-in-Picture window and influences * how it is positioned on the screen. */ void onCloseEduText(); void onCloseEduTextAnimationStart(); void onCloseEduTextAnimationEnd(); } } libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/TvPipMenuView.java +31 −10 Original line number Diff line number Diff line Loading @@ -57,7 +57,8 @@ import java.util.List; * A View that represents Pip Menu on TV. It's responsible for displaying the Pip menu actions from * the TvPipActionsProvider as well as the buttons for manually moving the PiP. */ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.Listener { public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.Listener, TvPipMenuEduTextDrawer.Listener { private static final String TAG = "TvPipMenuView"; private final TvPipMenuView.Listener mListener; Loading @@ -76,6 +77,7 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L private final View mDimLayer; private final TvPipMenuEduTextDrawer mEduTextDrawer; private final ViewGroup mEduTextContainer; private final int mPipMenuOuterSpace; private final int mPipMenuBorderWidth; Loading Loading @@ -139,9 +141,9 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L mPipMenuBorderWidth = context.getResources() .getDimensionPixelSize(R.dimen.pip_menu_border_width); mEduTextDrawer = new TvPipMenuEduTextDrawer(mContext, mainHandler, mListener); ((FrameLayout) findViewById(R.id.tv_pip_menu_edu_text_drawer_placeholder)) .addView(mEduTextDrawer); mEduTextDrawer = new TvPipMenuEduTextDrawer(mContext, mainHandler, this); mEduTextContainer = (ViewGroup) findViewById(R.id.tv_pip_menu_edu_text_container); mEduTextContainer.addView(mEduTextDrawer); } void onPipTransitionToTargetBoundsStarted(Rect targetBounds) { Loading Loading @@ -235,12 +237,14 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L * pip menu when it gains focus. */ private void updatePipFrameBounds() { if (mPipFrameView.getVisibility() == VISIBLE) { final ViewGroup.LayoutParams pipFrameParams = mPipFrameView.getLayoutParams(); if (pipFrameParams != null) { pipFrameParams.width = mCurrentPipBounds.width() + 2 * mPipMenuBorderWidth; pipFrameParams.height = mCurrentPipBounds.height() + 2 * mPipMenuBorderWidth; mPipFrameView.setLayoutParams(pipFrameParams); } } final ViewGroup.LayoutParams pipViewParams = mPipView.getLayoutParams(); if (pipViewParams != null) { Loading Loading @@ -405,6 +409,17 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L } } @Override public void onCloseEduTextAnimationStart() { mListener.onCloseEduText(); } @Override public void onCloseEduTextAnimationEnd() { mPipFrameView.setVisibility(GONE); mEduTextContainer.setVisibility(GONE); } @Override public boolean dispatchKeyEvent(KeyEvent event) { if (event.getAction() == ACTION_UP) { Loading Loading @@ -551,7 +566,7 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L } } interface Listener extends TvPipMenuEduTextDrawer.Listener { interface Listener { void onBackPress(); Loading @@ -573,5 +588,11 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L * has lost focus. */ void onPipWindowFocusChanged(boolean focused); /** * The edu text closing impacts the size of the Picture-in-Picture window and influences * how it is positioned on the screen. */ void onCloseEduText(); } } Loading
libs/WindowManager/Shell/res/layout/tv_pip_menu.xml +1 −1 Original line number Diff line number Diff line Loading @@ -67,7 +67,7 @@ <!-- Temporarily extending the background to show an edu text hint for opening the menu --> <FrameLayout android:id="@+id/tv_pip_menu_edu_text_drawer_placeholder" android:id="@+id/tv_pip_menu_edu_text_container" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@+id/tv_pip" Loading
libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/TvPipMenuEduTextDrawer.java +4 −6 Original line number Diff line number Diff line Loading @@ -260,11 +260,12 @@ class TvPipMenuEduTextDrawer extends FrameLayout { }); heightAnimator.start(); mListener.onCloseEduText(); mListener.onCloseEduTextAnimationStart(); } public void onCloseEduTextAnimationEnd() { setVisibility(GONE); mListener.onCloseEduTextAnimationEnd(); } /** Loading Loading @@ -295,11 +296,8 @@ class TvPipMenuEduTextDrawer extends FrameLayout { * A listener for edu text drawer event states. */ interface Listener { /** * The edu text closing impacts the size of the Picture-in-Picture window and influences * how it is positioned on the screen. */ void onCloseEduText(); void onCloseEduTextAnimationStart(); void onCloseEduTextAnimationEnd(); } }
libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/TvPipMenuView.java +31 −10 Original line number Diff line number Diff line Loading @@ -57,7 +57,8 @@ import java.util.List; * A View that represents Pip Menu on TV. It's responsible for displaying the Pip menu actions from * the TvPipActionsProvider as well as the buttons for manually moving the PiP. */ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.Listener { public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.Listener, TvPipMenuEduTextDrawer.Listener { private static final String TAG = "TvPipMenuView"; private final TvPipMenuView.Listener mListener; Loading @@ -76,6 +77,7 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L private final View mDimLayer; private final TvPipMenuEduTextDrawer mEduTextDrawer; private final ViewGroup mEduTextContainer; private final int mPipMenuOuterSpace; private final int mPipMenuBorderWidth; Loading Loading @@ -139,9 +141,9 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L mPipMenuBorderWidth = context.getResources() .getDimensionPixelSize(R.dimen.pip_menu_border_width); mEduTextDrawer = new TvPipMenuEduTextDrawer(mContext, mainHandler, mListener); ((FrameLayout) findViewById(R.id.tv_pip_menu_edu_text_drawer_placeholder)) .addView(mEduTextDrawer); mEduTextDrawer = new TvPipMenuEduTextDrawer(mContext, mainHandler, this); mEduTextContainer = (ViewGroup) findViewById(R.id.tv_pip_menu_edu_text_container); mEduTextContainer.addView(mEduTextDrawer); } void onPipTransitionToTargetBoundsStarted(Rect targetBounds) { Loading Loading @@ -235,12 +237,14 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L * pip menu when it gains focus. */ private void updatePipFrameBounds() { if (mPipFrameView.getVisibility() == VISIBLE) { final ViewGroup.LayoutParams pipFrameParams = mPipFrameView.getLayoutParams(); if (pipFrameParams != null) { pipFrameParams.width = mCurrentPipBounds.width() + 2 * mPipMenuBorderWidth; pipFrameParams.height = mCurrentPipBounds.height() + 2 * mPipMenuBorderWidth; mPipFrameView.setLayoutParams(pipFrameParams); } } final ViewGroup.LayoutParams pipViewParams = mPipView.getLayoutParams(); if (pipViewParams != null) { Loading Loading @@ -405,6 +409,17 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L } } @Override public void onCloseEduTextAnimationStart() { mListener.onCloseEduText(); } @Override public void onCloseEduTextAnimationEnd() { mPipFrameView.setVisibility(GONE); mEduTextContainer.setVisibility(GONE); } @Override public boolean dispatchKeyEvent(KeyEvent event) { if (event.getAction() == ACTION_UP) { Loading Loading @@ -551,7 +566,7 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L } } interface Listener extends TvPipMenuEduTextDrawer.Listener { interface Listener { void onBackPress(); Loading @@ -573,5 +588,11 @@ public class TvPipMenuView extends FrameLayout implements TvPipActionsProvider.L * has lost focus. */ void onPipWindowFocusChanged(boolean focused); /** * The edu text closing impacts the size of the Picture-in-Picture window and influences * how it is positioned on the screen. */ void onCloseEduText(); } }