fb: add back all keyboard IME features back (1/2)

this commit adds:

- ime switcher notification - thanks cm
- fullscreen disable on landscape
- force autorotation on IME
- volume button control for navigate in the message - thanks cm
- force to show always enter key

some fixes to the 4.2/4.3 implementations + added full multiuser
support for all this features
Irda: Add Irda System Service

This is not a perfect solution yet, but it does work and should therefore be a starting point.
It needs work to be functional on devices other than the Galaxy S4

* The Irda service is not started by default. It can be enabled via overlay.
* Uses a HAL module to communicate with sysfs

Change-Id: If0c4b2e59144b1f199c44add399a3f528ac11e5b

Conflicts:
	core/java/android/app/ContextImpl.java
	core/res/res/values/config.xml
	services/java/com/android/server/SystemServer.java

Conflicts:
	core/java/android/app/ContextImpl.java

Conflicts:
	core/java/android/app/ContextImpl.java
	core/res/res/values/config.xml
	services/java/com/android/server/SystemServer.java
	services/jni/onload.cpp
Merge branch 'kktest' of https://github.com/TEAM-Gummy/android_frameworks_base into kktest
Status bar brightness control

+ added some fixes to original implementation (thanks mostly cm for that)
+ add multiuser support
Framework: safe headset volume option (1 of 2)

thanks DvTonder

Change-Id: I5355820a24d48c1d8f54ea17a7022d891ad07857
[1/2] base: volume panel styles and tweaks

From CM - Support different styles of the volume dialog
allows expanding the dialog to show all adjustable volumes

New setting MODE_VOLUME_OVERLAY defines the style
0 = unchanged - single slider
1 = expandable - button beside to slider to expand - this is the default
2 = expanded - open already expanded

This also adds using setting VOLUME_LINK_NOTIFICATION
to allow adjusting the separation of notification and ringer volumes
default=1

This also already adds the new setting
VOLUME_ADJUST_SOUNDS_ENABLED default=1
to allow disabling the volume adjust sound

fixed some minor code style issues

- add all values multi user configurable

Change-Id: I94e0f944f76ee9751663de8ac40d99a342884259
fb: volume rocker controll (wake up and volume) thanks to

CM and omni for the proxy sensor idea

Conflicts:
Re-add auto brightness configuration UI (1/2)

- Add a button into the new brightness dialog that allows opening the
  auto brightness setup
- Enable auto-brightness adjustment (setting for general brighter/darker
  adjustment) and twilight adjustment

- this commit adds as well the complete auto brightness ehancements we had
  on 4.3

Change-Id: I7fd11ddaa112396dcb7508692aacb93bfe3da256

Conflicts:
	services/java/com/android/server/power/DisplayPowerRequest.java
	services/java/com/android/server/power/PowerManagerService.java
Frameworks: Advanced low battery indicator options (1/2)

Based on a idea I saw on Liquid and from CR3C0 (thanks guys) which we
modified to an extended version

This commit introduces following new SlimBean modes to indicate low battery

     * 0 = show dialog + play sound (default)
     * 1 = fire notification + play sound
     * 2 = show dialog only
     * 3 = fire notification only
     * 4 = play sound only
     * 5 = none

Due that notification is a unique SlimBean feature some words on it. Notification
behaviour is the same as Pop-up. User can dismiss it manually or it is
dismissed automatically if charger is connected, click on notification opens
PowerUsageSummary. Also you get a status bar ticker message about the notification
and notification is always on first place of list. And last if vibration is enabled
notification vibrates.

Patchsets:
 - codestyle corrections

Patchst
 - add PowerUsageSummary intent

cheers

Change-Id: I84476626b0ff5424454a1132ea4ef77a696070c1

Conflicts:
	core/java/android/provider/Settings.java
	packages/SystemUI/src/com/android/systemui/power/PowerUI.java
fb: add Battery Styles the new way 1/2

google draws now the battery icon which fits perfectly into our
concept. Beside that the batteryview is as well used on QS.
So we readd our battery icons (icon, percentage, icon with percentage
circle, circle perc, dot circle, dot circle perc) back and all are
drawn. As well the icon does not only change on statusbar as well
on QS it is reflected.

As usual color options are present for the User to style the icon

Change-Id: Iae9021af56a21b8d39efc5162186eb17ecc933e2

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
Revert "fb: add back all keyboard IME features back (1/2)"

This reverts commit 1bb150f131fc72ee38d32fda4db85fab189154c1.

This was causing issues with inputmethod selection and forcing the phone to hotboot
we'll revisit this another time

Conflicts:
	core/java/android/provider/Settings.java
commented out conflict flag slipped past me
add resources to allow setting default battery style and menu overflow button
fix hardware key handling of preloading and canceling recent apps
Clock click actions

Options for single, long and double click

if double click never set or set to nothing there is no delay on single click

default action if never set is clock options just like stock.

Change-Id: Id4e86542cab9e84c8b4d6428de64cc318a409378
Signed-off-by: Stevespear426 <stephen.k.spear@gmail.com>

Conflicts:
	core/res/res/values/gummy_strings.xml
	core/res/res/values/symbols.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
fb: fix volume rocker music track seek

based on an idea of DaneSH we use now audioservice
instead of Broadcast as well some minor
fixes in the key handling

Change-Id: If4afda046b9fbebda611615371a718122ffb57b6
fb: show percentage on icon in bold and use for

only percent more width in statusbar and QS
As well show on percent with icon on fully charge not the bolt
and instead the value 100

Change-Id: I4e0b837ff6e217e1c9f78d967aa57c3e2f1bf2ad
Revert "Revert "Revert "Revert "be more robust with handling unknown sensors""""

This reverts commit 6dd50a6edb7916256ef83fd7e938e001aad6b465.
Revert "Revert "Adding new constants for STEP_DETECTOR, STEP_COUNTER and GEOMAGNETIC_ROTATION_VECTOR.""

This reverts commit f95516fd54f1ed5359e4b79d748172a5e1a80c19.
Revert "Revert "Fix for build breakage. Correcting the documentatation link in Sensor.java. I added a wrong link {@link #SENSOR_TYPE_ROTATION_VECTOR} instead of {@link #TYPE_ROTATION_VECTOR}.""

This reverts commit a33672672c380b95843226c48858224e2d299057.