HALO Size (2/2)

Change-Id: I630991372504b152af9dfa063c78c115c79d8c83

Conflicts:
	res/values/arrays.xml
	res/values/pa_strings.xml
	res/xml/tool_bar_settings.xml
	src/com/android/settings/paranoid/Toolbar.java
HALO: Option to pause the underlying app (2/2)

- adds an option to pause the active app when using HALO
- this is enabled by default for devices with low memory
- (currently: <640MB RAM available to the kernel)

Conflicts:
	res/values/strings.xml
	res/xml/tool_bar_settings.xml
	src/com/android/settings/paranoid/Toolbar.java
HALO (2/2)

HALO is Androids one and only multitasking solution.

We explicitly do not go the Samsung/Cornerstone route. This solution is basically an extension of
the regular notificationshade, which is an aggregator for notifications that can be checked out when
time permits. HALO completes it by allowing you to respond to tasks on the spot, trying to be as
unintrusive as possible and flexible in regards to policies (white/black lists).

Features:

- Apps open up in floating state, apps underneath do not pause
- complete SystemUI & Core integration, making HALO feel like a native feature, source/SDK and UI/UX
- HALO has white and blacklists, which for now allow fine control for apps pinging through HALO
- multiple gestures to navigate HALO:
  - double-tap-move: move
  - tap-drag-left/right: task through notifications, finger up launches
  - tap-drag-up: dismiss notification
  - tap-drag-down: put HALO into semi-hidden state
  - swipe while HALO is hidden wakes it up
  - drag-to-X to remove HALO altogether
- comes with as few settings as possible, everything should be self explanatory and intutive,
  users must be informed about the double-tap gestures which is the only catch.

Known issues:

- Integration has been finished for PhoneUI. TabletUI and PIE must be integrated still.
- Packageinstaller must allow HALO through its overlay check or it will disable the install-app button.
- The low level has a few remaining issues:
  - Some apps still go up fullscale (they trick us with services, circumventing the intent flagging)
  - Some 3D games still pause
  - There is one known app that refuses to end on back or touch-outside, that is WeChat
  - The activitystack pause implementation works but is makeshift

To-Do:

- On-screen tutorial at first start up to teach users the gestures
- Fixing all known issues, full integration in the remaining UI's
- Perhaps hybrid engine integration for running floating apps in a decreased size

Merge branch 'multiwindow' into jellybean

Conflicts:
	res/values/arrays.xml
	src/com/android/settings/paranoid/Toolbar.java

Change-Id: I87ad32f302592fff2c77e7cb37c5695d40ee90cd

Conflicts:
	res/values/arrays.xml
	res/values/strings.xml
	res/xml/tool_bar_settings.xml
	src/com/android/settings/paranoid/Toolbar.java
black / white list, complete revamp (2/2)

Change-Id: I05891190aface471aa69b7b8eadc7834e06d809f

Conflicts:
	res/values/arrays.xml
	res/values/strings.xml
	src/com/android/settings/paranoid/Toolbar.java
halo blacklist (2/2)

Change-Id: I1e5d167a17e398902f6c16b9a872367d2085b314

Conflicts:
	res/layout/installed_app_details.xml
	res/values/strings.xml
	src/com/android/settings/applications/InstalledAppDetails.java
HALO settings

Change-Id: Ie478461e7ccea539cbcccabd577b94036c3a6ba6

Conflicts:
	res/values/strings.xml
	src/com/android/settings/paranoid/Toolbar.java