Loading quickstep/src/com/android/launcher3/taskbar/TaskbarView.java +18 −5 Original line number Diff line number Diff line Loading @@ -120,11 +120,6 @@ public class TaskbarView extends LinearLayout implements FolderIcon.FolderIconPa } protected void init(int numHotseatIcons, int numRecentIcons) { mLayoutTransition = new LayoutTransition(); addUpdateListenerForAllLayoutTransitions( () -> mControllerCallbacks.onItemPositionsChanged(this)); setLayoutTransition(mLayoutTransition); mHotseatStartIndex = 0; mHotseatEndIndex = mHotseatStartIndex + numHotseatIcons - 1; updateHotseatItems(new ItemInfo[numHotseatIcons]); Loading @@ -135,6 +130,14 @@ public class TaskbarView extends LinearLayout implements FolderIcon.FolderIconPa mRecentsStartIndex = dividerIndex + 1; mRecentsEndIndex = mRecentsStartIndex + numRecentIcons - 1; updateRecentTasks(new Task[numRecentIcons]); mLayoutTransition = new LayoutTransition(); addUpdateListenerForAllLayoutTransitions(() -> { if (getLayoutTransition() == mLayoutTransition) { mControllerCallbacks.onItemPositionsChanged(this); } }); setLayoutTransition(mLayoutTransition); } private void addUpdateListenerForAllLayoutTransitions(Runnable onUpdate) { Loading @@ -159,10 +162,20 @@ public class TaskbarView extends LinearLayout implements FolderIcon.FolderIconPa } protected void cleanup() { endAllLayoutTransitionAnimators(); setLayoutTransition(null); removeAllViews(); mHotseatRecentsDivider = null; } private void endAllLayoutTransitionAnimators() { mLayoutTransition.getAnimator(LayoutTransition.CHANGE_APPEARING).end(); mLayoutTransition.getAnimator(LayoutTransition.CHANGE_DISAPPEARING).end(); mLayoutTransition.getAnimator(LayoutTransition.CHANGING).end(); mLayoutTransition.getAnimator(LayoutTransition.APPEARING).end(); mLayoutTransition.getAnimator(LayoutTransition.DISAPPEARING).end(); } /** * Sets the alpha of the background color behind all the Taskbar contents. * @param alpha 0 is fully transparent, 1 is fully opaque. Loading Loading
quickstep/src/com/android/launcher3/taskbar/TaskbarView.java +18 −5 Original line number Diff line number Diff line Loading @@ -120,11 +120,6 @@ public class TaskbarView extends LinearLayout implements FolderIcon.FolderIconPa } protected void init(int numHotseatIcons, int numRecentIcons) { mLayoutTransition = new LayoutTransition(); addUpdateListenerForAllLayoutTransitions( () -> mControllerCallbacks.onItemPositionsChanged(this)); setLayoutTransition(mLayoutTransition); mHotseatStartIndex = 0; mHotseatEndIndex = mHotseatStartIndex + numHotseatIcons - 1; updateHotseatItems(new ItemInfo[numHotseatIcons]); Loading @@ -135,6 +130,14 @@ public class TaskbarView extends LinearLayout implements FolderIcon.FolderIconPa mRecentsStartIndex = dividerIndex + 1; mRecentsEndIndex = mRecentsStartIndex + numRecentIcons - 1; updateRecentTasks(new Task[numRecentIcons]); mLayoutTransition = new LayoutTransition(); addUpdateListenerForAllLayoutTransitions(() -> { if (getLayoutTransition() == mLayoutTransition) { mControllerCallbacks.onItemPositionsChanged(this); } }); setLayoutTransition(mLayoutTransition); } private void addUpdateListenerForAllLayoutTransitions(Runnable onUpdate) { Loading @@ -159,10 +162,20 @@ public class TaskbarView extends LinearLayout implements FolderIcon.FolderIconPa } protected void cleanup() { endAllLayoutTransitionAnimators(); setLayoutTransition(null); removeAllViews(); mHotseatRecentsDivider = null; } private void endAllLayoutTransitionAnimators() { mLayoutTransition.getAnimator(LayoutTransition.CHANGE_APPEARING).end(); mLayoutTransition.getAnimator(LayoutTransition.CHANGE_DISAPPEARING).end(); mLayoutTransition.getAnimator(LayoutTransition.CHANGING).end(); mLayoutTransition.getAnimator(LayoutTransition.APPEARING).end(); mLayoutTransition.getAnimator(LayoutTransition.DISAPPEARING).end(); } /** * Sets the alpha of the background color behind all the Taskbar contents. * @param alpha 0 is fully transparent, 1 is fully opaque. Loading