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

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

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

View File

@@ -4,7 +4,7 @@ import android.app.ActivityManager.RunningTaskInfo
import android.content.Context import android.content.Context
import android.graphics.Color import android.graphics.Color
import android.view.View 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 * 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]. * 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. * with the caption background color.
*/ */
protected fun shouldUseLightCaptionColors(taskInfo: RunningTaskInfo): Boolean { 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
}
} }
} }