Add Lightbulb NavRing target (1/2)

Conflicts:
	core/java/com/android/internal/util/rascarlo/NavigationRingHelpers.java
	core/java/com/android/internal/util/rascarlo/TorchConstants.java
	packages/SystemUI/src/com/android/systemui/rascarlo/ActionTarget.java

Conflicts:
	core/java/com/android/internal/util/simpleaosp/NavigationRingHelpers.java
	core/java/com/android/internal/util/simpleaosp/TorchConstants.java

Change-Id: I0e31266e5032148901b61de4235046257d6f2375
Add GlowPadView extensions needed for lockscreen targets and nav ring.

Change-Id: Ia4b8adfb4a411b1bc40db600d398f02fceecc828
Fix layout of MultiWaveView and GlowPadView.

If the calculated size of the rings is much smaller than the measured
size (which is happening e.g. on mdpi 600x1024 tablets), the glow pad
appeared shifted to the right.
This happened due to the insets being calculated as difference of
available and needed size, and later on being added to the available
size. Example numbers (Nexus 4 with density forced to 160):
- computed size in onMeasure: 768x505
- scaled size in onMeasure: 505x505
- thus, insets are calculated as 131/0
- in onLayout, placementWidth (364) and max target width (108) are much
  smaller than width (768)
- thus, center is calculated as 131 + (768 / 2) = 515, thus shifted to
  the right

Fix that by not using width in the calculation, as the inset size
already takes it into consideration.

Change-Id: I045c5d523436cc54c5af3429644737c7f83bec59
kill app long press back

Conflicts:
	core/res/res/values/ras_strings.xml
	core/res/res/values/symbols.xml
	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java

Change-Id: Ieb749482c432a8ad72abb98c574923fdd573603c
Add some kk drawables and update some others (Credits: Rush25) :)

Conflicts:
	packages/SystemUI/res/drawable-hdpi/ic_qs_torch.png
	packages/SystemUI/res/drawable-mdpi/ic_qs_torch.png
	packages/SystemUI/res/drawable-xhdpi/ic_qs_torch.png

Conflicts:
	core/res/res/drawable-hdpi/ic_sysbar_quicksettings.png
	core/res/res/drawable-mdpi/ic_sysbar_quicksettings.png
	core/res/res/drawable-xhdpi/ic_sysbar_quicksettings.png
	core/res/res/drawable-xxhdpi/ic_sysbar_quicksettings.png

Change-Id: Ibd4ec360fe677cd5a193e900e1634a2c17051d8e
Factor out preference-in-storage check to overridable method.

Change-Id: I2fff3192802f8a180330fda66388eda394334a5a
Allow creating custom dialogs in DialogPreference.

This allows creating non-AlertDialogs while still using the click and
state handling of DialogPreference.

Change-Id: I54fd7d6d6b9f6a49fef1ae95e0178838b3edfa56
Revert "Fix bug #12422326 Unable to change text direction programmatically using setTextDirection Android SDK API - DO NOT MERGE"

This reverts commit b3670c54e60387fde633fb91c649c5b896f8b962.

Change-Id: I15a63cd051c7d05639776e19ef5320d4c54971ff