summaryrefslogtreecommitdiff
path: root/tests/shared
diff options
context:
space:
mode:
author Steve Elliott <steell@google.com> 2024-02-07 18:45:25 -0500
committer Andrey Epin <ayepin@google.com> 2024-02-08 08:47:47 -0800
commit8a447de9e360df5e3c1ad7e3defcc84c4d9f4594 (patch)
treeb0571284db094310f86fd62dc9fb77ef3d15308a /tests/shared
parentaf780e790cad2afb2c5bf0a67ac8782e95e94a23 (diff)
Shareousel content preview ui + view-model
Domain is mostly stubbed, coming in later CLs. Bug: 302691505 Flag: ACONFIG android.service.chooser.chooser_payload_toggling DEVELOPMENT Test: N/A - code isn't live Change-Id: Id9041f1e842007aef64653e8f96357d90bb7a657
Diffstat (limited to 'tests/shared')
-rw-r--r--tests/shared/src/com/android/intentresolver/TestContentPreviewViewModel.kt23
1 files changed, 14 insertions, 9 deletions
diff --git a/tests/shared/src/com/android/intentresolver/TestContentPreviewViewModel.kt b/tests/shared/src/com/android/intentresolver/TestContentPreviewViewModel.kt
index 888fc161..998c0802 100644
--- a/tests/shared/src/com/android/intentresolver/TestContentPreviewViewModel.kt
+++ b/tests/shared/src/com/android/intentresolver/TestContentPreviewViewModel.kt
@@ -22,19 +22,22 @@ import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewmodel.CreationExtras
import com.android.intentresolver.contentpreview.BasePreviewViewModel
import com.android.intentresolver.contentpreview.ImageLoader
+import com.android.intentresolver.contentpreview.PayloadToggleInteractor
import com.android.intentresolver.contentpreview.PreviewDataProvider
/** A test content preview model that supports image loader override. */
class TestContentPreviewViewModel(
private val viewModel: BasePreviewViewModel,
- private val imageLoader: ImageLoader? = null,
+ private val imageLoaderDelegate: ImageLoader?,
) : BasePreviewViewModel() {
- override fun createOrReuseProvider(
- targetIntent: Intent
- ): PreviewDataProvider = viewModel.createOrReuseProvider(targetIntent)
+ override fun createOrReuseProvider(targetIntent: Intent): PreviewDataProvider =
+ viewModel.createOrReuseProvider(targetIntent)
- override fun createOrReuseImageLoader(): ImageLoader =
- imageLoader ?: viewModel.createOrReuseImageLoader()
+ override val imageLoader: ImageLoader
+ get() = imageLoaderDelegate ?: viewModel.imageLoader
+
+ override val payloadToggleInteractor: PayloadToggleInteractor?
+ get() = viewModel.payloadToggleInteractor
companion object {
fun wrap(
@@ -47,10 +50,12 @@ class TestContentPreviewViewModel(
modelClass: Class<T>,
extras: CreationExtras
): T {
+ val wrapped = factory.create(modelClass, extras) as BasePreviewViewModel
return TestContentPreviewViewModel(
- factory.create(modelClass, extras) as BasePreviewViewModel,
- imageLoader,
- ) as T
+ wrapped,
+ imageLoader ?: wrapped.imageLoader,
+ )
+ as T
}
}
}