Keep app when opening floating window from recents panel

Start activity asynchronously by appending it to system's
message queue to let RecentsPanelView cleanly execute
dismissAndGoBack before the floating window gets started.

Change-Id: Ie9c74b9f0b39f3aee81c62246cdcae15de83ee0d

Conflicts:
	packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java
PEEK: Sensors improvements

- Bring some fixes to the algorithm thanks to @D4rKn3sSyS
- Cleanup

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
HOVER: Don't treat touch outside event as true if is animating

- It needs to wait animation to be finished to start listen for touch outside
  and runs hide timer.

Change-Id: I744f1e4a1e5dc6fd30501e9fd6f793bf905dfd30
Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
HOVER: Respect screen limits when adding view

As for what @Decad3nce reported here http://review.cyanogenmod.org/#/c/66654/
we shouldn't keep FLAG_LAYOUT_NO_LIMITS so view doesn't exceed the screen limits.

Thank you Adnan :)

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Change-Id: Ifcbc4a1143362e1b7dd40e710126060688c894b9
Fix ResourceNotFoundException when updating  applied theme

If the user has a theme applied and there is an update to that theme,
then the themed apps will crash. This is because the theme's APK path changes,
but the apps do not update their resources. Apps were not updating their resources
because updateConfiguration() determined that the config (which only has pkgName) hasn't changed.

The problem is fixed by first applying the default theme config and then re-applying the
updated theme.

SystemUI was crashing with a NPE while verifying this fix, so a NP check was added to SystemUI as well.

Change-Id: I00e32fc1535b4d279fcb37c35f868501ecc1dd19

Conflicts:
	packages/SystemUI/src/com/android/systemui/quicksettings/UserTile.java
	services/java/com/android/server/ThemeService.java
IconPackHelper: Respect the original size of bitmap icons

When use icon packs on low-resolution devices, for example, my HDPI
phone, it seems that using the size returned by
getLauncherLargeIconSize() will cause a blurness on
some icons that are not included in the icon pack because of the compose
function.

This patch respects the original size of the icon if the icon is an
instance of BitmapDrawable but use the size returned by
getLauncherLargeIconSize() if the icon is an instance of PaintDrawable.
This will remove icon blurness on low-resolution devices.

Change-Id: Ifcb39020d934a9c7cb409e1206a179d64f99aa37
SystemUI: fix torch toggle delay on boot

Change-Id: I7b1a1a310cf88fdde4250ae40643570016e1f380
Signed-off-by: Roman Birg <roman@cyngn.com>
Respect DPM when deciding whether keyguard is disabled by profile.

Change-Id: I2fd50e1edd517956a59770a2ecd754cea0003c1c