From b880a9e0e12d2c28a843d21bd8e86588873b405f Mon Sep 17 00:00:00 2001 From: Miranda Kephart Date: Wed, 18 May 2022 12:07:03 -0400 Subject: [PATCH] Make sensitive clipboard text preview show asterisks Bug: 232820831 Fix: 232820831 Test: manual (using clipboard test app) Change-Id: I1052f949aa7dbde2877185ea3e18d3fe4f61de46 --- .../SystemUI/res/layout/clipboard_overlay.xml | 3 +-- packages/SystemUI/res/values/strings.xml | 2 ++ .../ClipboardOverlayController.java | 15 ++++++++------- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/packages/SystemUI/res/layout/clipboard_overlay.xml b/packages/SystemUI/res/layout/clipboard_overlay.xml index 0ba11e9eee94f..cfd6dfe61f674 100644 --- a/packages/SystemUI/res/layout/clipboard_overlay.xml +++ b/packages/SystemUI/res/layout/clipboard_overlay.xml @@ -124,13 +124,12 @@ android:layout_width="match_parent" android:layout_height="wrap_content"/> Send to nearby device Tap to view + + •••••• Text copied diff --git a/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java b/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java index 1203d1a1ec97d..694cdb164774d 100644 --- a/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java +++ b/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java @@ -138,7 +138,7 @@ public class ClipboardOverlayController { private final View mClipboardPreview; private final ImageView mImagePreview; private final TextView mTextPreview; - private final TextView mHiddenTextPreview; + private final TextView mHiddenPreview; private final View mPreviewBorder; private final OverlayActionChip mEditChip; private final OverlayActionChip mShareChip; @@ -203,7 +203,7 @@ public class ClipboardOverlayController { mClipboardPreview = requireNonNull(mView.findViewById(R.id.clipboard_preview)); mImagePreview = requireNonNull(mView.findViewById(R.id.image_preview)); mTextPreview = requireNonNull(mView.findViewById(R.id.text_preview)); - mHiddenTextPreview = requireNonNull(mView.findViewById(R.id.hidden_text_preview)); + mHiddenPreview = requireNonNull(mView.findViewById(R.id.hidden_preview)); mPreviewBorder = requireNonNull(mView.findViewById(R.id.preview_border)); mEditChip = requireNonNull(mView.findViewById(R.id.edit_chip)); mShareChip = requireNonNull(mView.findViewById(R.id.share_chip)); @@ -328,7 +328,7 @@ public class ClipboardOverlayController { } if (isSensitive) { showEditableText( - mContext.getResources().getString(R.string.clipboard_text_hidden), true); + mContext.getResources().getString(R.string.clipboard_asterisks), true); } else { showEditableText(item.getText(), false); } @@ -500,7 +500,7 @@ public class ClipboardOverlayController { private void showSinglePreview(View v) { mTextPreview.setVisibility(View.GONE); mImagePreview.setVisibility(View.GONE); - mHiddenTextPreview.setVisibility(View.GONE); + mHiddenPreview.setVisibility(View.GONE); v.setVisibility(View.VISIBLE); } @@ -511,7 +511,7 @@ public class ClipboardOverlayController { } private void showEditableText(CharSequence text, boolean hidden) { - TextView textView = hidden ? mHiddenTextPreview : mTextPreview; + TextView textView = hidden ? mHiddenPreview : mTextPreview; showTextPreview(text, textView); View.OnClickListener listener = v -> editText(); if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_SYSTEMUI, @@ -532,9 +532,10 @@ public class ClipboardOverlayController { String mimeType = resolver.getType(uri); boolean isEditableImage = mimeType != null && mimeType.startsWith("image"); if (isSensitive) { - showSinglePreview(mHiddenTextPreview); + mHiddenPreview.setText(mContext.getString(R.string.clipboard_text_hidden)); + showSinglePreview(mHiddenPreview); if (isEditableImage) { - mHiddenTextPreview.setOnClickListener(listener); + mHiddenPreview.setOnClickListener(listener); } } else if (isEditableImage) { // if the MIMEtype is image, try to load try {