Controls UI - Do not save empty structures
We currently save state for all structures. If no controls are contained, there is no need to store the structure in the favorites file. Bug: 151137318 Test: atest ControlsControllerImplTest Change-Id: I8b604c9321118e3f349d779bbdfaf6138b3557fb
This commit is contained in:
@@ -489,10 +489,12 @@ private object Favorites {
|
||||
updatedStructure
|
||||
} else { s }
|
||||
|
||||
structures.add(newStructure)
|
||||
if (!newStructure.controls.isEmpty()) {
|
||||
structures.add(newStructure)
|
||||
}
|
||||
}
|
||||
|
||||
if (!replaced) {
|
||||
if (!replaced && !updatedStructure.controls.isEmpty()) {
|
||||
structures.add(updatedStructure)
|
||||
}
|
||||
|
||||
|
||||
@@ -521,7 +521,7 @@ class ControlsControllerImplTest : SysuiTestCase() {
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testReplaceFavoritesForStructure_noFavorites() {
|
||||
fun testReplaceFavoritesForStructure_noExistingFavorites() {
|
||||
controller.replaceFavoritesForStructure(TEST_STRUCTURE_INFO)
|
||||
delayableExecutor.runAllReady()
|
||||
|
||||
@@ -530,6 +530,16 @@ class ControlsControllerImplTest : SysuiTestCase() {
|
||||
controller.getFavoritesForComponent(TEST_COMPONENT))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testReplaceFavoritesForStructure_doNotStoreEmptyStructure() {
|
||||
controller.replaceFavoritesForStructure(
|
||||
StructureInfo(TEST_COMPONENT, "Home", emptyList<ControlInfo>()))
|
||||
delayableExecutor.runAllReady()
|
||||
|
||||
assertEquals(0, controller.countFavoritesForComponent(TEST_COMPONENT))
|
||||
assertEquals(emptyList<ControlInfo>(), controller.getFavoritesForComponent(TEST_COMPONENT))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testReplaceFavoritesForStructure_differentComponentsAreFilteredOut() {
|
||||
controller.replaceFavoritesForStructure(TEST_STRUCTURE_INFO)
|
||||
|
||||
Reference in New Issue
Block a user