ThemeManager: Synchronize access to listeners

If the Set of listeners is modified while iterating we will get
a ConcurentModificationException so we need to synchronize access
to avoid this.

Change-Id: Ib521ad86a665316d707463200c16c1bcdcfac362
Revert 'base: Add P2P interface "p2p0" to tethering support list'

* fixes p2p issues

Change-Id: I12249f4f633c5b317d04da9f433ee58bb21f4681
Ignore certain overlaid sms-sending packages.

Change-Id: I294a7e350d6193fc257f884def779994b7da5f57
Protected Apps: Allow all system apps to see Protected Components

Change-Id: I5e12dd7cd05117a4e44a4bf3ee9f56ea6122ce15
UsbSettings: Add UMS mode support

Android only supports MTP and PTP mode in UsbSettings screen, this change
is to add USB mass storage mode.

Change-Id: If7e49ae022c187063d30316b6a017d6089d97713
SystemUI: fix msim signal cluster text label spacing

When WiFi is on and mobile data is active with msim device, the first
mobile text label (e.g. 1) was too close to the WiFi icon. Show the
spacer as necessary.

Change-Id: I2fc4c77f448647d79d81cfa02373da477556c6b0
Signed-off-by: Roman Birg <roman@cyngn.com>
SystemUI: hide msim no-sim icons

Simply hide the SIM mobile indicator group when a no SIM icon is
requested.

Change-Id: I074b8e486ab35f57daa1f1eaee7e5b696835b3b8
Signed-off-by: Roman Birg <roman@cyngn.com>
ProximitySensor: check for correct MaxRange value

Use TYPICAL_PROXIMITY_THRESHOLD for devices that returns incorrect mProximitySensor.getMaximumRange() value;

Presto's proximity sensor returns values: 0.0f(near) or 5.0f(far).
mProximitySensor.getMaximumRange() must return proximity sensor's availible range, but it always return 0, so mProximityThreshold is also 0.

So boolean positive = distance >= 0.0f && distance < mProximityThreshold;  positive will never be
true.
The cause of this problem is proprietary sensor.msm8660.so, it must set proper Range and Resolution for proximity sensor.

Change-Id: I0cf81fd20f210115cbd6db10c0070b12f1c57336