BouncerKeyguardMessage doesn't always get cleared when being set to null.

Hypothesis: textAboutToShow == msg check can potentially skip such invocations.

Bug: 249475000
Test: atest BouncerKeyguardMessageAreaTest

Change-Id: I5d198c0e693fd96c9ad5d5528452206bf871eccc
This commit is contained in:
Chandru
2022-10-20 13:48:54 +00:00
committed by Chandru S
parent 1b45430325
commit 08241b1e6a
2 changed files with 10 additions and 1 deletions

View File

@@ -70,7 +70,7 @@ open class BouncerKeyguardMessageArea(context: Context?, attrs: AttributeSet?) :
} }
override fun setMessage(msg: CharSequence?) { override fun setMessage(msg: CharSequence?) {
if (msg == textAboutToShow || msg == text) { if ((msg == textAboutToShow && msg != null) || msg == text) {
return return
} }
textAboutToShow = msg textAboutToShow = msg

View File

@@ -66,4 +66,13 @@ class BouncerKeyguardMessageAreaTest : SysuiTestCase() {
underTest.setMessage(null) underTest.setMessage(null)
assertThat(underTest.text).isEqualTo("") assertThat(underTest.text).isEqualTo("")
} }
@Test
fun testSetNullClearsPreviousMessage() {
underTest.setMessage("something not null")
assertThat(underTest.text).isEqualTo("something not null")
underTest.setMessage(null)
assertThat(underTest.text).isEqualTo("")
}
} }