From 3c3755b4ea535df1b5f2a9f3e57b235b660e1fcd Mon Sep 17 00:00:00 2001 From: 1 Date: Thu, 16 Mar 2023 21:30:03 +0000 Subject: Update text preview UI to mocks Still more details to refine, but structurally this is closer. - Merge text preview, title and icon into one space. - Shaded background instead of border (using a themed color, though probably not the right one yet, waiting on UX) - Less padding around text preview area. - Give title 1 line, text preview 3. - No border around icon image. - Move actions to the bottom of the preview. Test: atest IntentResolverUnitTests Bug: 273784361 Bug: 271158656 Change-Id: I6ee364fa699a252519ea51bce47792ebecece817 --- .../android/intentresolver/ChooserActivity.java | 2 - .../contentpreview/ContentPreviewUi.java | 4 +- .../contentpreview/TextContentPreviewUi.java | 43 +++++++++++----------- 3 files changed, 23 insertions(+), 26 deletions(-) (limited to 'java/src') diff --git a/java/src/com/android/intentresolver/ChooserActivity.java b/java/src/com/android/intentresolver/ChooserActivity.java index 37a17e79..2a73c42a 100644 --- a/java/src/com/android/intentresolver/ChooserActivity.java +++ b/java/src/com/android/intentresolver/ChooserActivity.java @@ -652,8 +652,6 @@ public class ChooserActivity extends ResolverActivity implements parent = parent == null ? getWindow().getDecorView() : parent; - updateLayoutWidth(com.android.internal.R.id.content_preview_text_layout, width, parent); - updateLayoutWidth(com.android.internal.R.id.content_preview_title_layout, width, parent); updateLayoutWidth(com.android.internal.R.id.content_preview_file_layout, width, parent); } diff --git a/java/src/com/android/intentresolver/contentpreview/ContentPreviewUi.java b/java/src/com/android/intentresolver/contentpreview/ContentPreviewUi.java index 96f1c376..79444b4e 100644 --- a/java/src/com/android/intentresolver/contentpreview/ContentPreviewUi.java +++ b/java/src/com/android/intentresolver/contentpreview/ContentPreviewUi.java @@ -30,6 +30,7 @@ import android.view.View; import android.view.ViewGroup; import android.view.ViewStub; import android.view.animation.DecelerateInterpolator; +import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.LayoutRes; @@ -38,7 +39,6 @@ import com.android.intentresolver.R; import com.android.intentresolver.flags.FeatureFlagRepository; import com.android.intentresolver.flags.Flags; import com.android.intentresolver.widget.ActionRow; -import com.android.intentresolver.widget.RoundedRectImageView; import java.util.ArrayList; import java.util.List; @@ -99,7 +99,7 @@ abstract class ContentPreviewUi { return true; } - protected static void updateViewWithImage(RoundedRectImageView imageView, Bitmap image) { + protected static void updateViewWithImage(ImageView imageView, Bitmap image) { if (image == null) { imageView.setVisibility(View.GONE); return; diff --git a/java/src/com/android/intentresolver/contentpreview/TextContentPreviewUi.java b/java/src/com/android/intentresolver/contentpreview/TextContentPreviewUi.java index 7901e4cb..e143954e 100644 --- a/java/src/com/android/intentresolver/contentpreview/TextContentPreviewUi.java +++ b/java/src/com/android/intentresolver/contentpreview/TextContentPreviewUi.java @@ -92,35 +92,34 @@ class TextContentPreviewUi extends ContentPreviewUi { if (mSharingText == null) { contentPreviewLayout - .findViewById(com.android.internal.R.id.content_preview_text_layout) + .findViewById(R.id.text_preview_layout) .setVisibility(View.GONE); - } else { - TextView textView = contentPreviewLayout.findViewById( - com.android.internal.R.id.content_preview_text); - textView.setText(mSharingText); + return contentPreviewLayout; } + TextView textView = contentPreviewLayout.findViewById( + com.android.internal.R.id.content_preview_text); + textView.setText(mSharingText); + + TextView previewTitleView = contentPreviewLayout.findViewById( + com.android.internal.R.id.content_preview_title); if (TextUtils.isEmpty(mPreviewTitle)) { - contentPreviewLayout - .findViewById(com.android.internal.R.id.content_preview_title_layout) - .setVisibility(View.GONE); + previewTitleView.setVisibility(View.GONE); } else { - TextView previewTitleView = contentPreviewLayout.findViewById( - com.android.internal.R.id.content_preview_title); previewTitleView.setText(mPreviewTitle); + } - ImageView previewThumbnailView = contentPreviewLayout.findViewById( - com.android.internal.R.id.content_preview_thumbnail); - if (!validForContentPreview(mPreviewThumbnail)) { - previewThumbnailView.setVisibility(View.GONE); - } else { - mImageLoader.loadImage( - mPreviewThumbnail, - (bitmap) -> updateViewWithImage( - contentPreviewLayout.findViewById( - com.android.internal.R.id.content_preview_thumbnail), - bitmap)); - } + ImageView previewThumbnailView = contentPreviewLayout.findViewById( + com.android.internal.R.id.content_preview_thumbnail); + if (!validForContentPreview(mPreviewThumbnail)) { + previewThumbnailView.setVisibility(View.GONE); + } else { + mImageLoader.loadImage( + mPreviewThumbnail, + (bitmap) -> updateViewWithImage( + contentPreviewLayout.findViewById( + com.android.internal.R.id.content_preview_thumbnail), + bitmap)); } return contentPreviewLayout; -- cgit v1.2.3-59-g8ed1b