diff options
Diffstat (limited to 'java/src')
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) |