Merge "[SB Refactor] Override #getDrawingRect for the new views for a11y." into tm-qpr-dev

This commit is contained in:
Caitlin Shkuratov
2023-01-31 14:13:02 +00:00
committed by Android (Google) Code Review
2 changed files with 28 additions and 0 deletions

View File

@@ -77,6 +77,17 @@ open class ModernStatusBarView(context: Context, attrs: AttributeSet?) :
return binding.getShouldIconBeVisible() 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. * Initializes this view.
* *

View File

@@ -16,6 +16,7 @@
package com.android.systemui.statusbar.pipeline.shared.ui.view package com.android.systemui.statusbar.pipeline.shared.ui.view
import android.graphics.Rect
import android.testing.AndroidTestingRunner import android.testing.AndroidTestingRunner
import android.testing.TestableLooper.RunWithLooper import android.testing.TestableLooper.RunWithLooper
import androidx.test.filters.SmallTest import androidx.test.filters.SmallTest
@@ -118,6 +119,22 @@ class ModernStatusBarViewTest : SysuiTestCase() {
assertThat(view.isIconVisible).isEqualTo(false) 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 { private fun createAndInitView(): ModernStatusBarView {
val view = ModernStatusBarView(context, null) val view = ModernStatusBarView(context, null)
binding = TestBinding() binding = TestBinding()