Merge "[SB Refactor] Override #getDrawingRect for the new views for a11y." into tm-qpr-dev am: d1ca02152f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21108008 Change-Id: I072c5bf889aad05014c148cec1238393f9857d41 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -77,6 +77,17 @@ open class ModernStatusBarView(context: Context, attrs: AttributeSet?) :
|
||||
return binding.getShouldIconBeVisible()
|
||||
}
|
||||
|
||||
/** See [StatusBarIconView.getDrawingRect]. */
|
||||
override fun getDrawingRect(outRect: Rect) {
|
||||
super.getDrawingRect(outRect)
|
||||
val translationX = translationX.toInt()
|
||||
val translationY = translationY.toInt()
|
||||
outRect.left += translationX
|
||||
outRect.right += translationX
|
||||
outRect.top += translationY
|
||||
outRect.bottom += translationY
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes this view.
|
||||
*
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.systemui.statusbar.pipeline.shared.ui.view
|
||||
|
||||
import android.graphics.Rect
|
||||
import android.testing.AndroidTestingRunner
|
||||
import android.testing.TestableLooper.RunWithLooper
|
||||
import androidx.test.filters.SmallTest
|
||||
@@ -118,6 +119,22 @@ class ModernStatusBarViewTest : SysuiTestCase() {
|
||||
assertThat(view.isIconVisible).isEqualTo(false)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun getDrawingRect_takesTranslationIntoAccount() {
|
||||
val view = createAndInitView()
|
||||
|
||||
view.translationX = 50f
|
||||
view.translationY = 60f
|
||||
|
||||
val drawingRect = Rect()
|
||||
view.getDrawingRect(drawingRect)
|
||||
|
||||
assertThat(drawingRect.left).isEqualTo(view.left + 50)
|
||||
assertThat(drawingRect.right).isEqualTo(view.right + 50)
|
||||
assertThat(drawingRect.top).isEqualTo(view.top + 60)
|
||||
assertThat(drawingRect.bottom).isEqualTo(view.bottom + 60)
|
||||
}
|
||||
|
||||
private fun createAndInitView(): ModernStatusBarView {
|
||||
val view = ModernStatusBarView(context, null)
|
||||
binding = TestBinding()
|
||||
|
||||
Reference in New Issue
Block a user