diff options
Diffstat (limited to 'java/src')
7 files changed, 17 insertions, 12 deletions
diff --git a/java/src/com/android/intentresolver/ChooserActivity.java b/java/src/com/android/intentresolver/ChooserActivity.java index 9b4582df..039fad56 100644 --- a/java/src/com/android/intentresolver/ChooserActivity.java +++ b/java/src/com/android/intentresolver/ChooserActivity.java @@ -318,7 +318,8 @@ public class ChooserActivity extends Hilt_ChooserActivity implements mEnterTransitionAnimationDelegate, new HeadlineGeneratorImpl(this), ContentTypeHint.NONE, - mChooserRequest.getMetadataText() + mChooserRequest.getMetadataText(), + /*isPayloadTogglingEnabled =*/ false ); updateStickyContentPreview(); diff --git a/java/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUi.java b/java/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUi.java index acdf6ec6..6f201ad5 100644 --- a/java/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUi.java +++ b/java/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUi.java @@ -25,7 +25,6 @@ import android.content.ClipData; import android.content.Intent; import android.content.res.Resources; import android.net.Uri; -import android.service.chooser.Flags; import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; @@ -51,6 +50,7 @@ import kotlinx.coroutines.CoroutineScope; public final class ChooserContentPreviewUi { private final CoroutineScope mScope; + private final boolean mIsPayloadTogglingEnabled; /** * Delegate to build the default system action buttons to display in the preview layout, if/when @@ -103,8 +103,11 @@ public final class ChooserContentPreviewUi { TransitionElementStatusCallback transitionElementStatusCallback, HeadlineGenerator headlineGenerator, ContentTypeHint contentTypeHint, - @Nullable CharSequence metadata) { + @Nullable CharSequence metadata, + // TODO: replace with the FeatureFlag ref when v1 is gone + boolean isPayloadTogglingEnabled) { mScope = scope; + mIsPayloadTogglingEnabled = isPayloadTogglingEnabled; mContentPreviewUi = createContentPreview( previewData, targetIntent, @@ -157,8 +160,7 @@ public final class ChooserContentPreviewUi { return fileContentPreviewUi; } - //TODO: use flags injection - if (previewType == CONTENT_PREVIEW_PAYLOAD_SELECTION && Flags.chooserPayloadToggling()) { + if (previewType == CONTENT_PREVIEW_PAYLOAD_SELECTION && mIsPayloadTogglingEnabled) { transitionElementStatusCallback.onAllTransitionElementsReady(); // TODO return new ShareouselContentPreviewUi(actionFactory); } diff --git a/java/src/com/android/intentresolver/contentpreview/ContentPreviewUi.java b/java/src/com/android/intentresolver/contentpreview/ContentPreviewUi.java index c35f93b4..b0fb278e 100644 --- a/java/src/com/android/intentresolver/contentpreview/ContentPreviewUi.java +++ b/java/src/com/android/intentresolver/contentpreview/ContentPreviewUi.java @@ -30,12 +30,14 @@ import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.Nullable; +import androidx.annotation.VisibleForTesting; import com.android.intentresolver.R; import com.android.intentresolver.widget.ActionRow; import com.android.intentresolver.widget.ScrollableImagePreviewView; -abstract class ContentPreviewUi { +@VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) +public abstract class ContentPreviewUi { private static final int IMAGE_FADE_IN_MILLIS = 150; static final String TAG = "ChooserPreview"; diff --git a/java/src/com/android/intentresolver/contentpreview/CursorUriReader.kt b/java/src/com/android/intentresolver/contentpreview/CursorUriReader.kt index e9e60040..6a12f56c 100644 --- a/java/src/com/android/intentresolver/contentpreview/CursorUriReader.kt +++ b/java/src/com/android/intentresolver/contentpreview/CursorUriReader.kt @@ -140,7 +140,6 @@ class CursorUriReader( cursor.extras?.getInt(CursorExtraKeys.POSITION, 0) ?: 0, 128, ) { - // TODO: check that authority is case-sensitive for resolution reasons it.authority != uri.authority } } diff --git a/java/src/com/android/intentresolver/contentpreview/PreviewDataProvider.kt b/java/src/com/android/intentresolver/contentpreview/PreviewDataProvider.kt index 8073cfec..3f306a80 100644 --- a/java/src/com/android/intentresolver/contentpreview/PreviewDataProvider.kt +++ b/java/src/com/android/intentresolver/contentpreview/PreviewDataProvider.kt @@ -155,7 +155,6 @@ constructor( val extraContentUri = additionalContentUri ?: return false return runCatching { val authority = extraContentUri.authority - // TODO: verify that authority is case-sensitive records.firstOrNull { authority == it.uri.authority } == null } .onFailure { diff --git a/java/src/com/android/intentresolver/contentpreview/ShareouselContentPreviewUi.kt b/java/src/com/android/intentresolver/contentpreview/ShareouselContentPreviewUi.kt index cc89f5bf..82c09986 100644 --- a/java/src/com/android/intentresolver/contentpreview/ShareouselContentPreviewUi.kt +++ b/java/src/com/android/intentresolver/contentpreview/ShareouselContentPreviewUi.kt @@ -20,6 +20,7 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.TextView +import androidx.annotation.VisibleForTesting import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height @@ -43,7 +44,8 @@ import com.android.intentresolver.contentpreview.shareousel.ui.composable.Shareo import com.android.intentresolver.contentpreview.shareousel.ui.viewmodel.ShareouselViewModel import com.android.intentresolver.contentpreview.shareousel.ui.viewmodel.toShareouselViewModel -internal class ShareouselContentPreviewUi( +@VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) +class ShareouselContentPreviewUi( private val actionFactory: ActionFactory, ) : ContentPreviewUi() { diff --git a/java/src/com/android/intentresolver/v2/ChooserActivity.java b/java/src/com/android/intentresolver/v2/ChooserActivity.java index 072c56de..1a7dd9d6 100644 --- a/java/src/com/android/intentresolver/v2/ChooserActivity.java +++ b/java/src/com/android/intentresolver/v2/ChooserActivity.java @@ -493,7 +493,7 @@ public class ChooserActivity extends Hilt_ChooserActivity implements ChooserContentPreviewUi.ActionFactory actionFactory = chooserActionFactory; if (previewViewModel.getPreviewDataProvider().getPreviewType() == CONTENT_PREVIEW_PAYLOAD_SELECTION - && android.service.chooser.Flags.chooserPayloadToggling()) { + && mChooserServiceFeatureFlags.chooserPayloadToggling()) { PayloadToggleInteractor payloadToggleInteractor = previewViewModel.getPayloadToggleInteractor(); if (payloadToggleInteractor != null) { @@ -515,8 +515,8 @@ public class ChooserActivity extends Hilt_ChooserActivity implements mEnterTransitionAnimationDelegate, new HeadlineGeneratorImpl(this), chooserRequest.getContentTypeHint(), - chooserRequest.getMetadataText() - ); + chooserRequest.getMetadataText(), + mChooserServiceFeatureFlags.chooserPayloadToggling()); updateStickyContentPreview(); if (shouldShowStickyContentPreview() || mChooserMultiProfilePagerAdapter |