Merge "Use status bar appearance to determine header element brightness." into udc-qpr-dev am: f502b11399 am: e32c6e284d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23517670

Change-Id: I0d64a2c28d09fc13fff4460d84009eb2f7554d03
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Matt Sziklay
2023-06-02 01:00:05 +00:00
committed by Automerger Merge Worker

View File

@@ -4,7 +4,7 @@ import android.app.ActivityManager.RunningTaskInfo
import android.content.Context
import android.graphics.Color
import android.view.View
import android.view.WindowInsetsController.APPEARANCE_LIGHT_STATUS_BARS
/**
* Encapsulates the root [View] of a window decoration and its children to facilitate looking up
* children (via findViewById) and updating to the latest data from [RunningTaskInfo].
@@ -23,6 +23,10 @@ internal abstract class DesktopModeWindowDecorationViewHolder(rootView: View) {
* with the caption background color.
*/
protected fun shouldUseLightCaptionColors(taskInfo: RunningTaskInfo): Boolean {
return Color.valueOf(taskInfo.taskDescription.statusBarColor).luminance() < 0.5
return if (Color.alpha(taskInfo.taskDescription.statusBarColor) != 0) {
Color.valueOf(taskInfo.taskDescription.statusBarColor).luminance() < 0.5
} else {
taskInfo.taskDescription.statusBarAppearance and APPEARANCE_LIGHT_STATUS_BARS == 0
}
}
}