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

Commit 1bac7f0b authored by Miranda Kephart's avatar Miranda Kephart Committed by Automerger Merge Worker
Browse files

Merge "Load clipboard image thumbnail in background" into tm-qpr-dev am:...

Merge "Load clipboard image thumbnail in background" into tm-qpr-dev am: a4d84996 am: e3ce7ef2 am: 9a0d16b7

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



Change-Id: I2948bfc8ccc26c8540b21b127aafffe95ffd5ded
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents b9b78fba 9a0d16b7
Loading
Loading
Loading
Loading
+16 −11
Original line number Original line Diff line number Diff line
@@ -263,10 +263,11 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
    @Override // ClipboardListener.ClipboardOverlay
    @Override // ClipboardListener.ClipboardOverlay
    public void setClipData(ClipData data, String source) {
    public void setClipData(ClipData data, String source) {
        ClipboardModel model = ClipboardModel.fromClipData(mContext, mClipboardUtils, data, source);
        ClipboardModel model = ClipboardModel.fromClipData(mContext, mClipboardUtils, data, source);
        if (mExitAnimator != null && mExitAnimator.isRunning()) {
        boolean wasExiting = (mExitAnimator != null && mExitAnimator.isRunning());
        if (wasExiting) {
            mExitAnimator.cancel();
            mExitAnimator.cancel();
        }
        }
        boolean shouldAnimate = !model.dataMatches(mClipboardModel);
        boolean shouldAnimate = !model.dataMatches(mClipboardModel) || wasExiting;
        mClipboardModel = model;
        mClipboardModel = model;
        mClipboardLogger.setClipSource(mClipboardModel.getSource());
        mClipboardLogger.setClipSource(mClipboardModel.getSource());
        if (shouldAnimate) {
        if (shouldAnimate) {
@@ -313,15 +314,19 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
                mOnPreviewTapped = this::editText;
                mOnPreviewTapped = this::editText;
                break;
                break;
            case IMAGE:
            case IMAGE:
                mBgExecutor.execute(() -> {
                    if (model.isSensitive() || model.loadThumbnail(mContext) != null) {
                    if (model.isSensitive() || model.loadThumbnail(mContext) != null) {
                        mView.post(() -> {
                            mView.showImagePreview(
                            mView.showImagePreview(
                                    model.isSensitive() ? null : model.loadThumbnail(mContext));
                                    model.isSensitive() ? null : model.loadThumbnail(mContext));
                            mView.setEditAccessibilityAction(true);
                            mView.setEditAccessibilityAction(true);
                        });
                        mOnPreviewTapped = () -> editImage(model.getUri());
                        mOnPreviewTapped = () -> editImage(model.getUri());
                    } else {
                    } else {
                        // image loading failed
                        // image loading failed
                    mView.showDefaultTextPreview();
                        mView.post(mView::showDefaultTextPreview);
                    }
                    }
                });
                break;
                break;
            case URI:
            case URI:
            case OTHER:
            case OTHER: