Loading quickstep/res/layout/task_menu.xml +0 −9 Original line number Diff line number Diff line Loading @@ -24,15 +24,6 @@ android:orientation="vertical" android:visibility="invisible"> <com.android.quickstep.views.IconView android:id="@+id/task_icon" android:layout_width="@dimen/task_thumbnail_icon_size" android:layout_height="@dimen/task_thumbnail_icon_size" android:layout_gravity="top|center_horizontal" android:layout_marginBottom="@dimen/deep_shortcut_drawable_padding" android:focusable="false" android:importantForAccessibility="no" /> <TextView android:id="@+id/task_name" android:layout_width="match_parent" Loading quickstep/res/values/dimens.xml +1 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ <dimen name="task_thumbnail_top_margin">24dp</dimen> <dimen name="task_thumbnail_half_top_margin">12dp</dimen> <dimen name="task_thumbnail_icon_size">48dp</dimen> <dimen name="task_icon_top_margin">-16dp</dimen> <!-- For screens without rounded corners --> <dimen name="task_corner_radius_small">2dp</dimen> Loading quickstep/src/com/android/quickstep/views/TaskMenuView.java +0 −52 Original line number Diff line number Diff line Loading @@ -35,7 +35,6 @@ import android.widget.TextView; import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.BaseDraggingActivity; import com.android.launcher3.FastBitmapDrawable; import com.android.launcher3.R; import com.android.launcher3.anim.AnimationSuccessListener; import com.android.launcher3.anim.Interpolators; Loading @@ -46,7 +45,6 @@ import com.android.launcher3.util.Themes; import com.android.launcher3.views.BaseDragLayer; import com.android.quickstep.TaskOverlayFactory; import com.android.quickstep.TaskUtils; import com.android.quickstep.views.IconView.OnScaleUpdateListener; /** * Contains options for a recent task when long-pressing its icon. Loading @@ -55,42 +53,15 @@ public class TaskMenuView extends AbstractFloatingView { private static final Rect sTempRect = new Rect(); private final OnScaleUpdateListener mTaskViewIconScaleListener = new OnScaleUpdateListener() { @Override public void onScaleUpdate(float scale) { final Drawable drawable = mTaskIcon.getDrawable(); if (drawable instanceof FastBitmapDrawable) { if (scale != ((FastBitmapDrawable) drawable).getScale()) { mMenuIconDrawable.setScale(scale); } } } }; private final OnScaleUpdateListener mMenuIconScaleListener = new OnScaleUpdateListener() { @Override public void onScaleUpdate(float scale) { final Drawable taskViewDrawable = mTaskView.getIconView().getDrawable(); if (taskViewDrawable instanceof FastBitmapDrawable) { final float currentScale = ((FastBitmapDrawable) taskViewDrawable).getScale(); if (currentScale != scale) { ((FastBitmapDrawable) taskViewDrawable).setScale(scale); } } } }; private static final int REVEAL_OPEN_DURATION = 150; private static final int REVEAL_CLOSE_DURATION = 100; private final float mThumbnailTopMargin; private BaseDraggingActivity mActivity; private TextView mTaskName; private IconView mTaskIcon; private AnimatorSet mOpenCloseAnimator; private TaskView mTaskView; private LinearLayout mOptionLayout; private FastBitmapDrawable mMenuIconDrawable; public TaskMenuView(Context context, AttributeSet attrs) { this(context, attrs, 0); Loading @@ -107,7 +78,6 @@ public class TaskMenuView extends AbstractFloatingView { protected void onFinishInflate() { super.onFinishInflate(); mTaskName = findViewById(R.id.task_name); mTaskIcon = findViewById(R.id.task_icon); mOptionLayout = findViewById(R.id.menu_option_layout); } Loading @@ -133,15 +103,6 @@ public class TaskMenuView extends AbstractFloatingView { } } @Override protected void onDetachedFromWindow() { super.onDetachedFromWindow(); // Remove all scale listeners when menu is removed mTaskView.getIconView().removeUpdateScaleListener(mTaskViewIconScaleListener); mTaskIcon.removeUpdateScaleListener(mMenuIconScaleListener); } @Override protected boolean isOfType(int type) { return (type & TYPE_TASK_MENU) != 0; Loading Loading @@ -204,22 +165,9 @@ public class TaskMenuView extends AbstractFloatingView { private void addMenuOptions(TaskView taskView) { Drawable icon = taskView.getTask().icon.getConstantState().newDrawable(); mTaskIcon.setDrawable(icon); mTaskIcon.setOnClickListener(v -> close(true)); mTaskName.setText(TaskUtils.getTitle(getContext(), taskView.getTask())); mTaskName.setOnClickListener(v -> close(true)); // Set the icons to match scale by listening to each other's changes mMenuIconDrawable = icon instanceof FastBitmapDrawable ? (FastBitmapDrawable) icon : null; taskView.getIconView().addUpdateScaleListener(mTaskViewIconScaleListener); mTaskIcon.addUpdateScaleListener(mMenuIconScaleListener); // Move the icon and text up half an icon size to lay over the TaskView LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) mTaskIcon.getLayoutParams(); params.topMargin = (int) -mThumbnailTopMargin; mTaskIcon.setLayoutParams(params); TaskOverlayFactory.getEnabledShortcuts(taskView).forEach(this::addMenuOption); } Loading quickstep/src/com/android/quickstep/views/TaskView.java +7 −2 Original line number Diff line number Diff line Loading @@ -612,6 +612,9 @@ public class TaskView extends FrameLayout implements PageCallbacks, Reusable { boolean isRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL; LayoutParams snapshotParams = (LayoutParams) mSnapshotView.getLayoutParams(); int thumbnailPadding = (int) getResources().getDimension(R.dimen.task_thumbnail_top_margin); int taskIconMargin = (int) getResources().getDimension(R.dimen.task_icon_top_margin); int taskIconHeight = (int) getResources().getDimension(R.dimen.task_thumbnail_icon_size); int iconTopMargin = taskIconMargin - taskIconHeight + thumbnailPadding; LayoutParams iconParams = (LayoutParams) mIconView.getLayoutParams(); switch (orientationHandler.getRotation()) { case ROTATION_90: Loading @@ -623,7 +626,8 @@ public class TaskView extends FrameLayout implements PageCallbacks, Reusable { case ROTATION_180: iconParams.gravity = BOTTOM | CENTER_HORIZONTAL; iconParams.bottomMargin = -thumbnailPadding; iconParams.leftMargin = iconParams.topMargin = iconParams.rightMargin = 0; iconParams.leftMargin = iconParams.rightMargin = 0; iconParams.topMargin = iconTopMargin; break; case ROTATION_270: iconParams.gravity = (isRtl ? END : START) | CENTER_VERTICAL; Loading @@ -634,7 +638,8 @@ public class TaskView extends FrameLayout implements PageCallbacks, Reusable { case Surface.ROTATION_0: default: iconParams.gravity = TOP | CENTER_HORIZONTAL; iconParams.leftMargin = iconParams.topMargin = iconParams.rightMargin = 0; iconParams.leftMargin = iconParams.rightMargin = 0; iconParams.topMargin = iconTopMargin; break; } mIconView.setLayoutParams(iconParams); Loading Loading
quickstep/res/layout/task_menu.xml +0 −9 Original line number Diff line number Diff line Loading @@ -24,15 +24,6 @@ android:orientation="vertical" android:visibility="invisible"> <com.android.quickstep.views.IconView android:id="@+id/task_icon" android:layout_width="@dimen/task_thumbnail_icon_size" android:layout_height="@dimen/task_thumbnail_icon_size" android:layout_gravity="top|center_horizontal" android:layout_marginBottom="@dimen/deep_shortcut_drawable_padding" android:focusable="false" android:importantForAccessibility="no" /> <TextView android:id="@+id/task_name" android:layout_width="match_parent" Loading
quickstep/res/values/dimens.xml +1 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ <dimen name="task_thumbnail_top_margin">24dp</dimen> <dimen name="task_thumbnail_half_top_margin">12dp</dimen> <dimen name="task_thumbnail_icon_size">48dp</dimen> <dimen name="task_icon_top_margin">-16dp</dimen> <!-- For screens without rounded corners --> <dimen name="task_corner_radius_small">2dp</dimen> Loading
quickstep/src/com/android/quickstep/views/TaskMenuView.java +0 −52 Original line number Diff line number Diff line Loading @@ -35,7 +35,6 @@ import android.widget.TextView; import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.BaseDraggingActivity; import com.android.launcher3.FastBitmapDrawable; import com.android.launcher3.R; import com.android.launcher3.anim.AnimationSuccessListener; import com.android.launcher3.anim.Interpolators; Loading @@ -46,7 +45,6 @@ import com.android.launcher3.util.Themes; import com.android.launcher3.views.BaseDragLayer; import com.android.quickstep.TaskOverlayFactory; import com.android.quickstep.TaskUtils; import com.android.quickstep.views.IconView.OnScaleUpdateListener; /** * Contains options for a recent task when long-pressing its icon. Loading @@ -55,42 +53,15 @@ public class TaskMenuView extends AbstractFloatingView { private static final Rect sTempRect = new Rect(); private final OnScaleUpdateListener mTaskViewIconScaleListener = new OnScaleUpdateListener() { @Override public void onScaleUpdate(float scale) { final Drawable drawable = mTaskIcon.getDrawable(); if (drawable instanceof FastBitmapDrawable) { if (scale != ((FastBitmapDrawable) drawable).getScale()) { mMenuIconDrawable.setScale(scale); } } } }; private final OnScaleUpdateListener mMenuIconScaleListener = new OnScaleUpdateListener() { @Override public void onScaleUpdate(float scale) { final Drawable taskViewDrawable = mTaskView.getIconView().getDrawable(); if (taskViewDrawable instanceof FastBitmapDrawable) { final float currentScale = ((FastBitmapDrawable) taskViewDrawable).getScale(); if (currentScale != scale) { ((FastBitmapDrawable) taskViewDrawable).setScale(scale); } } } }; private static final int REVEAL_OPEN_DURATION = 150; private static final int REVEAL_CLOSE_DURATION = 100; private final float mThumbnailTopMargin; private BaseDraggingActivity mActivity; private TextView mTaskName; private IconView mTaskIcon; private AnimatorSet mOpenCloseAnimator; private TaskView mTaskView; private LinearLayout mOptionLayout; private FastBitmapDrawable mMenuIconDrawable; public TaskMenuView(Context context, AttributeSet attrs) { this(context, attrs, 0); Loading @@ -107,7 +78,6 @@ public class TaskMenuView extends AbstractFloatingView { protected void onFinishInflate() { super.onFinishInflate(); mTaskName = findViewById(R.id.task_name); mTaskIcon = findViewById(R.id.task_icon); mOptionLayout = findViewById(R.id.menu_option_layout); } Loading @@ -133,15 +103,6 @@ public class TaskMenuView extends AbstractFloatingView { } } @Override protected void onDetachedFromWindow() { super.onDetachedFromWindow(); // Remove all scale listeners when menu is removed mTaskView.getIconView().removeUpdateScaleListener(mTaskViewIconScaleListener); mTaskIcon.removeUpdateScaleListener(mMenuIconScaleListener); } @Override protected boolean isOfType(int type) { return (type & TYPE_TASK_MENU) != 0; Loading Loading @@ -204,22 +165,9 @@ public class TaskMenuView extends AbstractFloatingView { private void addMenuOptions(TaskView taskView) { Drawable icon = taskView.getTask().icon.getConstantState().newDrawable(); mTaskIcon.setDrawable(icon); mTaskIcon.setOnClickListener(v -> close(true)); mTaskName.setText(TaskUtils.getTitle(getContext(), taskView.getTask())); mTaskName.setOnClickListener(v -> close(true)); // Set the icons to match scale by listening to each other's changes mMenuIconDrawable = icon instanceof FastBitmapDrawable ? (FastBitmapDrawable) icon : null; taskView.getIconView().addUpdateScaleListener(mTaskViewIconScaleListener); mTaskIcon.addUpdateScaleListener(mMenuIconScaleListener); // Move the icon and text up half an icon size to lay over the TaskView LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) mTaskIcon.getLayoutParams(); params.topMargin = (int) -mThumbnailTopMargin; mTaskIcon.setLayoutParams(params); TaskOverlayFactory.getEnabledShortcuts(taskView).forEach(this::addMenuOption); } Loading
quickstep/src/com/android/quickstep/views/TaskView.java +7 −2 Original line number Diff line number Diff line Loading @@ -612,6 +612,9 @@ public class TaskView extends FrameLayout implements PageCallbacks, Reusable { boolean isRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL; LayoutParams snapshotParams = (LayoutParams) mSnapshotView.getLayoutParams(); int thumbnailPadding = (int) getResources().getDimension(R.dimen.task_thumbnail_top_margin); int taskIconMargin = (int) getResources().getDimension(R.dimen.task_icon_top_margin); int taskIconHeight = (int) getResources().getDimension(R.dimen.task_thumbnail_icon_size); int iconTopMargin = taskIconMargin - taskIconHeight + thumbnailPadding; LayoutParams iconParams = (LayoutParams) mIconView.getLayoutParams(); switch (orientationHandler.getRotation()) { case ROTATION_90: Loading @@ -623,7 +626,8 @@ public class TaskView extends FrameLayout implements PageCallbacks, Reusable { case ROTATION_180: iconParams.gravity = BOTTOM | CENTER_HORIZONTAL; iconParams.bottomMargin = -thumbnailPadding; iconParams.leftMargin = iconParams.topMargin = iconParams.rightMargin = 0; iconParams.leftMargin = iconParams.rightMargin = 0; iconParams.topMargin = iconTopMargin; break; case ROTATION_270: iconParams.gravity = (isRtl ? END : START) | CENTER_VERTICAL; Loading @@ -634,7 +638,8 @@ public class TaskView extends FrameLayout implements PageCallbacks, Reusable { case Surface.ROTATION_0: default: iconParams.gravity = TOP | CENTER_HORIZONTAL; iconParams.leftMargin = iconParams.topMargin = iconParams.rightMargin = 0; iconParams.leftMargin = iconParams.rightMargin = 0; iconParams.topMargin = iconTopMargin; break; } mIconView.setLayoutParams(iconParams); Loading