Previously, DashboardFragment stores preference controllers in an ArrayMap of <Class, AbstractPreferenceController>. Thus when there are multiple controllers of same class (ie. multiple PreferenceCategoryControllers), they cannot be stored simultaneously. This changes the value to a List so we can store multiple controllers of the same Class without extraneous sub-classing. Bug: 70949662 Test: All existing tests still pass. Added DashboardFragmentTest#testPreferenceControllerSetter_shouldAddAndNotReplace and DashboardFragmentTest#updateState_doesNotSkipControllersOfSameClass. Change-Id: I397e8c91977ea1180d48a3af75dd4058bf1175c0
14 KiB
14 KiB