Halo: Avoid showing Halo))) icons in status bar while added to Halo (Credits @Anu6is)
Icon reorder on expanded status bar

When tearing down notification panel halo is near quick settings button (no notifications present). When you flip to QS panel and then reflip to notification panel Halo icon change position, moves to third icon layout (as when clear-al button is there) from right instead to stay in the second one.
Icons layouts are reordered and fix this behaviour. From left to right:

Clear-All button // Halo button // QS button.

http://goo.gl/n1GjU

Credits BigBrother1984
Kill floating activities running in the same thread when tapping outside
This change makes all activities from the same app to be finished when we tap outside the halo window. Other apps running in different threads
(floating or not) won't be finished.

Change-Id: I3c51eafdcee7032fa90876411da3ff1eae0106c3

Conflicts:
	policy/src/com/android/internal/policy/impl/PhoneWindow.java
Some changes

Conflicts:
	core/res/res/values/dimens.xml
	packages/SystemUI/res/layout/halo_speech.xml

Change-Id: I3a9befc64915fbba9b9bbe421a936f3ef5d63906
Completely hide Halo))) icons while tasking
- previous commit by BigBrother1984 stopped the highlighting of Halo))) icons
  this should remove them completely. Other status bar icons are still highlighted
Halo: Merge new icons order in expanded Pie notification shade
Grey HALO icons
Revert "Bug fix on installd with SELinux enabled kernel."

This reverts commit abb4714135188e72d57c85baf8ef7308d44d4523.
Add seinfo parsing to PackageManagerService.

This patch set allows the PMS to parse the
mac_permissions.xml file which contains the
seinfo values. Each package that is installed
on the device will be assigned an seinfo value
based on policy. This seinfo value will help label
the app process and data directory. Modifications
also include, adjustments to ApplicationInfo.java
to store the seinfo tag per package, adjustments
to installd to communicate the seinfo tag to
libselinux, and finally a set of unit tests.

Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>

Change-Id: I61ad1ea12fb6a9a6d0b108ec163bc4bf4c954b58
Added SELinux enforcing status and booleans keys to secure system settings.

Conflicts:
	core/java/android/provider/Settings.java

Change-Id: I01f2a9084dfe7886087b1497070b0d7f2ad8474e
Save off the seinfo value with packages.list.

Patch adds the seinfo label per package to the file.

Change-Id: I01f2a9084dfe7886087b1497070b0d7f2ad8475e
Add APIs to allow Device Admins to change SELinux settings

These calls, added to the Device Admin API, will allow Device Admin apps
to change various SELinux settings, including:
* Toggling SELinux enforcing and permissive modes
* Toggle SELinux booleans
* Load a new SELinux policy file (sepolicy)
* Load new SELinux context files ({property,file,seapp}_contexts)

In order to use these APIs, a Device Admin must first request
USES_POLICY_ENFORCE_SELINUX, then become a SELinux Admin by calling
setSELinuxAdmin(). All other set* calls relevant to SELinux are guarded
by a check against whether the admin is a SELinux Admin.

Otherwise, the style of the set* calls are very similar to the other
calls setting device policy in the Device Admin API. That is, these
calls change the Admin's internal state and then call a sync method to
update the device's state to the Admin's state.

Change-Id: I01f2a9084dfe7886087b1497070b0d7f2ad8476e
Remove SELinux additions from public API

Change-Id: If2e076312b0e411145c1cd900f3ae20d998a0f24
Simplify check during admin removal for whether to cleanup SELinux

Also re-arrange and cleanup

Change-Id: I1261e715d8d04b72f8a29b8a24268d75946d24dc
Apply MMAC changes from master.

Change-Id: I01f2a9084dfe7886087b1497070b0d7f2ad8477e
Implement Device Admin API for MMAC

Conflicts:
	api/current.txt
	core/java/android/app/admin/DevicePolicyManager.java

Change-Id: I1df507ced67fbcab8fdcde9cce78705b5e54e346
Proper security labeling of multi-user data directories.

This patch covers 2 cases. When an app is installed
and the resulting data directory is created for all
existing users. And when a new user is created and
all existing app data directories are created for
the new user.

Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>

Change-Id: I01f2a9084dfe7886087b1497070b0d7f2ad8478e
Update location of policy files

The location of policy files has changed from
/data/system to /data/security.

Also, a name change to mmac enforcing property
name to place it under persist.mmac. namesepace.

Adds api's for getting and setting the MMAC
enforcing mode.

Change-Id: I0e9468fe651cd6ec018d5c85d35d693e55479e89
Change DPMS code to accommodate enforce states on boot.

We need to respect if setenforce (selinux enforce), setsebool (booleans),
or setprop (mmac enforce) are set in the any of the init.rc files.
This set of changes will allow the init.rc values to win over any
potential device admin wishes.

Change-Id: I01f2a9084dfe7886087b1497070b0d7f2ad8473e
Signed-off-by: Robert Craig <rpcraig@tycho.ncsc.mil>
Move seinfo and install-time changes to inside PMS.

Per request by Google, move the install-time checks entirely
inside PMS.

Change-Id: I01f2a9084dfe7886087b1497070b0d7f2ad8479e