Merge "resolve merge conflicts of 8c1e6e49f95b to oc-dev-plus-aosp" into oc-dev-plus-aosp
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/NfcTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/NfcTile.java
index d147b69..6500740 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/NfcTile.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/NfcTile.java
@@ -56,13 +56,6 @@
         if (mListening) {
             mContext.registerReceiver(mNfcReceiver,
                     new IntentFilter(NfcAdapter.ACTION_ADAPTER_STATE_CHANGED));
-            if (mAdapter == null) {
-                try {
-                    mAdapter = NfcAdapter.getNfcAdapter(mContext);
-                } catch (UnsupportedOperationException e) {
-                    mAdapter = null;
-                }
-            }
         } else {
             mContext.unregisterReceiver(mNfcReceiver);
         }
@@ -84,11 +77,10 @@
 
     @Override
     protected void handleClick() {
-        if (mAdapter == null) return;
-        if (!mAdapter.isEnabled()) {
-            mAdapter.enable();
+        if (!getAdapter().isEnabled()) {
+            getAdapter().enable();
         } else {
-            mAdapter.disable();
+            getAdapter().disable();
         }
     }
 
@@ -106,7 +98,7 @@
     protected void handleUpdateState(BooleanState state, Object arg) {
         final Drawable mEnable = mContext.getDrawable(R.drawable.ic_qs_nfc_enabled);
         final Drawable mDisable = mContext.getDrawable(R.drawable.ic_qs_nfc_disabled);
-        state.value = mAdapter == null ? false : mAdapter.isEnabled();
+        state.value = getAdapter().isEnabled();
         state.label = mContext.getString(R.string.quick_settings_nfc_label);
         state.icon = new DrawableIcon(state.value ? mEnable : mDisable);
         state.expandedAccessibilityClassName = Switch.class.getName();
@@ -127,6 +119,17 @@
         }
     }
 
+    private NfcAdapter getAdapter() {
+        if (mAdapter == null) {
+            try {
+                mAdapter = NfcAdapter.getNfcAdapter(mContext);
+            } catch (UnsupportedOperationException e) {
+                mAdapter = null;
+            }
+        }
+        return mAdapter;
+    }
+
     private BroadcastReceiver mNfcReceiver = new BroadcastReceiver() {
         @Override
         public void onReceive(Context context, Intent intent) {