Loading packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvImpl.java +5 −1 Original line number Diff line number Diff line Loading @@ -38,11 +38,14 @@ import com.android.systemui.recents.model.TaskStack; import com.android.systemui.recents.model.ThumbnailData; import com.android.systemui.recents.tv.views.TaskCardView; import com.android.systemui.statusbar.tv.TvStatusBar; import com.android.systemui.tv.pip.PipManager; public class RecentsTvImpl extends RecentsImpl{ public final static String RECENTS_TV_ACTIVITY = "com.android.systemui.recents.tv.RecentsTvActivity"; private static final PipManager mPipManager = PipManager.getInstance(); public RecentsTvImpl(Context context) { super(context); } Loading Loading @@ -120,7 +123,8 @@ public class RecentsTvImpl extends RecentsImpl{ */ private ActivityOptions getThumbnailTransitionActivityOptionsForTV( ActivityManager.RunningTaskInfo runningTask, int numTasks) { Rect rect = TaskCardView.getStartingCardThumbnailRect(mContext, numTasks); Rect rect = TaskCardView.getStartingCardThumbnailRect( mContext, !mPipManager.isPipShown(), numTasks); SystemServicesProxy ssp = Recents.getSystemServices(); ThumbnailData thumbnailData = ssp.getTaskThumbnail(runningTask.id); if (thumbnailData.thumbnail != null) { Loading packages/SystemUI/src/com/android/systemui/recents/tv/views/TaskCardView.java +13 −8 Original line number Diff line number Diff line Loading @@ -110,20 +110,24 @@ public class TaskCardView extends LinearLayout { return r; } public static Rect getStartingCardThumbnailRect(Context context, int numberOfTasks) { public static Rect getStartingCardThumbnailRect( Context context, boolean hasFocus, int numberOfTasks) { if(numberOfTasks > 1) { return getStartingCardThumbnailRectForStartPosition(context); return getStartingCardThumbnailRectForStartPosition(context, hasFocus); } else { return getStartingCardThumbnailRectForFocusedPosition(context); return getStartingCardThumbnailRectForFocusedPosition(context, hasFocus); } } private static Rect getStartingCardThumbnailRectForStartPosition(Context context) { private static Rect getStartingCardThumbnailRectForStartPosition( Context context, boolean hasFocus) { Resources res = context.getResources(); int width = res.getDimensionPixelOffset(R.dimen.recents_tv_card_width); int totalSpacing = res.getDimensionPixelOffset(R.dimen.recents_tv_gird_card_spacing) * 2 + res.getDimensionPixelOffset(R.dimen.recents_tv_gird_focused_card_delta); int totalSpacing = res.getDimensionPixelOffset(R.dimen.recents_tv_gird_card_spacing) * 2; if (hasFocus) { totalSpacing += res.getDimensionPixelOffset(R.dimen.recents_tv_gird_focused_card_delta); } int height = res.getDimensionPixelOffset(R.dimen.recents_tv_screenshot_height); int topMargin = res.getDimensionPixelOffset(R.dimen.recents_tv_gird_row_top_margin); int headerHeight = res.getDimensionPixelOffset(R.dimen.recents_tv_card_extra_badge_size) + Loading @@ -141,12 +145,13 @@ public class TaskCardView extends LinearLayout { topMargin + headerHeight + height); } private static Rect getStartingCardThumbnailRectForFocusedPosition(Context context) { private static Rect getStartingCardThumbnailRectForFocusedPosition( Context context, boolean hasFocus) { Resources res = context.getResources(); TypedValue out = new TypedValue(); res.getValue(R.integer.selected_scale, out, true); float scale = out.getFloat(); float scale = hasFocus ? out.getFloat() : 1; int width = res.getDimensionPixelOffset(R.dimen.recents_tv_card_width); int widthDelta = (int) (width * scale - width); Loading Loading
packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvImpl.java +5 −1 Original line number Diff line number Diff line Loading @@ -38,11 +38,14 @@ import com.android.systemui.recents.model.TaskStack; import com.android.systemui.recents.model.ThumbnailData; import com.android.systemui.recents.tv.views.TaskCardView; import com.android.systemui.statusbar.tv.TvStatusBar; import com.android.systemui.tv.pip.PipManager; public class RecentsTvImpl extends RecentsImpl{ public final static String RECENTS_TV_ACTIVITY = "com.android.systemui.recents.tv.RecentsTvActivity"; private static final PipManager mPipManager = PipManager.getInstance(); public RecentsTvImpl(Context context) { super(context); } Loading Loading @@ -120,7 +123,8 @@ public class RecentsTvImpl extends RecentsImpl{ */ private ActivityOptions getThumbnailTransitionActivityOptionsForTV( ActivityManager.RunningTaskInfo runningTask, int numTasks) { Rect rect = TaskCardView.getStartingCardThumbnailRect(mContext, numTasks); Rect rect = TaskCardView.getStartingCardThumbnailRect( mContext, !mPipManager.isPipShown(), numTasks); SystemServicesProxy ssp = Recents.getSystemServices(); ThumbnailData thumbnailData = ssp.getTaskThumbnail(runningTask.id); if (thumbnailData.thumbnail != null) { Loading
packages/SystemUI/src/com/android/systemui/recents/tv/views/TaskCardView.java +13 −8 Original line number Diff line number Diff line Loading @@ -110,20 +110,24 @@ public class TaskCardView extends LinearLayout { return r; } public static Rect getStartingCardThumbnailRect(Context context, int numberOfTasks) { public static Rect getStartingCardThumbnailRect( Context context, boolean hasFocus, int numberOfTasks) { if(numberOfTasks > 1) { return getStartingCardThumbnailRectForStartPosition(context); return getStartingCardThumbnailRectForStartPosition(context, hasFocus); } else { return getStartingCardThumbnailRectForFocusedPosition(context); return getStartingCardThumbnailRectForFocusedPosition(context, hasFocus); } } private static Rect getStartingCardThumbnailRectForStartPosition(Context context) { private static Rect getStartingCardThumbnailRectForStartPosition( Context context, boolean hasFocus) { Resources res = context.getResources(); int width = res.getDimensionPixelOffset(R.dimen.recents_tv_card_width); int totalSpacing = res.getDimensionPixelOffset(R.dimen.recents_tv_gird_card_spacing) * 2 + res.getDimensionPixelOffset(R.dimen.recents_tv_gird_focused_card_delta); int totalSpacing = res.getDimensionPixelOffset(R.dimen.recents_tv_gird_card_spacing) * 2; if (hasFocus) { totalSpacing += res.getDimensionPixelOffset(R.dimen.recents_tv_gird_focused_card_delta); } int height = res.getDimensionPixelOffset(R.dimen.recents_tv_screenshot_height); int topMargin = res.getDimensionPixelOffset(R.dimen.recents_tv_gird_row_top_margin); int headerHeight = res.getDimensionPixelOffset(R.dimen.recents_tv_card_extra_badge_size) + Loading @@ -141,12 +145,13 @@ public class TaskCardView extends LinearLayout { topMargin + headerHeight + height); } private static Rect getStartingCardThumbnailRectForFocusedPosition(Context context) { private static Rect getStartingCardThumbnailRectForFocusedPosition( Context context, boolean hasFocus) { Resources res = context.getResources(); TypedValue out = new TypedValue(); res.getValue(R.integer.selected_scale, out, true); float scale = out.getFloat(); float scale = hasFocus ? out.getFloat() : 1; int width = res.getDimensionPixelOffset(R.dimen.recents_tv_card_width); int widthDelta = (int) (width * scale - width); Loading