Settings: Correctly align cursor in Settings

Steps to Reproduce:
- Click on Density Settings (DPI Settings) / Renaming BT Device / Renaming SIM Settings
- EditText Dialog pops up
- The cursor is at the leftmost side of the text
- Logically Cursor should be at rightmost side which can be aligned grabbing text length

Screenshots:
Before:
http://imgur.com/a/o4vkr
http://imgur.com/a/6Qext

After:
http://imgur.com/a/fuxqT
http://imgur.com/a/vm2WX

Bug: 65185652
Test: RunSettingsRoboTests: OK (47 tests)

Change-Id: Id00308e7e019434edad4afab56cf4719be0d0d54
Signed-off-by: PMS22 <prathams99@rediff.com>
diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java
index 89724cc..3b2ea1a 100644
--- a/src/com/android/settings/Utils.java
+++ b/src/com/android/settings/Utils.java
@@ -103,6 +103,7 @@
 import android.view.animation.Animation;
 import android.view.animation.Animation.AnimationListener;
 import android.view.animation.AnimationUtils;
+import android.widget.EditText;
 import android.widget.ListView;
 import android.widget.TabWidget;
 
@@ -1362,4 +1363,7 @@
                 && volume.isMountedReadable();
     }
 
+    public static void setEditTextCursorPosition(EditText editText) {
+        editText.setSelection(editText.getText().length());
+    }
 }
diff --git a/src/com/android/settings/bluetooth/BluetoothNameDialogFragment.java b/src/com/android/settings/bluetooth/BluetoothNameDialogFragment.java
index 25413fa..576e656 100644
--- a/src/com/android/settings/bluetooth/BluetoothNameDialogFragment.java
+++ b/src/com/android/settings/bluetooth/BluetoothNameDialogFragment.java
@@ -116,6 +116,7 @@
             mDeviceNameView.setSelection(deviceName.length());
         }
         mDeviceNameView.addTextChangedListener(this);
+        com.android.settings.Utils.setEditTextCursorPosition(mDeviceNameView);
         mDeviceNameView.setOnEditorActionListener(new TextView.OnEditorActionListener() {
             @Override
             public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
diff --git a/src/com/android/settings/bluetooth/DeviceProfilesSettings.java b/src/com/android/settings/bluetooth/DeviceProfilesSettings.java
index a76ed46..eae2f29 100755
--- a/src/com/android/settings/bluetooth/DeviceProfilesSettings.java
+++ b/src/com/android/settings/bluetooth/DeviceProfilesSettings.java
@@ -323,6 +323,7 @@
         final EditText deviceNameField = (EditText) mRootView.findViewById(R.id.name);
         if (deviceNameField != null) {
             deviceNameField.setText(mCachedDevice.getName());
+            com.android.settings.Utils.setEditTextCursorPosition(deviceNameField);
         }
 
         refreshProfiles();
diff --git a/src/com/android/settings/display/DensityPreference.java b/src/com/android/settings/display/DensityPreference.java
index a62e6b5..581a3ee 100644
--- a/src/com/android/settings/display/DensityPreference.java
+++ b/src/com/android/settings/display/DensityPreference.java
@@ -27,6 +27,7 @@
 
 import com.android.settings.R;
 import com.android.settingslib.CustomEditTextPreference;
+import com.android.settings.Utils;
 import com.android.settingslib.display.DisplayDensityUtils;
 
 import java.text.NumberFormat;
@@ -63,6 +64,7 @@
         if (editText != null) {
             editText.setInputType(InputType.TYPE_CLASS_NUMBER);
             editText.setText(getCurrentSwDp() + "");
+            Utils.setEditTextCursorPosition(editText);
         }
     }
 
diff --git a/src/com/android/settings/sim/SimPreferenceDialog.java b/src/com/android/settings/sim/SimPreferenceDialog.java
index d195724..2b6ebe3 100644
--- a/src/com/android/settings/sim/SimPreferenceDialog.java
+++ b/src/com/android/settings/sim/SimPreferenceDialog.java
@@ -40,6 +40,7 @@
 import android.widget.TextView;
 
 import com.android.settings.R;
+import com.android.settings.Utils;
 
 public class SimPreferenceDialog extends Activity {
 
@@ -98,13 +99,14 @@
 
         EditText nameText = (EditText)mDialogLayout.findViewById(R.id.sim_name);
         nameText.setText(savedInstanceState.getString(SIM_NAME));
+        Utils.setEditTextCursorPosition(nameText);
     }
 
     private void createEditDialog(Bundle bundle) {
         final Resources res = mContext.getResources();
         EditText nameText = (EditText)mDialogLayout.findViewById(R.id.sim_name);
         nameText.setText(mSubInfoRecord.getDisplayName());
-
+        Utils.setEditTextCursorPosition(nameText);
         final Spinner tintSpinner = (Spinner) mDialogLayout.findViewById(R.id.spinner);
         SelectColorAdapter adapter = new SelectColorAdapter(mContext,
                 R.layout.settings_color_picker_item, mColorStrings);
@@ -154,7 +156,7 @@
             @Override
             public void onClick(DialogInterface dialog, int whichButton) {
                 final EditText nameText = (EditText)mDialogLayout.findViewById(R.id.sim_name);
-
+                Utils.setEditTextCursorPosition(nameText);
                 String displayName = nameText.getText().toString();
                 int subId = mSubInfoRecord.getSubscriptionId();
                 mSubInfoRecord.setDisplayName(displayName);