WiFi: Check data length before extracting

GBK to UTF convertion is carried on input data. The maximum data
that can be supported in framework is BUF_SIZE.
The gerrit is to check the size of input data  prior to parsing,
so that it will not lead to any crashes.

Change-Id: If8ff372dc26317b369643405dcea01ff28c4f1f3
CRs-Fixed: 708416
Fix NPE on tablets.

Commit d547e9d0944b31b2d05378c30f47261571a93262 updated the default
navigation_bar layout, but missed the overlaid one. Fixit.

Change-Id: Ia912075d6dfdb32cd569d6040231dafa894b0c7d
QuietHours: don't schedule alarms in the past

On the last day of the month, the trigger-alarm for the next day
was actually scheduled on the first day of the current month, which
caused it to fire immediately and then repeating this, leading
to high battery drain.

Fix this by scheduling the next alarm on the real next day.

Change-Id: Ied3b1dd3101650842a798d7e00e2a3a794ac8639
Ringtone: Add support for selection of phone ringtone for SIM-2.

-Issue: "The process android.process.media has stopped" pop up is
 displayed when ringtone for SIM-2 is selected.
-Rootcause: There is no type and URI defined for SIM-2 ringtone
 in the RingtoneManager. This is leading to SQl exception when
 executing a selection query.
-Fix: Add URIs for the SIM-2 and SIM-3 ringtones. Define
 interfaces to return them to app side based on subscription ID.

CRs-Fixed: 612945
Change-Id: If68c2d008dd86d2b55d3fb7f5667bbadc238d0b3
Provider: Add multi SIM ringtone support in SettingsProvider

This change will handle multi-sim queries in
SettingsProvider.java when openFile and
openAssetFile APIs are called by other components.
Thus, it will ensure to play the correct ringtone
corresponding to the SIM.

CRs-Fixed: 661216
Change-Id: I7b22c233b9c41669c1ad948b83a7aa2c55442af1
CallLog: Support for active time in CDMA call log

Display the type(Active time/Call out time) in call log of CDMA call.

Change-Id: Icdc459b0e6aff2ae7f9d44395b6886232de16efe
Fix translucent navigation bar layout on tablets in landscape.

The status bar blocker view was visible and stretched over the whole
navigation bar, even though it's not even needed on tablets, as the
status bar never extends into the navigation bar there. Fix that by
hiding the blocker view, but keep it in the layout in oder to not
clutter the code with null checks.

Also cleanup unneeded method override.

Change-Id: I50d58e6e3496516b37f8c36b497cf8c9f569325c
AppOps: Add nfc enable control into AppOps

Check user permission before enabling nfc.

Change-Id: Ia84e33c299e4fdecfd66ee933d9e7d37ed29c340
AppOps: add permission check when enabing nfc

Add appops permission check for enable function.

Change-Id: Ie98be3e7b3cd9e72b0ad12cc1634d9cd1869a66c
Themes: Only kill launchers if overlays or icons changed

There is no need to kill the launcher for every coponent changed.
The only ones that really concern us in regards to killing launchers
are MODIFIES_OVERLAYS and MODIFIES_ICONS

Change-Id: I840b8e2ecd4b52a33f352809c5d3d2c7e92ce85e
Add ANT to the list of toggleable airplane mode radios

Adding ANT to the list of toggleable radios allows ANT to behave in the same way as Wifi or
Bluetooth in regards to operation during airplane mode: when airplane mode is turned on, ANT is
disabled, but can be re-enabled by the user at any time.

Change-Id: Idb9e9499fd7a7fccee8c459779ec86bf24e1373e
Quicksettings code cleanup