Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 64fa4558 authored by Nikita Dubrovsky's avatar Nikita Dubrovsky Committed by Automerger Merge Worker
Browse files

Merge "Make drop consistent with paste for multiple text items in a ClipData"...

Merge "Make drop consistent with paste for multiple text items in a ClipData" into sc-dev am: 4b2ab9bb am: 778e846d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14455023

Change-Id: Ib07c9789d9af8734c206ee2bcc9e5653cfafb28b
parents 7dc3bbb5 778e846d
Loading
Loading
Loading
Loading
+0 −12
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@ package android.widget;
import static android.content.ContentResolver.SCHEME_CONTENT;
import static android.view.ContentInfo.FLAG_CONVERT_TO_PLAIN_TEXT;
import static android.view.ContentInfo.SOURCE_AUTOFILL;
import static android.view.ContentInfo.SOURCE_DRAG_AND_DROP;
import static android.view.ContentInfo.SOURCE_INPUT_METHOD;

import android.annotation.NonNull;
@@ -82,10 +81,6 @@ public final class TextViewOnReceiveContentListener implements OnReceiveContentL
            onReceiveForAutofill((TextView) view, payload);
            return null;
        }
        if (source == SOURCE_DRAG_AND_DROP) {
            onReceiveForDragAndDrop((TextView) view, payload);
            return null;
        }

        // The code here follows the original paste logic from TextView:
        // https://cs.android.com/android/_/android/platform/frameworks/base/+/9fefb65aa9e7beae9ca8306b925b9fbfaeffecc9:core/java/android/widget/TextView.java;l=12644
@@ -147,13 +142,6 @@ public final class TextViewOnReceiveContentListener implements OnReceiveContentL
        Selection.setSelection(editable, editable.length());
    }

    private static void onReceiveForDragAndDrop(@NonNull TextView view,
            @NonNull ContentInfo payload) {
        final CharSequence text = coerceToText(payload.getClip(), view.getContext(),
                payload.getFlags());
        replaceSelection((Editable) view.getText(), text);
    }

    private static @NonNull CharSequence coerceToText(@NonNull ClipData clip,
            @NonNull Context context, @Flags int flags) {
        SpannableStringBuilder ssb = new SpannableStringBuilder();