Loading quickstep/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java +1 −1 Original line number Diff line number Diff line Loading @@ -139,7 +139,7 @@ public class StaggeredWorkspaceAnim { addDepthAnimationForState(launcher, NORMAL, ALPHA_DURATION_MS); mAnimators.play(launcher.getDragLayer().getScrim().createSysuiMultiplierAnim(0f, 1f) mAnimators.play(launcher.getDragLayer().getSysUiScrim().createSysuiMultiplierAnim(0f, 1f) .setDuration(ALPHA_DURATION_MS)); mAnimators.addListener(new AnimatorListenerAdapter() { @Override Loading src/com/android/launcher3/LauncherRootView.java +17 −1 Original line number Diff line number Diff line Loading @@ -4,12 +4,14 @@ import static com.android.launcher3.config.FeatureFlags.SEPARATE_RECENTS_ACTIVIT import android.annotation.TargetApi; import android.content.Context; import android.graphics.Canvas; import android.graphics.Rect; import android.os.Build; import android.util.AttributeSet; import android.view.ViewDebug; import android.view.WindowInsets; import com.android.launcher3.graphics.SysUiScrim; import com.android.launcher3.statemanager.StatefulActivity; import java.util.Collections; Loading @@ -31,6 +33,8 @@ public class LauncherRootView extends InsettableFrameLayout { @ViewDebug.ExportedProperty(category = "launcher") private boolean mForceHideBackArrow; private SysUiScrim mSysUiScrim; public LauncherRootView(Context context, AttributeSet attrs) { super(context, attrs); mActivity = StatefulActivity.fromContext(context); Loading Loading @@ -89,6 +93,18 @@ public class LauncherRootView extends InsettableFrameLayout { } } public void setSysUiScrim(SysUiScrim scrim) { mSysUiScrim = scrim; } @Override protected void dispatchDraw(Canvas canvas) { if (mSysUiScrim != null) { mSysUiScrim.draw(canvas); } super.dispatchDraw(canvas); } @Override protected void onLayout(boolean changed, int l, int t, int r, int b) { super.onLayout(changed, l, t, r, b); Loading src/com/android/launcher3/Workspace.java +18 −1 Original line number Diff line number Diff line Loading @@ -81,6 +81,7 @@ import com.android.launcher3.folder.FolderIcon; import com.android.launcher3.folder.PreviewBackground; import com.android.launcher3.graphics.DragPreviewProvider; import com.android.launcher3.graphics.PreloadIconDrawable; import com.android.launcher3.graphics.WorkspaceDragScrim; import com.android.launcher3.icons.BitmapRenderer; import com.android.launcher3.logger.LauncherAtom; import com.android.launcher3.logging.StatsLogManager; Loading Loading @@ -199,6 +200,9 @@ public class Workspace extends PagedView<WorkspacePageIndicator> private boolean mStripScreensOnPageStopMoving = false; private DragPreviewProvider mOutlineProvider = null; private WorkspaceDragScrim mWorkspaceDragScrim; private boolean mWorkspaceFadeInAdjacentScreens; final WallpaperOffsetInterpolator mWallpaperOffset; Loading Loading @@ -1161,6 +1165,19 @@ public class Workspace extends PagedView<WorkspacePageIndicator> } } public void setWorkspaceDragScrim(WorkspaceDragScrim workspaceDragScrim) { mWorkspaceDragScrim = workspaceDragScrim; } @Override public void invalidate() { // The workspace scrim may need to be re-rendered based on the workspace scroll if (mWorkspaceDragScrim != null) { mWorkspaceDragScrim.invalidate(); } super.invalidate(); } @Override public void computeScroll() { super.computeScroll(); Loading Loading @@ -2027,7 +2044,7 @@ public class Workspace extends PagedView<WorkspacePageIndicator> } // Invalidating the scrim will also force this CellLayout // to be invalidated so that it is highlighted if necessary. mLauncher.getDragLayer().getScrim().invalidate(); mLauncher.getDragLayer().getWorkspaceDragScrim().invalidate(); } public CellLayout getCurrentDragOverlappingLayout() { Loading src/com/android/launcher3/WorkspaceStateTransitionAnimation.java +9 −6 Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ import static com.android.launcher3.anim.Interpolators.LINEAR; import static com.android.launcher3.anim.Interpolators.ZOOM_OUT; import static com.android.launcher3.anim.PropertySetter.NO_ANIM_PROPERTY_SETTER; import static com.android.launcher3.graphics.Scrim.SCRIM_PROGRESS; import static com.android.launcher3.graphics.WorkspaceAndHotseatScrim.SYSUI_PROGRESS; import static com.android.launcher3.graphics.SysUiScrim.SYSUI_PROGRESS; import static com.android.launcher3.states.StateAnimationConfig.ANIM_HOTSEAT_SCALE; import static com.android.launcher3.states.StateAnimationConfig.ANIM_HOTSEAT_TRANSLATE; import static com.android.launcher3.states.StateAnimationConfig.ANIM_WORKSPACE_FADE; Loading @@ -49,7 +49,8 @@ import com.android.launcher3.allapps.AllAppsContainerView; import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.anim.PropertySetter; import com.android.launcher3.anim.SpringAnimationBuilder; import com.android.launcher3.graphics.WorkspaceAndHotseatScrim; import com.android.launcher3.graphics.SysUiScrim; import com.android.launcher3.graphics.WorkspaceDragScrim; import com.android.launcher3.states.StateAnimationConfig; import com.android.launcher3.util.DynamicResource; import com.android.systemui.plugins.ResourceProvider; Loading Loading @@ -183,10 +184,12 @@ public class WorkspaceStateTransitionAnimation { } public void setScrim(PropertySetter propertySetter, LauncherState state) { WorkspaceAndHotseatScrim scrim = mLauncher.getDragLayer().getScrim(); propertySetter.setFloat(scrim, SCRIM_PROGRESS, state.getWorkspaceScrimAlpha(mLauncher), LINEAR); propertySetter.setFloat(scrim, SYSUI_PROGRESS, WorkspaceDragScrim workspaceDragScrim = mLauncher.getDragLayer().getWorkspaceDragScrim(); propertySetter.setFloat(workspaceDragScrim, SCRIM_PROGRESS, state.getWorkspaceScrimAlpha(mLauncher), LINEAR); SysUiScrim sysUiScrim = mLauncher.getDragLayer().getSysUiScrim(); propertySetter.setFloat(sysUiScrim, SYSUI_PROGRESS, state.hasFlag(FLAG_HAS_SYS_UI_SCRIM) ? 1 : 0, LINEAR); } Loading src/com/android/launcher3/dragndrop/DragLayer.java +26 −9 Original line number Diff line number Diff line Loading @@ -41,12 +41,14 @@ import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.CellLayout; import com.android.launcher3.DropTargetBar; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherRootView; import com.android.launcher3.R; import com.android.launcher3.ShortcutAndWidgetContainer; import com.android.launcher3.Workspace; import com.android.launcher3.folder.Folder; import com.android.launcher3.graphics.OverviewScrim; import com.android.launcher3.graphics.WorkspaceAndHotseatScrim; import com.android.launcher3.graphics.SysUiScrim; import com.android.launcher3.graphics.WorkspaceDragScrim; import com.android.launcher3.keyboard.ViewGroupFocusHelper; import com.android.launcher3.util.Thunk; import com.android.launcher3.views.BaseDragLayer; Loading Loading @@ -82,8 +84,10 @@ public class DragLayer extends BaseDragLayer<Launcher> { // Related to adjacent page hints private final ViewGroupFocusHelper mFocusIndicatorHelper; private final WorkspaceAndHotseatScrim mWorkspaceScrim; private final OverviewScrim mOverviewScrim; private WorkspaceDragScrim mWorkspaceDragScrim; private SysUiScrim mSysUiScrim; private LauncherRootView mRootView; /** * Used to create a new DragLayer from XML. Loading @@ -99,14 +103,23 @@ public class DragLayer extends BaseDragLayer<Launcher> { setChildrenDrawingOrderEnabled(true); mFocusIndicatorHelper = new ViewGroupFocusHelper(this); mWorkspaceScrim = new WorkspaceAndHotseatScrim(this); mOverviewScrim = new OverviewScrim(this); } public void setup(DragController dragController, Workspace workspace) { mDragController = dragController; mWorkspaceScrim.setWorkspace(workspace); recreateControllers(); mWorkspaceDragScrim = new WorkspaceDragScrim((this)); mWorkspaceDragScrim.setWorkspace(workspace); // We delegate drawing of the workspace scrim to LauncherRootView (one level up), so as // to avoid artifacts when translating the entire drag layer in the -1 transition. mRootView = (LauncherRootView) getParent(); mSysUiScrim = new SysUiScrim(mRootView); mRootView.setSysUiScrim(mSysUiScrim); } @Override Loading Loading @@ -515,7 +528,7 @@ public class DragLayer extends BaseDragLayer<Launcher> { @Override protected void dispatchDraw(Canvas canvas) { // Draw the background below children. mWorkspaceScrim.draw(canvas); mWorkspaceDragScrim.draw(canvas); mOverviewScrim.updateCurrentScrimmedView(this); mFocusIndicatorHelper.draw(canvas); super.dispatchDraw(canvas); Loading @@ -535,18 +548,22 @@ public class DragLayer extends BaseDragLayer<Launcher> { @Override protected void onSizeChanged(int w, int h, int oldw, int oldh) { super.onSizeChanged(w, h, oldw, oldh); mWorkspaceScrim.setSize(w, h); mSysUiScrim.setSize(w, h); } @Override public void setInsets(Rect insets) { super.setInsets(insets); mWorkspaceScrim.onInsetsChanged(insets, mAllowSysuiScrims); mSysUiScrim.onInsetsChanged(insets, mAllowSysuiScrims); mOverviewScrim.onInsetsChanged(insets); } public WorkspaceAndHotseatScrim getScrim() { return mWorkspaceScrim; public WorkspaceDragScrim getWorkspaceDragScrim() { return mWorkspaceDragScrim; } public SysUiScrim getSysUiScrim() { return mSysUiScrim; } public OverviewScrim getOverviewScrim() { Loading Loading
quickstep/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java +1 −1 Original line number Diff line number Diff line Loading @@ -139,7 +139,7 @@ public class StaggeredWorkspaceAnim { addDepthAnimationForState(launcher, NORMAL, ALPHA_DURATION_MS); mAnimators.play(launcher.getDragLayer().getScrim().createSysuiMultiplierAnim(0f, 1f) mAnimators.play(launcher.getDragLayer().getSysUiScrim().createSysuiMultiplierAnim(0f, 1f) .setDuration(ALPHA_DURATION_MS)); mAnimators.addListener(new AnimatorListenerAdapter() { @Override Loading
src/com/android/launcher3/LauncherRootView.java +17 −1 Original line number Diff line number Diff line Loading @@ -4,12 +4,14 @@ import static com.android.launcher3.config.FeatureFlags.SEPARATE_RECENTS_ACTIVIT import android.annotation.TargetApi; import android.content.Context; import android.graphics.Canvas; import android.graphics.Rect; import android.os.Build; import android.util.AttributeSet; import android.view.ViewDebug; import android.view.WindowInsets; import com.android.launcher3.graphics.SysUiScrim; import com.android.launcher3.statemanager.StatefulActivity; import java.util.Collections; Loading @@ -31,6 +33,8 @@ public class LauncherRootView extends InsettableFrameLayout { @ViewDebug.ExportedProperty(category = "launcher") private boolean mForceHideBackArrow; private SysUiScrim mSysUiScrim; public LauncherRootView(Context context, AttributeSet attrs) { super(context, attrs); mActivity = StatefulActivity.fromContext(context); Loading Loading @@ -89,6 +93,18 @@ public class LauncherRootView extends InsettableFrameLayout { } } public void setSysUiScrim(SysUiScrim scrim) { mSysUiScrim = scrim; } @Override protected void dispatchDraw(Canvas canvas) { if (mSysUiScrim != null) { mSysUiScrim.draw(canvas); } super.dispatchDraw(canvas); } @Override protected void onLayout(boolean changed, int l, int t, int r, int b) { super.onLayout(changed, l, t, r, b); Loading
src/com/android/launcher3/Workspace.java +18 −1 Original line number Diff line number Diff line Loading @@ -81,6 +81,7 @@ import com.android.launcher3.folder.FolderIcon; import com.android.launcher3.folder.PreviewBackground; import com.android.launcher3.graphics.DragPreviewProvider; import com.android.launcher3.graphics.PreloadIconDrawable; import com.android.launcher3.graphics.WorkspaceDragScrim; import com.android.launcher3.icons.BitmapRenderer; import com.android.launcher3.logger.LauncherAtom; import com.android.launcher3.logging.StatsLogManager; Loading Loading @@ -199,6 +200,9 @@ public class Workspace extends PagedView<WorkspacePageIndicator> private boolean mStripScreensOnPageStopMoving = false; private DragPreviewProvider mOutlineProvider = null; private WorkspaceDragScrim mWorkspaceDragScrim; private boolean mWorkspaceFadeInAdjacentScreens; final WallpaperOffsetInterpolator mWallpaperOffset; Loading Loading @@ -1161,6 +1165,19 @@ public class Workspace extends PagedView<WorkspacePageIndicator> } } public void setWorkspaceDragScrim(WorkspaceDragScrim workspaceDragScrim) { mWorkspaceDragScrim = workspaceDragScrim; } @Override public void invalidate() { // The workspace scrim may need to be re-rendered based on the workspace scroll if (mWorkspaceDragScrim != null) { mWorkspaceDragScrim.invalidate(); } super.invalidate(); } @Override public void computeScroll() { super.computeScroll(); Loading Loading @@ -2027,7 +2044,7 @@ public class Workspace extends PagedView<WorkspacePageIndicator> } // Invalidating the scrim will also force this CellLayout // to be invalidated so that it is highlighted if necessary. mLauncher.getDragLayer().getScrim().invalidate(); mLauncher.getDragLayer().getWorkspaceDragScrim().invalidate(); } public CellLayout getCurrentDragOverlappingLayout() { Loading
src/com/android/launcher3/WorkspaceStateTransitionAnimation.java +9 −6 Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ import static com.android.launcher3.anim.Interpolators.LINEAR; import static com.android.launcher3.anim.Interpolators.ZOOM_OUT; import static com.android.launcher3.anim.PropertySetter.NO_ANIM_PROPERTY_SETTER; import static com.android.launcher3.graphics.Scrim.SCRIM_PROGRESS; import static com.android.launcher3.graphics.WorkspaceAndHotseatScrim.SYSUI_PROGRESS; import static com.android.launcher3.graphics.SysUiScrim.SYSUI_PROGRESS; import static com.android.launcher3.states.StateAnimationConfig.ANIM_HOTSEAT_SCALE; import static com.android.launcher3.states.StateAnimationConfig.ANIM_HOTSEAT_TRANSLATE; import static com.android.launcher3.states.StateAnimationConfig.ANIM_WORKSPACE_FADE; Loading @@ -49,7 +49,8 @@ import com.android.launcher3.allapps.AllAppsContainerView; import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.anim.PropertySetter; import com.android.launcher3.anim.SpringAnimationBuilder; import com.android.launcher3.graphics.WorkspaceAndHotseatScrim; import com.android.launcher3.graphics.SysUiScrim; import com.android.launcher3.graphics.WorkspaceDragScrim; import com.android.launcher3.states.StateAnimationConfig; import com.android.launcher3.util.DynamicResource; import com.android.systemui.plugins.ResourceProvider; Loading Loading @@ -183,10 +184,12 @@ public class WorkspaceStateTransitionAnimation { } public void setScrim(PropertySetter propertySetter, LauncherState state) { WorkspaceAndHotseatScrim scrim = mLauncher.getDragLayer().getScrim(); propertySetter.setFloat(scrim, SCRIM_PROGRESS, state.getWorkspaceScrimAlpha(mLauncher), LINEAR); propertySetter.setFloat(scrim, SYSUI_PROGRESS, WorkspaceDragScrim workspaceDragScrim = mLauncher.getDragLayer().getWorkspaceDragScrim(); propertySetter.setFloat(workspaceDragScrim, SCRIM_PROGRESS, state.getWorkspaceScrimAlpha(mLauncher), LINEAR); SysUiScrim sysUiScrim = mLauncher.getDragLayer().getSysUiScrim(); propertySetter.setFloat(sysUiScrim, SYSUI_PROGRESS, state.hasFlag(FLAG_HAS_SYS_UI_SCRIM) ? 1 : 0, LINEAR); } Loading
src/com/android/launcher3/dragndrop/DragLayer.java +26 −9 Original line number Diff line number Diff line Loading @@ -41,12 +41,14 @@ import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.CellLayout; import com.android.launcher3.DropTargetBar; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherRootView; import com.android.launcher3.R; import com.android.launcher3.ShortcutAndWidgetContainer; import com.android.launcher3.Workspace; import com.android.launcher3.folder.Folder; import com.android.launcher3.graphics.OverviewScrim; import com.android.launcher3.graphics.WorkspaceAndHotseatScrim; import com.android.launcher3.graphics.SysUiScrim; import com.android.launcher3.graphics.WorkspaceDragScrim; import com.android.launcher3.keyboard.ViewGroupFocusHelper; import com.android.launcher3.util.Thunk; import com.android.launcher3.views.BaseDragLayer; Loading Loading @@ -82,8 +84,10 @@ public class DragLayer extends BaseDragLayer<Launcher> { // Related to adjacent page hints private final ViewGroupFocusHelper mFocusIndicatorHelper; private final WorkspaceAndHotseatScrim mWorkspaceScrim; private final OverviewScrim mOverviewScrim; private WorkspaceDragScrim mWorkspaceDragScrim; private SysUiScrim mSysUiScrim; private LauncherRootView mRootView; /** * Used to create a new DragLayer from XML. Loading @@ -99,14 +103,23 @@ public class DragLayer extends BaseDragLayer<Launcher> { setChildrenDrawingOrderEnabled(true); mFocusIndicatorHelper = new ViewGroupFocusHelper(this); mWorkspaceScrim = new WorkspaceAndHotseatScrim(this); mOverviewScrim = new OverviewScrim(this); } public void setup(DragController dragController, Workspace workspace) { mDragController = dragController; mWorkspaceScrim.setWorkspace(workspace); recreateControllers(); mWorkspaceDragScrim = new WorkspaceDragScrim((this)); mWorkspaceDragScrim.setWorkspace(workspace); // We delegate drawing of the workspace scrim to LauncherRootView (one level up), so as // to avoid artifacts when translating the entire drag layer in the -1 transition. mRootView = (LauncherRootView) getParent(); mSysUiScrim = new SysUiScrim(mRootView); mRootView.setSysUiScrim(mSysUiScrim); } @Override Loading Loading @@ -515,7 +528,7 @@ public class DragLayer extends BaseDragLayer<Launcher> { @Override protected void dispatchDraw(Canvas canvas) { // Draw the background below children. mWorkspaceScrim.draw(canvas); mWorkspaceDragScrim.draw(canvas); mOverviewScrim.updateCurrentScrimmedView(this); mFocusIndicatorHelper.draw(canvas); super.dispatchDraw(canvas); Loading @@ -535,18 +548,22 @@ public class DragLayer extends BaseDragLayer<Launcher> { @Override protected void onSizeChanged(int w, int h, int oldw, int oldh) { super.onSizeChanged(w, h, oldw, oldh); mWorkspaceScrim.setSize(w, h); mSysUiScrim.setSize(w, h); } @Override public void setInsets(Rect insets) { super.setInsets(insets); mWorkspaceScrim.onInsetsChanged(insets, mAllowSysuiScrims); mSysUiScrim.onInsetsChanged(insets, mAllowSysuiScrims); mOverviewScrim.onInsetsChanged(insets); } public WorkspaceAndHotseatScrim getScrim() { return mWorkspaceScrim; public WorkspaceDragScrim getWorkspaceDragScrim() { return mWorkspaceDragScrim; } public SysUiScrim getSysUiScrim() { return mSysUiScrim; } public OverviewScrim getOverviewScrim() { Loading