summaryrefslogtreecommitdiff
path: root/java/src
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2023-02-04 00:19:55 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-02-04 00:19:55 +0000
commit3d094b80389b2386b9f724217ef593dc64a3ca8b (patch)
treed5bd64546039ae0c3cbcb49ad55307b998aec41f /java/src
parent3fd3c66efa00ed9da270e85753defa666bb9af62 (diff)
parent150f8b476d622b592ce9192aed2e106076f2f67e (diff)
Merge "Enable scrollable image preview view" into tm-qpr-dev
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/intentresolver/ChooserContentPreviewUi.java17
-rw-r--r--java/src/com/android/intentresolver/flags/Flags.kt6
-rw-r--r--java/src/com/android/intentresolver/widget/ChooserImagePreviewView.kt3
3 files changed, 23 insertions, 3 deletions
diff --git a/java/src/com/android/intentresolver/ChooserContentPreviewUi.java b/java/src/com/android/intentresolver/ChooserContentPreviewUi.java
index 553a36c6..9bef3553 100644
--- a/java/src/com/android/intentresolver/ChooserContentPreviewUi.java
+++ b/java/src/com/android/intentresolver/ChooserContentPreviewUi.java
@@ -363,8 +363,7 @@ public final class ChooserContentPreviewUi {
@LayoutRes int actionRowLayout) {
ViewGroup contentPreviewLayout = (ViewGroup) layoutInflater.inflate(
R.layout.chooser_grid_preview_image, parent, false);
- ImagePreviewView imagePreview = contentPreviewLayout.findViewById(
- com.android.internal.R.id.content_preview_image_area);
+ ImagePreviewView imagePreview = inflateImagePreviewView(contentPreviewLayout);
final ActionRow actionRow = inflateActionRow(contentPreviewLayout, actionRowLayout);
if (actionRow != null) {
@@ -431,6 +430,20 @@ public final class ChooserContentPreviewUi {
return actions;
}
+ private ImagePreviewView inflateImagePreviewView(ViewGroup previewLayout) {
+ ViewStub stub = previewLayout.findViewById(R.id.image_preview_stub);
+ if (stub != null) {
+ int layoutId =
+ mFeatureFlagRepository.isEnabled(Flags.SHARESHEET_SCROLLABLE_IMAGE_PREVIEW)
+ ? R.layout.scrollable_image_preview_view
+ : R.layout.chooser_image_preview_view;
+ stub.setLayoutResource(layoutId);
+ stub.inflate();
+ }
+ return previewLayout.findViewById(
+ com.android.internal.R.id.content_preview_image_area);
+ }
+
private static ViewGroup displayFileContentPreview(
Intent targetIntent,
Resources resources,
diff --git a/java/src/com/android/intentresolver/flags/Flags.kt b/java/src/com/android/intentresolver/flags/Flags.kt
index db00a751..9c206265 100644
--- a/java/src/com/android/intentresolver/flags/Flags.kt
+++ b/java/src/com/android/intentresolver/flags/Flags.kt
@@ -35,6 +35,12 @@ object Flags {
id = 1503, name = "sharesheet_image_text_preview", teamfood = true
)
+ // TODO(b/267355521) Tracking Bug
+ @JvmField
+ val SHARESHEET_SCROLLABLE_IMAGE_PREVIEW = unreleasedFlag(
+ 1504, "sharesheet_scrollable_image_preview"
+ )
+
private fun unreleasedFlag(id: Int, name: String, teamfood: Boolean = false) =
UnreleasedFlag(id, name, "systemui", teamfood)
}
diff --git a/java/src/com/android/intentresolver/widget/ChooserImagePreviewView.kt b/java/src/com/android/intentresolver/widget/ChooserImagePreviewView.kt
index bf10bfaa..ca94a95d 100644
--- a/java/src/com/android/intentresolver/widget/ChooserImagePreviewView.kt
+++ b/java/src/com/android/intentresolver/widget/ChooserImagePreviewView.kt
@@ -57,7 +57,8 @@ class ChooserImagePreviewView : RelativeLayout, ImagePreviewView {
private var transitionStatusElementCallback: TransitionElementStatusCallback? = null
override fun onFinishInflate() {
- LayoutInflater.from(context).inflate(R.layout.image_preview_view, this, true)
+ LayoutInflater.from(context)
+ .inflate(R.layout.chooser_image_preview_view_internals, this, true)
mainImage = requireViewById(IntR.id.content_preview_image_1_large)
secondLargeImage = requireViewById(IntR.id.content_preview_image_2_large)
secondSmallImage = requireViewById(IntR.id.content_preview_image_2_small)