Merge "Update string for discarding changes to a particular APN's settings."
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 1753ce5..db3b58b 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -3683,7 +3683,7 @@
     <!-- Edit access point screen menu option to save the user's changes for this APN to the persistent storage -->
     <string name="menu_save">Save</string>
     <!-- Edit access point screen menu option to discard the user's changes for this APN -->
-    <string name="menu_cancel">Discard</string>
+    <string name="menu_cancel">Cancel</string>
     <!-- APN error dialog title -->
     <string name="error_title"></string>
     <!-- APN error dialog messages: -->
diff --git a/src/com/android/settings/network/apn/ApnEditor.java b/src/com/android/settings/network/apn/ApnEditor.java
index b2b35dc..afc68d5 100644
--- a/src/com/android/settings/network/apn/ApnEditor.java
+++ b/src/com/android/settings/network/apn/ApnEditor.java
@@ -805,16 +805,15 @@
     @Override
     public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
         super.onCreateOptionsMenu(menu, inflater);
-        if (mReadOnlyApn) {
-            return;
-        }
         // If it's a new APN, then cancel will delete the new entry in onPause
-        if (!mNewApn) {
+        if (!mNewApn && !mReadOnlyApn) {
             menu.add(0, MENU_DELETE, 0, R.string.menu_delete)
                 .setIcon(R.drawable.ic_delete);
         }
-        menu.add(0, MENU_SAVE, 0, R.string.menu_save)
-            .setIcon(android.R.drawable.ic_menu_save);
+        if (!mReadOnlyApn) {
+            menu.add(0, MENU_SAVE, 0, R.string.menu_save)
+                .setIcon(android.R.drawable.ic_menu_save);
+        }
         menu.add(0, MENU_CANCEL, 0, R.string.menu_cancel)
             .setIcon(android.R.drawable.ic_menu_close_clear_cancel);
     }