diff --git a/src/com/android/settings/bluetooth/BluetoothNameDialogFragment.java b/src/com/android/settings/bluetooth/BluetoothNameDialogFragment.java index 74c39b6f8c2..c5b29f3e7e0 100644 --- a/src/com/android/settings/bluetooth/BluetoothNameDialogFragment.java +++ b/src/com/android/settings/bluetooth/BluetoothNameDialogFragment.java @@ -132,7 +132,7 @@ abstract class BluetoothNameDialogFragment extends InstrumentedDialogFragment @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { - if (actionId == EditorInfo.IME_ACTION_DONE) { + if (actionId == EditorInfo.IME_ACTION_DONE || actionId == EditorInfo.IME_NULL) { setDeviceName(v.getText().toString()); if (mAlertDialog != null && mAlertDialog.isShowing()) { mAlertDialog.dismiss(); diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothNameDialogFragmentTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothNameDialogFragmentTest.java index c3956d31959..376c7ed09ed 100644 --- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothNameDialogFragmentTest.java +++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothNameDialogFragmentTest.java @@ -33,6 +33,8 @@ public class BluetoothNameDialogFragmentTest { private TestBluetoothNameDialogFragment mBluetoothNameDialogFragment; private TextView mTextView; + private static final String NAME_FOR_TEST = "test_device_name"; + @Before public void setUp() { MockitoAnnotations.initMocks(this); @@ -51,12 +53,24 @@ public class BluetoothNameDialogFragmentTest { null)).isTrue(); } + @Test + public void onEditorAction_ImeNull_setsDeviceName() { + + + mTextView.setText(NAME_FOR_TEST); + assertThat( + mBluetoothNameDialogFragment.onEditorAction(mTextView, EditorInfo.IME_NULL, + null)).isTrue(); + assertThat(mBluetoothNameDialogFragment.getDeviceName()).isEqualTo(NAME_FOR_TEST); + } /** * Test fragment for {@link BluetoothNameDialogFragment} to test common methods */ public static class TestBluetoothNameDialogFragment extends BluetoothNameDialogFragment { + private String mName; + @Override protected int getDialogTitle() { return 0; @@ -64,12 +78,12 @@ public class BluetoothNameDialogFragmentTest { @Override protected String getDeviceName() { - return null; + return mName; } @Override protected void setDeviceName(String deviceName) { - + mName = deviceName; } @Override