2D Recents: Slightly darken header to differentiate from thumbnail

am: 017a3acc3c

Change-Id: I3eba04869c2cc0095f7f0f43855aeba3bc595759
This commit is contained in:
Manu Cornet
2017-02-08 10:46:16 +00:00
committed by android-build-merger
4 changed files with 21 additions and 2 deletions

View File

@@ -646,6 +646,10 @@ public class RecentsImpl implements ActivityOptions.OnAnimationFinishedListener
synchronized (mHeaderBarLock) { synchronized (mHeaderBarLock) {
if (mHeaderBar.getMeasuredWidth() != taskViewWidth || if (mHeaderBar.getMeasuredWidth() != taskViewWidth ||
mHeaderBar.getMeasuredHeight() != mTaskBarHeight) { mHeaderBar.getMeasuredHeight() != mTaskBarHeight) {
if (mDummyStackView.useGridLayout()) {
mHeaderBar.setShouldDarkenBackgroundColor(true);
mHeaderBar.setNoUserInteractionState();
}
mHeaderBar.forceLayout(); mHeaderBar.forceLayout();
mHeaderBar.measure( mHeaderBar.measure(
MeasureSpec.makeMeasureSpec(taskViewWidth, MeasureSpec.EXACTLY), 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_") @ViewDebug.ExportedProperty(deepExport=true, prefix="thumbnail_")
protected TaskViewThumbnail mThumbnailView; protected TaskViewThumbnail mThumbnailView;
@ViewDebug.ExportedProperty(deepExport=true, prefix="header_") @ViewDebug.ExportedProperty(deepExport=true, prefix="header_")
TaskViewHeader mHeaderView; protected TaskViewHeader mHeaderView;
private View mActionButtonView; private View mActionButtonView;
private View mIncompatibleAppToastView; private View mIncompatibleAppToastView;
private TaskViewCallbacks mCb; private TaskViewCallbacks mCb;

View File

@@ -91,6 +91,9 @@ public class TaskViewHeader extends FrameLayout
if (mColor != color || Float.compare(mDimAlpha, dimAlpha) != 0) { if (mColor != color || Float.compare(mDimAlpha, dimAlpha) != 0) {
mColor = color; mColor = color;
mDimAlpha = dimAlpha; mDimAlpha = dimAlpha;
if (mShouldDarkenBackgroundColor) {
color = getSecondaryColor(color, false /* useLightOverlayColor */);
}
mBackgroundPaint.setColor(color); mBackgroundPaint.setColor(color);
ColorUtils.colorToHSL(color, mTmpHSL); 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 // Header dim, which is only used when task view hardware layers are not used
private Paint mDimLayerPaint = new Paint(); 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; private CountDownTimer mFocusTimerCountDown;
public TaskViewHeader(Context context) { 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. * 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 * Mark this task view that the user does has not interacted with the stack after a certain
* time. * time.
*/ */
void setNoUserInteractionState() { public void setNoUserInteractionState() {
mDismissButton.setVisibility(View.VISIBLE); mDismissButton.setVisibility(View.VISIBLE);
mDismissButton.animate().cancel(); mDismissButton.animate().cancel();
mDismissButton.setAlpha(1f); mDismissButton.setAlpha(1f);

View File

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