Fix issue that read-only apns can be edited

When entering to ApnEditor with ApnSettings#onPreferenceTreeClick(),
subId is not passed.
So invalid subId is used and it gets wrong carrier config values.

To resolve this issue, remove unnecessary ApnSettings click event.
The only click event for launching ApnEditor is ApnPreference click
event.

Test: manual - Check that the read-only APN can't be edited when tap
the edge of the APN settings screen
Bug: 117302653
Change-Id: I0a61b409539d6e4f6aa9860235e61c43c76640fa
diff --git a/src/com/android/settings/network/ApnPreference.java b/src/com/android/settings/network/ApnPreference.java
index ee53ca9..27d275f 100755
--- a/src/com/android/settings/network/ApnPreference.java
+++ b/src/com/android/settings/network/ApnPreference.java
@@ -27,15 +27,12 @@
 import android.util.AttributeSet;
 import android.util.Log;
 import android.view.View;
-import android.view.View.OnClickListener;
 import android.widget.CompoundButton;
 import android.widget.RadioButton;
-import android.widget.RelativeLayout;
 
 import com.android.settings.R;
 
-public class ApnPreference extends Preference implements
-        CompoundButton.OnCheckedChangeListener, OnClickListener {
+public class ApnPreference extends Preference implements CompoundButton.OnCheckedChangeListener {
     final static String TAG = "ApnPreference";
 
     private int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
@@ -81,11 +78,6 @@
                 rb.setVisibility(View.GONE);
             }
         }
-
-        View textLayout = view.findViewById(R.id.text_layout);
-        if ((textLayout != null) && textLayout instanceof RelativeLayout) {
-            textLayout.setOnClickListener(this);
-        }
     }
 
     public boolean isChecked() {
@@ -115,16 +107,16 @@
         }
     }
 
-    public void onClick(android.view.View v) {
-        if ((v != null) && (R.id.text_layout == v.getId())) {
-            Context context = getContext();
-            if (context != null) {
-                int pos = Integer.parseInt(getKey());
-                Uri url = ContentUris.withAppendedId(Telephony.Carriers.CONTENT_URI, pos);
-                Intent editIntent = new Intent(Intent.ACTION_EDIT, url);
-                editIntent.putExtra(ApnSettings.SUB_ID, mSubId);
-                context.startActivity(editIntent);
-            }
+    @Override
+    protected void onClick() {
+        super.onClick();
+        Context context = getContext();
+        if (context != null) {
+            int pos = Integer.parseInt(getKey());
+            Uri url = ContentUris.withAppendedId(Telephony.Carriers.CONTENT_URI, pos);
+            Intent editIntent = new Intent(Intent.ACTION_EDIT, url);
+            editIntent.putExtra(ApnSettings.SUB_ID, mSubId);
+            context.startActivity(editIntent);
         }
     }
 
diff --git a/src/com/android/settings/network/ApnSettings.java b/src/com/android/settings/network/ApnSettings.java
index 013ae8c..5bc52cc 100755
--- a/src/com/android/settings/network/ApnSettings.java
+++ b/src/com/android/settings/network/ApnSettings.java
@@ -21,7 +21,6 @@
 import android.app.ProgressDialog;
 import android.content.BroadcastReceiver;
 import android.content.ContentResolver;
-import android.content.ContentUris;
 import android.content.ContentValues;
 import android.content.Context;
 import android.content.Intent;
@@ -64,8 +63,7 @@
 
 import java.util.ArrayList;
 
-public class ApnSettings extends RestrictedSettingsFragment implements
-        Preference.OnPreferenceChangeListener {
+public class ApnSettings extends RestrictedSettingsFragment {
     static final String TAG = "ApnSettings";
 
     public static final String EXTRA_POSITION = "position";
@@ -312,7 +310,6 @@
                 pref.setTitle(name);
                 pref.setSummary(apn);
                 pref.setPersistent(false);
-                pref.setOnPreferenceChangeListener(this);
                 pref.setSubId(subId);
 
                 boolean selectable = ((type == null) || !type.equals("mms"));
@@ -404,14 +401,6 @@
         startActivity(intent);
     }
 
-    @Override
-    public boolean onPreferenceTreeClick(Preference preference) {
-        int pos = Integer.parseInt(preference.getKey());
-        Uri url = ContentUris.withAppendedId(Telephony.Carriers.CONTENT_URI, pos);
-        startActivity(new Intent(Intent.ACTION_EDIT, url));
-        return true;
-    }
-
     public boolean onPreferenceChange(Preference preference, Object newValue) {
         Log.d(TAG, "onPreferenceChange(): Preference - " + preference
                 + ", newValue - " + newValue + ", newValue type - "