diff options
| author | 2025-01-21 17:28:19 -0800 | |
|---|---|---|
| committer | 2025-01-21 17:28:19 -0800 | |
| commit | a4e305b190b7d398528c75ff81eceee23c64e3cf (patch) | |
| tree | c5cd73161a6f1813cf57d2765867e7fefbd74ba9 | |
| parent | cdba3feaa7fb7ca424061ba97ca502e108d98e30 (diff) | |
| parent | 27f5f57dcdc15b997d2258529b53660a9337a0be (diff) | |
Merge "Support position clock in preview using UDFPS location" into main
| -rw-r--r-- | packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockFaceLayout.kt | 49 | ||||
| -rw-r--r-- | packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPreviewConfig.kt | 1 |
2 files changed, 30 insertions, 20 deletions
diff --git a/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockFaceLayout.kt b/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockFaceLayout.kt index a075d0d5b249..37b611f3c6b9 100644 --- a/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockFaceLayout.kt +++ b/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockFaceLayout.kt @@ -111,28 +111,37 @@ class DefaultClockFaceLayout(val view: View) : ClockFaceLayout { connect(lockscreenClockViewLargeId, START, PARENT_ID, START) connect(lockscreenClockViewLargeId, END, PARENT_ID, END) - // In preview, we'll show UDFPS icon for UDFPS devices - // and nothing for non-UDFPS devices, - // and we're not planning to add this vide in clockHostView - // so we only need position of device entry icon to constrain clock - // Copied calculation codes from applyConstraints in DefaultDeviceEntrySection - clockPreviewConfig.lockId?.let { lockId -> - connect(lockscreenClockViewLargeId, BOTTOM, lockId, TOP) + clockPreviewConfig.udfpsTop?.let { + val screenHeight = context.resources.displayMetrics.heightPixels + connect( + lockscreenClockViewLargeId, + BOTTOM, + PARENT_ID, + BOTTOM, + (screenHeight - it).toInt(), + ) } ?: run { - val bottomPaddingPx = context.getDimen("lock_icon_margin_bottom") - val defaultDensity = - DisplayMetrics.DENSITY_DEVICE_STABLE.toFloat() / - DisplayMetrics.DENSITY_DEFAULT.toFloat() - val lockIconRadiusPx = (defaultDensity * 36).toInt() - val clockBottomMargin = bottomPaddingPx + 2 * lockIconRadiusPx - connect( - lockscreenClockViewLargeId, - BOTTOM, - PARENT_ID, - BOTTOM, - clockBottomMargin, - ) + // Copied calculation codes from applyConstraints in + // DefaultDeviceEntrySection + clockPreviewConfig.lockId?.let { lockId -> + connect(lockscreenClockViewLargeId, BOTTOM, lockId, TOP) + } + ?: run { + val bottomPaddingPx = context.getDimen("lock_icon_margin_bottom") + val defaultDensity = + DisplayMetrics.DENSITY_DEVICE_STABLE.toFloat() / + DisplayMetrics.DENSITY_DEFAULT.toFloat() + val lockIconRadiusPx = (defaultDensity * 36).toInt() + val clockBottomMargin = bottomPaddingPx + 2 * lockIconRadiusPx + connect( + lockscreenClockViewLargeId, + BOTTOM, + PARENT_ID, + BOTTOM, + clockBottomMargin, + ) + } } val smallClockViewId = context.getId("lockscreen_clock_view") diff --git a/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPreviewConfig.kt b/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPreviewConfig.kt index c705c51a00d5..abc8e150bfd2 100644 --- a/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPreviewConfig.kt +++ b/packages/SystemUI/plugin/src/com/android/systemui/plugins/clocks/ClockPreviewConfig.kt @@ -25,6 +25,7 @@ data class ClockPreviewConfig( val isShadeLayoutWide: Boolean, val isSceneContainerFlagEnabled: Boolean = false, val lockId: Int? = null, + val udfpsTop: Float? = null, ) { fun getSmallClockTopPadding( statusBarHeight: Int = SystemBarUtils.getStatusBarHeight(context) |