Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bbbca193 authored by Brad Hinegardner's avatar Brad Hinegardner
Browse files

Now Playing is too low on the lock screen

NOTE: on udfps devices while now playing + on pixel stand 2, and max density, there remains overlapping related to the assistant icon.

Test: manually test UI on Pixel Stand 2
Test: manually test UI by pushing song to NowPlaying via adb
Test: manually test on devices both with and without udfps, on large screen density and low density
Fixes: 230466568
Change-Id: I6f92c92f616363bf1812d221d31e614501b872df
parent bbe23b9b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -762,7 +762,7 @@
    <dimen name="keyguard_lock_padding">20dp</dimen>

    <dimen name="keyguard_indication_margin_bottom">32dp</dimen>
    <dimen name="lock_icon_margin_bottom">110dp</dimen>
    <dimen name="lock_icon_margin_bottom">74dp</dimen>
    <dimen name="ambient_indication_margin_bottom">71dp</dimen>


+4 −0
Original line number Diff line number Diff line
@@ -158,6 +158,10 @@ public class LockIconView extends FrameLayout implements Dumpable {
        return mLockIconCenter.y - mRadius;
    }

    float getLocationBottom() {
        return mLockIconCenter.y + mRadius;
    }

    /**
     * Updates the icon its default state where no visual is shown.
     */
+4 −0
Original line number Diff line number Diff line
@@ -280,6 +280,10 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
        return mView.getLocationTop();
    }

    public float getBottom() {
        return mView.getLocationBottom();
    }

    private void updateVisibility() {
        if (mCancelDelayedUpdateVisibilityRunnable != null) {
            mCancelDelayedUpdateVisibilityRunnable.run();
+14 −5
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.systemui.keyguard.data.repository

import com.android.keyguard.KeyguardUpdateMonitor
import com.android.systemui.common.coroutine.ChannelExt.trySendWithFailureLogging
import com.android.systemui.common.coroutine.ConflatedCallbackFlow.conflatedCallbackFlow
import com.android.systemui.common.shared.model.Position
@@ -123,6 +124,11 @@ interface KeyguardRepository {
     * Sets the relative offset of the lock-screen clock from its natural position on the screen.
     */
    fun setClockPosition(x: Int, y: Int)

    /**
     * Returns whether the keyguard bottom area should be constrained to the top of the lock icon
     */
    fun isUdfpsSupported(): Boolean
}

/** Encapsulates application state for the keyguard. */
@@ -131,10 +137,11 @@ class KeyguardRepositoryImpl
@Inject
constructor(
        statusBarStateController: StatusBarStateController,
    private val keyguardStateController: KeyguardStateController,
        dozeHost: DozeHost,
        wakefulnessLifecycle: WakefulnessLifecycle,
        biometricUnlockController: BiometricUnlockController,
        private val keyguardStateController: KeyguardStateController,
        private val keyguardUpdateMonitor: KeyguardUpdateMonitor,
) : KeyguardRepository {
    private val _animateBottomAreaDozingTransitions = MutableStateFlow(false)
    override val animateBottomAreaDozingTransitions =
@@ -311,6 +318,8 @@ constructor(
        _clockPosition.value = Position(x, y)
    }

    override fun isUdfpsSupported(): Boolean = keyguardUpdateMonitor.isUdfpsSupported

    private fun statusBarStateIntToObject(value: Int): StatusBarState {
        return when (value) {
            0 -> StatusBarState.SHADE
+5 −0
Original line number Diff line number Diff line
@@ -48,4 +48,9 @@ constructor(
    fun setAnimateDozingTransitions(animate: Boolean) {
        repository.setAnimateDozingTransitions(animate)
    }

    /**
     * Returns whether the keyguard bottom area should be constrained to the top of the lock icon
     */
    fun shouldConstrainToTopOfLockIcon(): Boolean = repository.isUdfpsSupported()
}
Loading