Frameworks: bring back all lockscreen Widget Settings

Credits:Omni rom
Framework: disable keyguard widget frame (1/2)

Conflicts:
	core/java/android/provider/Settings.java
update api
Themes: Build icon cache when applying icons

The theme service will schedule building of the icon cache when
an icon pack is applied.  This will allow the icon cache to be
populated immediately after icons are applied rather than build
it up as icons are requested.

Change-Id: I453eda5f6298ff79e22827c622a0eddcab9c721d
Themes: Pass resource IDs instead of bitmaps [1/2]

Rather than passing around bitmaps in the ComposedIconInfo we
can pass the resource IDs associated with each of the components
and retrieve those drawables when composing the icon.

Change-Id: If855e60e505571f25316e6728e423fbee62c32d3
Revert "HOVER: touch to hide (1/2)"

This reverts commit 015a1a8a79daa2d2ba273eaaac850cd9d034c0c7.
HOVER: A few improvements

- Better touch outside touch input handling
- On touch outside hide both case (expanded and non) in 1.25 secs
- Tweak clear foreground notification when we are on the same app
- Code style
- Tiny cleanup

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Change-Id: Ibb0c7c09ae3256bbf744f359cca651c8cb8112d9
ProximityWake: Squash and port from CyanogenMod

PS1: Add support for checking proximity when waking device
PS2: Fix proximity wakeup reference
PS3: Be sure to shutdown the proximity sensor after display wake
PS4: Check proximity flags only if from native

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Change-Id: I5d09f6480b3e0b3a059bcc990f156117f4250483
Themes: Allow clearing the wallpaper and ls wallpaper

By providing an empty string for the MODS_LAUNCHER and
MODS_LOCKSCREEN components, the theme service will clear out any
existing wallpaper the user had set.  This provides the same
functionality as if the user was picking "No wallpaper" from the
picker.

Change-Id: I0c349ad4afa2bcef2c302105315709786510c0aa
Themes: setUserRequired(false) when updating audibles

This prevents the following exception
F/Environment(18007): Path requests must specify a user by using UserEnvironment
F/Environment(18007): java.lang.Throwable
F/Environment(18007):   at android.os.Environment.throwIfUserRequired(Environment.java:787)

Change-Id: Ic6ac7537079ed27912c40683c877e05992b708e9
AudioService: Don't adjust volume when vol-downing to vibrate or silent

Pressing vol-down to vibrate or silent would (previously) still adjust the
stream volume, setting the last audible volume to 0, which is not allowed
for voice-capable devices.  Thus, the last audible volume would reset to
default on reboot if on vibrate/silent or the lowest volume setting.

By not adjusting volume when vol-downing to vibrate or silent on
voice-capable devices, the last audible volume is always preserved across
reboot.
[1/2] Base: Configurable rotation

Configurable rotation modes -
- 0 (portrait)
- 90 (landscape)
- 180 (upside down)
- 270 (landscape)

Also move the option to enable/disable auto rotate to display settings from accessibility settings if device supports it.

Settings: https://gerrit.omnirom.org/#/c/4527/

PS9
unify defaults

Change-Id: I311b14754702831197c007e4dfe42d8523b970c6
Swap volume buttons when the screen is rotated by 90 or 180 degrees

Change to default behaviour not configurable due that it is now
more natural

Change-Id: I323b647066e8c73fac60067141d1add7b2f9962d
Fix appwidgets not updating

Previously there was a bug where if an appwidget's update caused a
TransactionTooLargeException then the AppWidgetServiceImpl.Host's
callbacks were completely disabled, for all widgets.

The fix still allows a DeadObjectException or other RemoteException
to disable the host callbacks, as that would be caused by a bad host.

Fixes issue 28216 on the public tracker
https://code.google.com/p/android/issues/detail?id=28216

Change-Id: I5c5d5939d7211ed23cca69e6674de730b51b0f3e
Signed-off-by: Kevin Barry <kevin@teslacoilsw.com>
Add an option to change the device hostname (1/2).

This adds an option to modify the device hostname used
in ip resolution. This is useful when connecting to the
android device in a dynamic dhcp environment.

Change-Id: I44e4771f4415a32fe66867d4dd90f1ad138341e1
QuickSettings: onlongclick: Change autorotation tile longpress to enter display settings
Revert "Remove Slim QuietHours 1"

This reverts commit 82f7348338fcfabf382dd6f63b5ca468b20340c2.
[1/7] Base: Blacklist support

telephony: https://gerrit.omnirom.org/#/c/6347/
InCallUI: https://gerrit.omnirom.org/#/c/5669/
Mms: https://gerrit.omnirom.org/#/c/5671/
Settings: https://gerrit.omnirom.org/#/c/5011/
TelephonyProvider: https://gerrit.omnirom.org/#/c/5012/
Telephony: https://gerrit.omnirom.org/#/c/5010/

Change-Id: Ic5a59be11f76b4a9eba075d9c3525086b3ee389e

[1/7] Base: Blacklist permission

There is no permission check for blacklist.
So any app can edit the blacklist.
Add a system-only permission to prevent this.

Change-Id: I1d817e7127bb892aa6f4d4b22fdfd3efb4baa3fa

Conflicts:
	core/java/android/provider/Settings.java
	core/res/res/values/strings_custom.xml
Quick launch powerMenu action

Conflicts:
	core/java/com/android/internal/util/cm/NavigationRingConstants.java
	core/res/res/values/ras_symbols.xml
Use java.util.Objects instead on internal API

Not needed since java.util.Objects implements all the needed
functionality.

Change-Id: Icd31d49a9801d1705427f028e9ac927d58e7d34c

Conflicts:
	services/java/com/android/server/am/ActivityStack.java