From 009e2a00785c845104ebfa4cd8ab3ada71f7cfe8 Mon Sep 17 00:00:00 2001 From: Rahul Banerjee Date: Fri, 22 Jul 2022 15:57:47 -0700 Subject: [PATCH] Fix "square corners" appearance of new Back Arrow This fixes the appearance of the "ENTRY" state, by setting an explicit corner radius that matches the corners of the "ACTIVE" state. While doing this, it turned out that the "INACTIVE" and "CANCELLED" states were reusing the corner radius of the "ENTRY" state, so that had to be split off into a new constant: "cancelledEdgeCornerRadius" (this is the radius when the Back Arrow is "squished" against the edge, and if let go, will cancel the current gesture) Bug: 238445578 Test: Manual Change-Id: Ie5e7df298565f87c4262d79fa6b7960bf8e07977 --- packages/SystemUI/res/values/dimens.xml | 5 +++-- .../systemui/navigationbar/gestural/BackPanelController.kt | 2 +- .../systemui/navigationbar/gestural/EdgePanelParams.kt | 4 ++++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml index 0cafa355d8475..231737598502d 100644 --- a/packages/SystemUI/res/values/dimens.xml +++ b/packages/SystemUI/res/values/dimens.xml @@ -59,8 +59,8 @@ 4dp 8dp 60dp - 6dp - 6dp + 30dp + 30dp 10dp 7dp @@ -90,6 +90,7 @@ 12dp 0dp + 6dp @*android:dimen/status_bar_icon_size diff --git a/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/BackPanelController.kt b/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/BackPanelController.kt index 28ab83c83a42c..7bc9011479ca4 100644 --- a/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/BackPanelController.kt +++ b/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/BackPanelController.kt @@ -626,7 +626,7 @@ class BackPanelController private constructor( if (currentState == GestureState.INACTIVE || currentState == GestureState.CANCELLED ) - params.entryIndicator.backgroundDimens.edgeCornerRadius + params.cancelledEdgeCornerRadius else params.activeIndicator.backgroundDimens.edgeCornerRadius ) diff --git a/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgePanelParams.kt b/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgePanelParams.kt index a3fb58d5b0150..d56537b694dac 100644 --- a/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgePanelParams.kt +++ b/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgePanelParams.kt @@ -33,6 +33,8 @@ data class EdgePanelParams(private var resources: Resources) { private set var fullyStretchedIndicator = BackIndicatorDimens() private set + var cancelledEdgeCornerRadius: Float = 0f + private set var cancelledArrowDimens = ArrowDimens() // navigation bar edge constants @@ -132,6 +134,8 @@ data class EdgePanelParams(private var resources: Resources) { ) ) + cancelledEdgeCornerRadius = getDimen(R.dimen.navigation_edge_cancelled_edge_corners) + cancelledArrowDimens = ArrowDimens( length = getDimen(R.dimen.navigation_edge_cancelled_arrow_length), height = getDimen(R.dimen.navigation_edge_cancelled_arrow_height)