2D Recents: Slightly darken header to differentiate from thumbnail

Bug: 34771148
Test: Locally on sw600dp device, sent screenshot to UX to confirm
Change-Id: I74282c6ed81d3b48d554f9acf55d4fafca2c73f4
This commit is contained in:
Manu Cornet
2017-02-06 17:47:42 -08:00
parent f47b9cf1c1
commit 017a3acc3c
4 changed files with 21 additions and 2 deletions

View File

@@ -646,6 +646,10 @@ public class RecentsImpl implements ActivityOptions.OnAnimationFinishedListener
synchronized (mHeaderBarLock) {
if (mHeaderBar.getMeasuredWidth() != taskViewWidth ||
mHeaderBar.getMeasuredHeight() != mTaskBarHeight) {
if (mDummyStackView.useGridLayout()) {
mHeaderBar.setShouldDarkenBackgroundColor(true);
mHeaderBar.setNoUserInteractionState();
}
mHeaderBar.forceLayout();
mHeaderBar.measure(
MeasureSpec.makeMeasureSpec(taskViewWidth, MeasureSpec.EXACTLY),

View File

@@ -151,7 +151,7 @@ public class TaskView extends FixedSizeFrameLayout implements Task.TaskCallbacks
@ViewDebug.ExportedProperty(deepExport=true, prefix="thumbnail_")
protected TaskViewThumbnail mThumbnailView;
@ViewDebug.ExportedProperty(deepExport=true, prefix="header_")
TaskViewHeader mHeaderView;
protected TaskViewHeader mHeaderView;
private View mActionButtonView;
private View mIncompatibleAppToastView;
private TaskViewCallbacks mCb;

View File

@@ -91,6 +91,9 @@ public class TaskViewHeader extends FrameLayout
if (mColor != color || Float.compare(mDimAlpha, dimAlpha) != 0) {
mColor = color;
mDimAlpha = dimAlpha;
if (mShouldDarkenBackgroundColor) {
color = getSecondaryColor(color, false /* useLightOverlayColor */);
}
mBackgroundPaint.setColor(color);
ColorUtils.colorToHSL(color, mTmpHSL);
@@ -179,6 +182,10 @@ public class TaskViewHeader extends FrameLayout
// Header dim, which is only used when task view hardware layers are not used
private Paint mDimLayerPaint = new Paint();
// Whether the background color should be darkened to differentiate from the primary color.
// Used in grid layout.
private boolean mShouldDarkenBackgroundColor = false;
private CountDownTimer mFocusTimerCountDown;
public TaskViewHeader(Context context) {
@@ -442,6 +449,13 @@ public class TaskViewHeader extends FrameLayout
}
}
/**
* Sets whether the background color should be darkened to differentiate from the primary color.
*/
public void setShouldDarkenBackgroundColor(boolean flag) {
mShouldDarkenBackgroundColor = flag;
}
/**
* Binds the bar view to the task.
*/
@@ -557,7 +571,7 @@ public class TaskViewHeader extends FrameLayout
* Mark this task view that the user does has not interacted with the stack after a certain
* time.
*/
void setNoUserInteractionState() {
public void setNoUserInteractionState() {
mDismissButton.setVisibility(View.VISIBLE);
mDismissButton.animate().cancel();
mDismissButton.setAlpha(1f);

View File

@@ -53,6 +53,7 @@ public class GridTaskView extends TaskView {
mThumbnailView.setOverlayHeaderOnThumbnailActionBar(false);
mThumbnailView.updateThumbnailScale();
mThumbnailView.setTranslationY(mHeaderHeight);
mHeaderView.setShouldDarkenBackgroundColor(true);
}
@Override