Merge "Merge "Do not allow focus on invisible buttons" into udc-dev am: 123057466d" into udc-d1-dev am: 681c751a0a

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23215701

Change-Id: I7d5b8003fee5f01cb72b1723ada2391f32f62139
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Automerger Merge Worker
2023-05-13 00:47:55 +00:00
2 changed files with 8 additions and 0 deletions

View File

@@ -1235,6 +1235,8 @@ public class MediaControlPanel {
if ((buttonId == R.id.actionPrev && semanticActions.getReservePrev())
|| (buttonId == R.id.actionNext && semanticActions.getReserveNext())) {
notVisibleValue = ConstraintSet.INVISIBLE;
mMediaViewHolder.getAction(buttonId).setFocusable(visible);
mMediaViewHolder.getAction(buttonId).setClickable(visible);
} else {
notVisibleValue = ConstraintSet.GONE;
}

View File

@@ -530,6 +530,8 @@ public class MediaControlPanelTest : SysuiTestCase() {
verify(collapsedSet).setVisibility(R.id.actionPlayPause, ConstraintSet.VISIBLE)
assertThat(actionNext.isEnabled()).isTrue()
assertThat(actionNext.isFocusable()).isTrue()
assertThat(actionNext.isClickable()).isTrue()
assertThat(actionNext.contentDescription).isEqualTo("next")
verify(collapsedSet).setVisibility(R.id.actionNext, ConstraintSet.VISIBLE)
@@ -576,6 +578,8 @@ public class MediaControlPanelTest : SysuiTestCase() {
assertThat(actionPrev.isEnabled()).isFalse()
assertThat(actionPrev.drawable).isNull()
assertThat(actionPrev.isFocusable()).isFalse()
assertThat(actionPrev.isClickable()).isFalse()
verify(expandedSet).setVisibility(R.id.actionPrev, ConstraintSet.INVISIBLE)
assertThat(actionNext.isEnabled()).isFalse()
@@ -610,6 +614,8 @@ public class MediaControlPanelTest : SysuiTestCase() {
assertThat(actionNext.isEnabled()).isFalse()
assertThat(actionNext.drawable).isNull()
assertThat(actionNext.isFocusable()).isFalse()
assertThat(actionNext.isClickable()).isFalse()
verify(expandedSet).setVisibility(R.id.actionNext, ConstraintSet.INVISIBLE)
}