This allows for controller-backed preferences to be added or
overridden via xml.
Similarly, if the controllers cause all of the preferences for
2 or 3 button nav to be unavailable, we hide the settings button.
Bug: 324036308
Test: Manual and unit tests
Flag: NA
Change-Id: I2371f3173076172489966728ac69c8767570cd56
Merged-In: I2371f3173076172489966728ac69c8767570cd56