From 72e9bda3d304540515742135bf12e5f1dbed8857 Mon Sep 17 00:00:00 2001 From: 1 Date: Mon, 8 May 2023 21:01:33 +0000 Subject: Fixes based upon UX feedback - Align colors with mocks. - Increase custom action vertical padding - Align text + image and file + text to the same 56x56 image size - Reduce target vertical padding - Don't disable text when share is "image only" - Add an icon for single-file shares - Update multi-file icon to align with mocks. - Vertically align image in text+image - Show image and title with text in landscape - Reduce text preview padding to align with file+text padding. Bug: 281541996 Test: build and test with ShareTest, Files and Photos. Change-Id: Ia58315d765a824cb45ee1b84625c1262a8a3e76d --- java/res/color/resolver_profile_tab_text.xml | 2 +- .../drawable/chooser_content_preview_rounded.xml | 2 +- java/res/drawable/content_preview_badge_bg.xml | 2 +- java/res/drawable/ic_file_copy.xml | 2 +- java/res/drawable/resolver_profile_tab_bg.xml | 2 +- java/res/drawable/single_file.xml | 25 ++++++++++++++++++++++ java/res/layout/chooser_action_row.xml | 4 ++-- java/res/layout/chooser_action_view.xml | 16 +++++++------- java/res/layout/chooser_grid_preview_text.xml | 15 +++++++------ java/res/values-h480dp/bools.xml | 1 - java/res/values-h480dp/dimens.xml | 4 ++-- java/res/values/bools.xml | 1 - java/res/values/dimens.xml | 4 ++-- .../contentpreview/FileContentPreviewUi.java | 3 +++ .../FilesPlusTextContentPreviewUi.java | 1 - .../contentpreview/TextContentPreviewUi.java | 7 ++---- .../UnbundledChooserActivityTest.java | 3 +-- 17 files changed, 58 insertions(+), 36 deletions(-) create mode 100644 java/res/drawable/single_file.xml (limited to 'java') diff --git a/java/res/color/resolver_profile_tab_text.xml b/java/res/color/resolver_profile_tab_text.xml index c82aeefb..7c2723ce 100644 --- a/java/res/color/resolver_profile_tab_text.xml +++ b/java/res/color/resolver_profile_tab_text.xml @@ -16,5 +16,5 @@ - + diff --git a/java/res/drawable/chooser_content_preview_rounded.xml b/java/res/drawable/chooser_content_preview_rounded.xml index 85dfacb9..3d6145bc 100644 --- a/java/res/drawable/chooser_content_preview_rounded.xml +++ b/java/res/drawable/chooser_content_preview_rounded.xml @@ -21,7 +21,7 @@ android:shape="rectangle"> + android:color="?androidprv:attr/materialColorSurfaceBright" /> diff --git a/java/res/drawable/content_preview_badge_bg.xml b/java/res/drawable/content_preview_badge_bg.xml index 51caef5f..7f7a1c6f 100644 --- a/java/res/drawable/content_preview_badge_bg.xml +++ b/java/res/drawable/content_preview_badge_bg.xml @@ -21,7 +21,7 @@ android:type="radial" android:centerX="1" android:centerY="0" - android:gradientRadius="@dimen/chooser_preview_image_width" + android:gradientRadius="@dimen/chooser_preview_image_height_tall" android:startColor="#60000000" android:endColor="#00000000" /> diff --git a/java/res/drawable/ic_file_copy.xml b/java/res/drawable/ic_file_copy.xml index d05b55f1..0667e474 100644 --- a/java/res/drawable/ic_file_copy.xml +++ b/java/res/drawable/ic_file_copy.xml @@ -20,6 +20,6 @@ android:viewportWidth="24" android:viewportHeight="24"> diff --git a/java/res/drawable/resolver_profile_tab_bg.xml b/java/res/drawable/resolver_profile_tab_bg.xml index dba06a7f..8bb23a53 100644 --- a/java/res/drawable/resolver_profile_tab_bg.xml +++ b/java/res/drawable/resolver_profile_tab_bg.xml @@ -29,7 +29,7 @@ - + diff --git a/java/res/drawable/single_file.xml b/java/res/drawable/single_file.xml new file mode 100644 index 00000000..af46c97e --- /dev/null +++ b/java/res/drawable/single_file.xml @@ -0,0 +1,25 @@ + + + + diff --git a/java/res/layout/chooser_action_row.xml b/java/res/layout/chooser_action_row.xml index bdf42211..4a3df79e 100644 --- a/java/res/layout/chooser_action_row.xml +++ b/java/res/layout/chooser_action_row.xml @@ -23,7 +23,7 @@ android:id="@+id/actions_top_divider" android:layout_width="match_parent" android:layout_height="2dp" - android:background="?androidprv:attr/materialColorSurfaceDim" + android:background="?androidprv:attr/materialColorSurfaceContainerHighest" /> diff --git a/java/res/layout/chooser_action_view.xml b/java/res/layout/chooser_action_view.xml index ec1b0687..8bdcd15f 100644 --- a/java/res/layout/chooser_action_view.xml +++ b/java/res/layout/chooser_action_view.xml @@ -15,16 +15,16 @@ --> + android:maxWidth="@dimen/chooser_action_max_width" + android:textColor="?androidprv:attr/materialColorOnSurface" + android:textSize="12sp" /> diff --git a/java/res/layout/chooser_grid_preview_text.xml b/java/res/layout/chooser_grid_preview_text.xml index 1a4404a4..44163b49 100644 --- a/java/res/layout/chooser_grid_preview_text.xml +++ b/java/res/layout/chooser_grid_preview_text.xml @@ -20,6 +20,7 @@ - false - false diff --git a/java/res/values-h480dp/dimens.xml b/java/res/values-h480dp/dimens.xml index 3d9e72b8..369a32b8 100644 --- a/java/res/values-h480dp/dimens.xml +++ b/java/res/values-h480dp/dimens.xml @@ -24,7 +24,7 @@ -1px 18dp 80dp - 100dp 192dp - 24dp + 10dp + 56dp diff --git a/java/res/values/bools.xml b/java/res/values/bools.xml index 38d97d8e..fb6db549 100644 --- a/java/res/values/bools.xml +++ b/java/res/values/bools.xml @@ -18,5 +18,4 @@ true - true diff --git a/java/res/values/dimens.xml b/java/res/values/dimens.xml index 30b788a9..6da0ec1c 100644 --- a/java/res/values/dimens.xml +++ b/java/res/values/dimens.xml @@ -58,8 +58,8 @@ 412dp 8dp 120dp - 32dp 64dp - 8dp + 6dp + 46dp diff --git a/java/src/com/android/intentresolver/contentpreview/FileContentPreviewUi.java b/java/src/com/android/intentresolver/contentpreview/FileContentPreviewUi.java index 85f94451..13f27493 100644 --- a/java/src/com/android/intentresolver/contentpreview/FileContentPreviewUi.java +++ b/java/src/com/android/intentresolver/contentpreview/FileContentPreviewUi.java @@ -22,6 +22,7 @@ import android.util.PluralsMessageFormatter; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.ImageView; import android.widget.TextView; import com.android.intentresolver.R; @@ -91,6 +92,8 @@ class FileContentPreviewUi extends ContentPreviewUi { secondLine.setText( PluralsMessageFormatter.format(resources, arguments, R.string.more_files)); } else { + ImageView icon = contentPreviewLayout.findViewById(R.id.content_preview_file_icon); + icon.setImageResource(R.drawable.single_file); secondLine.setVisibility(View.GONE); } diff --git a/java/src/com/android/intentresolver/contentpreview/FilesPlusTextContentPreviewUi.java b/java/src/com/android/intentresolver/contentpreview/FilesPlusTextContentPreviewUi.java index 363508b7..4fe54681 100644 --- a/java/src/com/android/intentresolver/contentpreview/FilesPlusTextContentPreviewUi.java +++ b/java/src/com/android/intentresolver/contentpreview/FilesPlusTextContentPreviewUi.java @@ -181,7 +181,6 @@ class FilesPlusTextContentPreviewUi extends ContentPreviewUi { includeText.setText(isLink ? R.string.include_link : R.string.include_text); shareTextAction.accept(false); includeText.setOnCheckedChangeListener((view, isChecked) -> { - textView.setEnabled(isChecked); if (isChecked) { textView.setText(mText); } else { diff --git a/java/src/com/android/intentresolver/contentpreview/TextContentPreviewUi.java b/java/src/com/android/intentresolver/contentpreview/TextContentPreviewUi.java index c429b2d6..3c8a6e48 100644 --- a/java/src/com/android/intentresolver/contentpreview/TextContentPreviewUi.java +++ b/java/src/com/android/intentresolver/contentpreview/TextContentPreviewUi.java @@ -79,9 +79,6 @@ class TextContentPreviewUi extends ContentPreviewUi { ViewGroup contentPreviewLayout = (ViewGroup) layoutInflater.inflate( R.layout.chooser_grid_preview_text, parent, false); - boolean minimalPreview = - parent.getContext().getResources().getBoolean(R.bool.minimal_preview); - final ActionRow actionRow = contentPreviewLayout.findViewById(com.android.internal.R.id.chooser_action_row); actionRow.setActions( @@ -108,7 +105,7 @@ class TextContentPreviewUi extends ContentPreviewUi { TextView previewTitleView = contentPreviewLayout.findViewById( com.android.internal.R.id.content_preview_title); - if (TextUtils.isEmpty(mPreviewTitle) || minimalPreview) { + if (TextUtils.isEmpty(mPreviewTitle)) { previewTitleView.setVisibility(View.GONE); } else { previewTitleView.setText(mPreviewTitle); @@ -116,7 +113,7 @@ class TextContentPreviewUi extends ContentPreviewUi { ImageView previewThumbnailView = contentPreviewLayout.findViewById( com.android.internal.R.id.content_preview_thumbnail); - if (!isOwnedByCurrentUser(mPreviewThumbnail) || minimalPreview) { + if (!isOwnedByCurrentUser(mPreviewThumbnail)) { previewThumbnailView.setVisibility(View.GONE); } else { mImageLoader.loadImage( diff --git a/java/tests/src/com/android/intentresolver/UnbundledChooserActivityTest.java b/java/tests/src/com/android/intentresolver/UnbundledChooserActivityTest.java index 5ea0b47d..317e2815 100644 --- a/java/tests/src/com/android/intentresolver/UnbundledChooserActivityTest.java +++ b/java/tests/src/com/android/intentresolver/UnbundledChooserActivityTest.java @@ -26,7 +26,6 @@ import static androidx.test.espresso.assertion.ViewAssertions.doesNotExist; import static androidx.test.espresso.assertion.ViewAssertions.matches; import static androidx.test.espresso.matcher.ViewMatchers.hasSibling; import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed; -import static androidx.test.espresso.matcher.ViewMatchers.isEnabled; import static androidx.test.espresso.matcher.ViewMatchers.withEffectiveVisibility; import static androidx.test.espresso.matcher.ViewMatchers.withId; import static androidx.test.espresso.matcher.ViewMatchers.withText; @@ -855,7 +854,7 @@ public class UnbundledChooserActivityTest { onView(withId(R.id.image_view)) .check(matches(withEffectiveVisibility(ViewMatchers.Visibility.GONE))); onView(withId(R.id.content_preview_text)) - .check(matches(allOf(isDisplayed(), not(isEnabled()), withText("Image only")))); + .check(matches(allOf(isDisplayed(), withText("Image only")))); } @Test -- cgit v1.2.3-59-g8ed1b