Fix the screen will move by itself when enabled Color correction.

Root Cause:
Using the listener to update the UI dynamically might have some time delay.

Solution:
Refactor to another implementation and avoid using the listener to update it.

Additional condition:
Add height restriction in preference to avoid the palette view to cover whole screen.

Bug: 148785841
Test: make RunSettingsRoboTests ROBOTEST_FILTER=PaletteListPreferenceTest
Change-Id: I6a854e16321b3426e2f8ff65c6404036d55caed4
6 files changed