Add "other device options" from CM

Change-Id: I9c853fa0e94210c6a8110f2601bffef8a6f42e52
Add basic-level gamma calibration to hardware tunables

Change-Id: I3223cb111889be71175dee67723ae44cba051e23
Use a common base class for HW tuning sliders.

Change-Id: I61b458ffb08eb765f8a720657056243f56e76f17
Settings: show force overflow if any bindable keys available

Change-Id: I8f15db14fe09a7ff00d7c3f6088bb53691c1aed5

Conflicts:
	src/com/android/settings/cyanogenmod/HardwareKeys.java
Settings: Gamma calibration tunables

- Add support for negative values to gamma.
- Remove logs.

Change-Id: Ie06bf68bbc8e875d36966ed7f98a6beadb0169cc
Settings: AdaptiveBacklight support

Add support for adaptive backlight technologies like NVIDIA SmartDimmer, QCOM CABL or Samsung CABC.

Patchset 2: Use internal shared prefs to store the smardimmer setting
Patchset 3: Rename to AdaptiveBacklight
Patchset 4: Reorganize settings and strings to follow design guidelines
Patchset 5: CleanUp
Patchset 6: Added suggestions
Patchset 7: Sync default value. CleanUp.

Depends	on http://review.cyanogenmod.org/#/c/48465/

Change-Id: Ib0e05770bf90b664a00e65f46d32cc9a07be1377
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Check for presence of hardware abstraction framework.

Change-Id: I59da970d4a4eb74a571d1ac27cb18e351dfc2a53
Remake kb/button backlight controls as a PowerManager client

PM now has observers for these settings values and applies them in
realtime, so piggyback on those for button light management

Change-Id: I7568069bd6cacf5cbb56c8d0a1746894725b87fa
Cleanup: Use a helper class for system setting binary toggles.

Change-Id: Iad7f8a6bf85b23223e1def18e8c9eaa0f8dd253c
Settings: ensure SystemSettingCheckBoxPreference defaultValue is set

Change-Id: If2a6234ad78e7b03de86f72e866633817cf888c5
Add configurable kb/button backlight timeout

Adjust the value for Settings.System.BUTTON_BACKLIGHT_TIMEOUT

Change-Id: Iea534312b09b38a95185d7fc97d922b23faf29e3

Conflicts:
	res/values/cm_strings.xml
Improve button/keyboard backlight code.

- Improve UX
- Deduplicate code

Change-Id: Ie0218de8b83fe49e3fe1d91a64c2522af03ba06d

Conflicts:
	res/xml/button_settings.xml
	src/com/android/settings/cyanogenmod/ButtonSettings.java
Save value to shared prefs in HW value scale.

Otherwise we can run into precision issues if the HW e.g. uses a 0..255
scale.

Change-Id: I2df81db728faa64ee7b09cc3101122ff5c95b7a3