Settings: Added choice of 45 seconds for screen timeout, lock screen and dream.

Change-Id: I58cb14776fe9d447b79faf810d7f6142bc058341
Fix NPE in Settings -> Language & input -> Default -> Setup input methods

If the InputMethodAndLanguageSettings fragment is launched in IME-only
mode, it removes most preferences, so we need to null-check them before
use.

Change-Id: Ifcd1358bdee69d06877510e0eafe88aa43021780
Merge "Settings: Added choice of 45 seconds for screen timeout, lock screen and dream." into android-4.4
Revert "Dark UI: CyanKang goes TRDS"

This reverts commit 0e1b490.

Change-Id: I5bea6d6769e843225478ecc541c546d0e88c6210
[2/4] Settings: TRDS 3.0 and new theme engine preparation

For the one who do not know this feature see as reference
the first two versions here:

https://github.com/SlimRoms/frameworks_base/commit/b330fde28306286572ba390e451a72539c0c3576

https://github.com/SlimRoms/frameworks_base/commit/3194015737b7944b4185fca007b8d167a0675cd8

we got now over a year now a lot experience how to handle the qualifier fallback
as well how to theme it and how to handle other apps. Based on this knowledge we
redid some parts of TRDS engine with following new features/additions and fixes
to have now a final perfect working TRDS

- compared to the old versions where it was needed on some apps to restart them
  in background this is not needed any more. All is handled about the internal
  AOSP resource handling and on qualifier change the caches are cleared
  and the apps get an onconfigurationchanged to restart the activity
  like it is doing on orientation change eg
- inverted folder is now depreciated and the new folders are holodark
  and hololight which allows on the one hand a dark theme (at least
  how TRDS started) and a light based theme hololight
- This name change is mainly because of the new theme engine which
  will come which uses this as base to add 2 external themes at the same
  time and give the user the ability to switch between them. But this is
  still in early stages and this commit is just the preparation for it
- Two new automodes are now integrated. User can enable the twilight modus
  which enables/disables holodark/hololight depending on the daytime...means
  on the evening it switches to holodark on normal day it is hololight.
  The other automode is based on light conditions....means that if it is
  dark outside it switches to holodark....if we have bright light conditions
  it switches immediatelly to hololight. Due of the resource cache handling now
  this happens immediatelly for the user and feels completly system integrated
  and happens without delay. A bit comparable to some navigation tool for cars
  which can switch automatically from dark to light and back
- currently the auto modes as well the manual mode switches between holodark
  and hololight. Due that we do not have currently anything hololight themed
  in the source hololight = stock theme. We will give the user the ability
  later when done to choose between which modes the user want to switch
  (stock/holodark/hololight). But this does not make sense at the moment.
  As soon as we have done the light theme or theme engine (lets see what
  comes first) we will open the ability to choose it. This is only a small code change
- a lot small tweaks and fixes went as well into the new version

Whatever this commit as usual adds the support for it. The themeing is done in the
other commits by kroz which is as well way more extended then on the older versions

cheers

PatchSet:
- derp
PatchSet3:
- tired me derp again
PatchSet:
- adapt to new qualifier structure

- listen to onconfigurationchange and mode settings value
  and let the switch
  switch if the uiThemeMode has changed. As well permit
  manual switching if automatic light mode is enabled
  and inform the user about

Change-Id: I5b857c542d92b9fd253b3556f14c790226594c4f

Conflicts:
	res/values/ok_strings.xml
QS: add theme switcher tile (TRDS) 2/2

this adds a theme switcher tile

normal click: turn on/off dark/light theme
longpress: switch between the auto modes (manual/light sensor/twilight)

Change-Id: I5f4bb146e240bf31b6486aeff85b0828ee6fbb09

Conflicts:
	src/com/android/settings/slim/quicksettings/QuickSettingsUtil.java
merge changes from Omni 4.4 into local branch