Loading core/java/android/widget/Editor.java +4 −2 Original line number Diff line number Diff line Loading @@ -5477,10 +5477,12 @@ public class Editor { // Expanding with start handle. offset = getWordStart(offset); startOffset = getWordEnd(mStartOffset); if (startOffset == offset) { offset = getNextCursorOffset(offset, false); } } mLineSelectionIsOn = currLine; Selection.setSelection((Spannable) mTextView.getText(), startOffset, offset); Selection.setSelection((Spannable) mTextView.getText(), startOffset, offset); } private void updateParagraphBasedSelection(MotionEvent event) { Loading core/tests/coretests/src/android/widget/TextViewActivityTest.java +15 −0 Original line number Diff line number Diff line Loading @@ -169,6 +169,21 @@ public class TextViewActivityTest extends ActivityInstrumentationTestCase2<TextV onView(withId(R.id.textview)).check(hasSelection("little handsome")); } @SmallTest public void testLongPressAndDragToSelect_emoji() throws Exception { final String text = "\uD83D\uDE00\uD83D\uDE01\uD83D\uDE02\uD83D\uDE03"; onView(withId(R.id.textview)).perform(click()); onView(withId(R.id.textview)).perform(replaceText(text)); onView(withId(R.id.textview)).perform(longPressAndDragOnText(4, 6)); onView(withId(R.id.textview)).check(hasSelection("\uD83D\uDE02")); onView(withId(R.id.textview)).perform(click()); onView(withId(R.id.textview)).perform(longPressAndDragOnText(4, 2)); onView(withId(R.id.textview)).check(hasSelection("\uD83D\uDE01")); } @SmallTest public void testDragAndDrop() throws Exception { final String text = "abc def ghi."; Loading Loading
core/java/android/widget/Editor.java +4 −2 Original line number Diff line number Diff line Loading @@ -5477,10 +5477,12 @@ public class Editor { // Expanding with start handle. offset = getWordStart(offset); startOffset = getWordEnd(mStartOffset); if (startOffset == offset) { offset = getNextCursorOffset(offset, false); } } mLineSelectionIsOn = currLine; Selection.setSelection((Spannable) mTextView.getText(), startOffset, offset); Selection.setSelection((Spannable) mTextView.getText(), startOffset, offset); } private void updateParagraphBasedSelection(MotionEvent event) { Loading
core/tests/coretests/src/android/widget/TextViewActivityTest.java +15 −0 Original line number Diff line number Diff line Loading @@ -169,6 +169,21 @@ public class TextViewActivityTest extends ActivityInstrumentationTestCase2<TextV onView(withId(R.id.textview)).check(hasSelection("little handsome")); } @SmallTest public void testLongPressAndDragToSelect_emoji() throws Exception { final String text = "\uD83D\uDE00\uD83D\uDE01\uD83D\uDE02\uD83D\uDE03"; onView(withId(R.id.textview)).perform(click()); onView(withId(R.id.textview)).perform(replaceText(text)); onView(withId(R.id.textview)).perform(longPressAndDragOnText(4, 6)); onView(withId(R.id.textview)).check(hasSelection("\uD83D\uDE02")); onView(withId(R.id.textview)).perform(click()); onView(withId(R.id.textview)).perform(longPressAndDragOnText(4, 2)); onView(withId(R.id.textview)).check(hasSelection("\uD83D\uDE01")); } @SmallTest public void testDragAndDrop() throws Exception { final String text = "abc def ghi."; Loading