Contact icon label

Change-Id: I55373c25386e9d3954aebfed50222e023e989d0b
Option to use volume keys to control media volume anytime (1/2)

Some users don't adjust ringtone volume often (e.g. only use toggle to
switch between silent and non-silent) mode. Having an option to
use the volume keys to control media volume anytime allows media
volume to be controllled/muted before entering a game or other apps
with sound in an undesirable location.

Change-Id: I6dbd25d1a14bcf5b1bf0b0468b96f4b4f8efdb14

Conflicts:
	res/values/cm_strings.xml
Navbar extra settings
Option to hide lock pattern dots
Purity Dark UI mode toggle

- Credit to slimroms
- Thx Ruse for your amazing icons
Dont enable Wi-Fi if it's not toggleable in flight mode

Dont enable Wi-Fi if it's not toggleable in flight mode
by restoring the return which was removed by
e78c1879058571c00879f0d3e756951302adf513

Change-Id: I8ca5a3e9b3f36f148f08ce97b8a2b854bf7de21c
Better string
Launch music player on headset connect
Lockscreen Targets : Fix empty magnetic behaviour

When no valid targets are set, set settings to null in order
to enable magnetic targets (aosp behavior)

Change-Id: I0ccaad25cc85f55b99e4c34cb4ffe2d06bda4a80
Fix adding apps to lockscreen targets without explicit icon selection.

Change-Id: I28c5a2fb72aabd892cc861d592ef20bcbf9fb891
Clean up lockscreen target configuration code (2/2)

Get rid of a lot of duplicated code.

Change-Id: I03faf36d5e767053072f1809f670882600ea0830

Conflicts:
	res/layout/lockscreen_shortcut_dialog.xml

Conflicts:
	res/layout/lockscreen_shortcut_dialog.xml
Hangouts!
Cleanup & fix build
Fix app ops details not displaying permissions under certain conditions.

If there's a permission that is not granted, the loop is aborted instead
of just skipping said permission.

Change-Id: Icca567ebdd818f40ad6619f258c77590074d1deb
Display animation settings

Credits to SlimRoms
Avoid NPE if icon assignment failed for whatever reason.

Change-Id: Iba4188d6b42179008154b8cbcbb14c36a22669de
Fix adding lockscreen targets.

The empty targets were not included in the setting properly.
Also make the code a little more memory efficient.

Change-Id: I05cc7ce55ef5789f063033116ebfd9337e5ee28a
Lockscreen targets: more unification

Use shared method to derive drawable inset and make the rounded
corners for icon files also display when adding the target initially.

Change-Id: I98ea3e522c4c6240f08e11007d53509a3d2c15f8
Fix drawable being displayed empty when re-entering the target edit
dialog.

Change-Id: I032a8d8b348803448365ed81246c556da6ff4cc4
Fix NPE.

Backtrace looks like this:
E/AndroidRuntime(7061): java.lang.NullPointerException
E/AndroidRuntime(7061): 	at com.android.internal.util.cm.LockscreenTargetUtils.getDrawableFromResources(LockscreenTargetUtils.java:178)
E/AndroidRuntime(7061): 	at com.android.settings.cyanogenmod.LockscreenTargets.setTarget(LockscreenTargets.java:348)
E/AndroidRuntime(7061): 	at com.android.settings.cyanogenmod.LockscreenTargets.access$500(LockscreenTargets.java:55)
E/AndroidRuntime(7061): 	at com.android.settings.cyanogenmod.LockscreenTargets$2.onClick(LockscreenTargets.java:437)
E/AndroidRuntime(7061): 	at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:166)
E/AndroidRuntime(7061): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(7061): 	at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime(7061): 	at android.app.ActivityThread.main(ActivityThread.java:5289)
E/AndroidRuntime(7061): 	at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(7061): 	at java.lang.reflect.Method.invoke(Method.java:525)
E/AndroidRuntime(7061): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
E/AndroidRuntime(7061): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
E/AndroidRuntime(7061): 	at dalvik.system.NativeStart.main(Native Method)
W/ActivityManager(635):   Force finishing activity com.android.settings/.SubSettings

Change-Id: I72a5c7ff498ba0066f224a44985fadc64af4511c