Fix one NPE in tethering setting

Once we not declare BT feature, go Setting->more->tethering
will trigger this NPE.
Cherry-picked from AOSP: https://android-review.googlesource.com/#/c/63695/

Change-Id: I4736e7bade261475acda74e26250a81452018ffa
Signed-off-by: Jianzheng Zhou <jianzheng.zhou@freescale.com>
Settings: fix NPE with null check on NFC adapter

Verifies the adapter is not null before dereferencing it and log and error if so

PS:
- fix codestyle and rebase

Change-Id: Id2a34c4698a97476bee9b78cb0ac7b980d1595cf
Fix the icon size in app lists.

E.g. the "Select app" dialog in the profile group configuration uses
this layout to inflate the list dialog. However app icons can have
non-standard sizes so we enforce a consistent width and height.

Change-Id: I71731a9bb3548c699cc2e0e600a5ff371ceacbc3
p2p: Fix for GC unable to scan GO after tear down.

A start of the search is not done on a group removed
broadcast event for mLastGroupFormed being set, which
would result in the Group Client not able to find the
GO , though a p2p_find is issued before a disconnect.
This is due to the fact that supplicant shall notify
the p2p device info only once per p2p_find.

To avoid this remove the conditions that is blocking
the search to happen and issue another p2p_find.

Change-Id: I4abad5c472808f9aa03e644eb1c6a26bfab8a4e6
CRs-Fixed: 504022
(cherry picked from commit b5da1dfa773904f1d7d4aaff407d3830098a9206)
(cherry picked from commit 86f8e54ec3cdac6b9474d462cfafbc894223a433)
P2P: Updates the P2P peer list when there is P2P State Change Action

In the current implementation the P2P window gets updated with the
Peers list only when there is WIFI_P2P_PEERS_CHANGED_ACTION Intent.
Thus the P2P status remains unchanged when there is
WIFI_P2P_STATE_CHANGED_ACTION intent. When there is back and forth
navigation to P2P window, WIFI_P2P_STATE_CHANGED_ACTION intent invokes
the onPeersAvaliable function asynchronously and updates the P2P status
and peers list.

CRs-fixed: 512821
Change-Id: I69b26ef72bf30f547bf8fb5580d440c5119df054
(cherry picked from commit 17edb35f25b01560a2fd8c159432a794c46765f0)
(cherry picked from commit f4a4708e50657c14412a9f370f023fd89cba8e6b)
Packages: Fix for SAP turn ON/OFF fails issue.

Turnig ON/OFF SAP repeatedly when WIFI is ON results
in command CMD_SET_AP being received in WifiStaEnabledState
of the state machine, which will not be handled and because
of this SoftAP is not turned ON and we receive no events
thus the check box remains greyed out/disabled.

To resolve this wait for WIFI_STATE_CHANGED intent before
re-enabling the SAP.

Change-Id: I1a37ac6406ea5e342d6dcb80654c2728fa447e57
CRs-Fixed: 525872
WifiSettings: Handle DISABLED_ASSOCIATION_REJECT.

Upon receiving multiple association rejects for a network,
framework disables corresponding network providing reason
code as DISABLE_ASSOCIATION_REJECT. this is handled
in order to provide appropriate user experience.

CRs-fixed: 484247
Change-Id: I3d344068a58d2dfd82c9bc8b23f43fdf980cc4d9
wifi: Allow configuration of country code for wifi (2/2)

Wifi country code handling is a nightmare - Most retail devices
have region customization in /system for each country a device
is shipped to.

This doesn't work very well for a firmware like Cyanogenmod,
where we try to support all target countries with one firmware
package.  For whatever reason, with newer Broadcom drivers/
firmware blobs, the old trick of using a universal region code
(ccode=ALL in nvram_net.txt) does not seem to work.  Who knows
what the deal is for other wifi chipsets.

The good thing is that wpa_supplicant has a standardized
cross-chipset method for setting the region code, and we
use that here.

Ported from cm-10.2
Framework part: http://review.cyanogenmod.org/54997

Change-Id: Ia9f5133f61f56d89ccb290e37a393f5de507e1cf

Conflicts:
	res/values/cr_arrays.xml
	res/values/cr_strings.xml