Settings: refactor Profiles to be more user friendly

* Remove the notion of Profile app groups
* Rearrange profile setup flow, now we first present the user with ways
which will trigger the profile, then allow them to set what happens when
the profile is triggered.

Signed-off-by: Roman Birg <roman@cyngn.com>

Conflicts:
	res/values/cm_arrays.xml
	res/values/cm_strings.xml
	res/values/cr_dimens.xml
	src/com/android/settings/Settings.java
	src/com/android/settings/profiles/AppGroupConfig.java
	src/com/android/settings/profiles/ProfilesSettings.java

Change-Id: I2870df894046cd43c21c67991fb5efc9c3fec837
Settings: Fix NPE in Superuser settings.

Change-Id: I4671a7840df4a6b66c43d99c7f37cc8038829f08
Settings: Check if NFC is supported prior to adding to pager.

  - Also fix codestyle and comments for TriggerFragments

Change-Id: Iae0bcf8ca6a5447e70750e258db9599dd8a2704e
Settings: Disable mobile network switch if MSIM

Change-Id: Iafb37e4f036b63d895d28234a85dddb0850051e8
Settings: Fix carrier/sim slot string logic for msim settings

Change-Id: I1a06dd3b4c2dc51eb0b680f7c7d42910881e1a57
settings: allow scroll in LED settings's color dialog

This is useful in mdpi devices and landscape mode, when the current layout rebased the dialog height

Change-Id: I7f9cd936076d3409e78a8f6b9a24b180a36a2bc8
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Settings: cleanup new profiles UI

* cleanup old code
* for configuring profiles, add options to modify triggers and remove
the profile
* remove separate activity
* don't hardcode padding pixel sizes

Signed-off-by: Roman Birg <roman@cyngn.com>

Conflicts:
	res/values/cm_arrays.xml
	res/values/cm_strings.xml
	src/com/android/settings/Settings.java
	src/com/android/settings/profiles/ProfilesSettings.java

Change-Id: I6b1d05c9f918714249411006c7562496e2a7539e
Settings: Set untranslatables

Change-Id: Ie7e8efe4919c82a681a7930a7f6be822a53852f9
Open app when clicking on icon in App Info screen

Based on Xposed module Shortcut in App Info:
http://repo.xposed.info/module/com.mohammadag.shortcutinappinfo

There is no vibration as in the module as I didn't find it necessary

Change-Id: I07b3f947aaaa13702adba3b4e78bb780fe861baf
cmhw: Use hardware's default value for display features

Change-Id: I1ad4d43ec08fb3a65f2f5d13e48e3becc341d34f
settings: Avoid NPE in NfcTrigger when device doesn't support NFC

Change-Id: I7775540a752b6f31f8c5bb51eaf20e566b4858a5
Settings: Reduce volume to safe level when headset is connected (1/2)

This is a safety feature for users who opt to raise volume above the designated
safe level while using a headset.

Currently when a user does this they are provided with no protection against
dangerously high volume levels until the next time the headset volume warning
is displayed.

This patch adds an optional feature to ensure volume is no higher than the safe
level every time a headset is connected.

Change-Id: I8ec35284a91a26511b0bc83fcc1578f38b8b4f40
Development: Root for apps is unavailable if the su daemon isn't running

The superuser options are tied to the Superuser app variant we use,
which in turn is tied to the su daemon. No daemon, no menu options.

Change-Id: I41d58e62986759336ab38e67f26a558c2eed5aa3
Change Regulatory Info Activity to prefer string over image

Change-Id: I9ea5c2bf469af8f654ec4e4bb4f2a8a5738e6a95
fix: Settings FC when WiFi tethering is active.

* When filling the 'connected devices' list the function in charge of this
  assumes that the activity for which a 'new preference' is being alloc-
  cated for still exists.
* This is sometimes not the case when an user decides to navigate back to
  the 'Tethering & portable hotspot' settings menu.
* In this case the function will try to allocate a new preference for an
  activity == NULL and lead to a Settings FC.

  Logcat showing the FC: https://gist.github.com/myzb/765d03172078a7657fb0

Change-Id: I34dcafe9286443220867399f22dccb75a4b40d38
Merge remote-tracking branch 'carbon/kk' into kitkat