Fixed
Status Update
Comments
je...@google.com <je...@google.com> #2
Hi. Thanks for reporting this. Fixed in alpha-04
po...@google.com <po...@google.com>
ad...@google.com <ad...@google.com>
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-main
commit e782987543a9f8ccd485e970ddc74564b24378db
Author: Vighnesh Raut <vighnesh.raut13@gmail.com>
Date: Mon Jan 02 15:27:40 2023
fix: tab row crashes when only 1 tab is added
Bug: b/264018028
Test: Added unit test
Change-Id: I6381dbac304fc1d69d3708c6655f8b595668e93f
M tv/tv-material/src/androidTest/java/androidx/tv/material/TabRowTest.kt
M tv/tv-material/src/main/java/androidx/tv/material/TabRow.kt
https://android-review.googlesource.com/2373449
Branch: androidx-main
commit e782987543a9f8ccd485e970ddc74564b24378db
Author: Vighnesh Raut <vighnesh.raut13@gmail.com>
Date: Mon Jan 02 15:27:40 2023
fix: tab row crashes when only 1 tab is added
Bug:
Test: Added unit test
Change-Id: I6381dbac304fc1d69d3708c6655f8b595668e93f
M tv/tv-material/src/androidTest/java/androidx/tv/material/TabRowTest.kt
M tv/tv-material/src/main/java/androidx/tv/material/TabRow.kt
Description
Currently,
Modifier.composed { /*code*/ } != Modifier.composed { /*same code*/ }
, which can lead to unexpected results in some cases.For example,
Modifier.testTag("tag")
is inferred to be static, butModifier.testTag("tag") != Modifier.testTag("tag")
, which will make a difference when Live Literals is enabled.To fix this, we need to implement
ComposedModifier.equals()
, which is not possible because we can't meaningfully compare lambdas with each other. As an alternative, we can add a version ofcomposed
that accepts a key to base equality on.Simplified, something like this: