TP-76171 | ui-tron version bump with video view (#12645)
This commit is contained in:
committed by
GitHub
parent
5768727929
commit
c88c6c93d4
@@ -29,7 +29,14 @@ import timber.log.Timber
|
||||
|
||||
abstract class BaseApplication : MultiDexApplication(), ReactApplication, Media3SimpleCache {
|
||||
|
||||
private lateinit var media3SimpleCache: SimpleCache
|
||||
override val media3SimpleCache by lazy {
|
||||
val downloadContentDirectory = File(this.getExternalFilesDir(null), "downloads")
|
||||
SimpleCache(
|
||||
downloadContentDirectory,
|
||||
LeastRecentlyUsedCacheEvictor(100_000_000),
|
||||
StandaloneDatabaseProvider(this)
|
||||
)
|
||||
}
|
||||
|
||||
override fun attachBaseContext(base: Context?) {
|
||||
super.attachBaseContext(base)
|
||||
@@ -65,17 +72,4 @@ abstract class BaseApplication : MultiDexApplication(), ReactApplication, Media3
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun getMedia3SimpleCache(): SimpleCache {
|
||||
if (::media3SimpleCache.isInitialized.not()) {
|
||||
val downloadContentDirectory = File(this.getExternalFilesDir(null), "downloads")
|
||||
media3SimpleCache =
|
||||
SimpleCache(
|
||||
downloadContentDirectory,
|
||||
LeastRecentlyUsedCacheEvictor(100_000_000),
|
||||
StandaloneDatabaseProvider(this)
|
||||
)
|
||||
}
|
||||
return media3SimpleCache
|
||||
}
|
||||
}
|
||||
|
||||
@@ -101,7 +101,7 @@ navi-adverse = "1.3.0-20240917.145607-3"
|
||||
navi-alfred = "1.15.1"
|
||||
navi-guarddog = "3.5.0"
|
||||
navi-pulse = "1.7.0"
|
||||
navi-uitron = "1.22.0-20240919.222205-9"
|
||||
navi-uitron = "1.23.0"
|
||||
navigation = "2.5.3"
|
||||
okhttp-bom = "4.12.0"
|
||||
otaliastudios-cameraview = "2.7.2"
|
||||
|
||||
@@ -24,5 +24,5 @@ interface Media3SimpleCache {
|
||||
*
|
||||
* @return A [SimpleCache] instance.
|
||||
*/
|
||||
fun getMedia3SimpleCache(): SimpleCache
|
||||
val media3SimpleCache: SimpleCache
|
||||
}
|
||||
|
||||
@@ -42,8 +42,7 @@ class VideoViewHelper @Inject constructor() {
|
||||
}
|
||||
|
||||
private fun getFactory(): ProgressiveMediaSource.Factory {
|
||||
val downloadCache =
|
||||
(AppServiceManager.application as Media3SimpleCache).getMedia3SimpleCache()
|
||||
val downloadCache = (AppServiceManager.application as Media3SimpleCache).media3SimpleCache
|
||||
val cacheSink = CacheDataSink.Factory().setCache(downloadCache)
|
||||
val downstreamFactory = FileDataSource.Factory()
|
||||
val upstreamFactory =
|
||||
|
||||
@@ -7,6 +7,9 @@
|
||||
|
||||
package com.navi.common.uitron.model.property
|
||||
|
||||
import com.navi.uitron.model.UiTronResponse
|
||||
import com.navi.uitron.model.ui.BaseProperty
|
||||
|
||||
class VideoViewProperty : BaseProperty()
|
||||
class VideoViewProperty(
|
||||
val placeHolderView: UiTronResponse? = null,
|
||||
) : BaseProperty()
|
||||
|
||||
@@ -32,6 +32,7 @@ import com.navi.common.uitron.model.data.VideoViewData
|
||||
import com.navi.common.uitron.model.property.VideoViewProperty
|
||||
import com.navi.uitron.model.data.UiTronData
|
||||
import com.navi.uitron.render.Renderer
|
||||
import com.navi.uitron.render.UiTronRenderer
|
||||
import com.navi.uitron.utils.clip
|
||||
import com.navi.uitron.utils.customClickable
|
||||
import com.navi.uitron.utils.customCombinedClick
|
||||
@@ -133,7 +134,16 @@ class VideoViewRenderer(
|
||||
Box {
|
||||
AndroidView(modifier = viewModifier, factory = { playerView })
|
||||
if (placeholderVisibility.value) {
|
||||
Box(viewModifier.background(Color.White))
|
||||
property.placeHolderView?.let {
|
||||
UiTronRenderer(
|
||||
it.data,
|
||||
uiTronViewModel,
|
||||
)
|
||||
.Render(
|
||||
composeViews = it.parentComposeView.orEmpty(),
|
||||
modifier = viewModifier,
|
||||
)
|
||||
} ?: Box(viewModifier.background(Color.White))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -12,9 +12,12 @@ import android.view.View
|
||||
import androidx.compose.ui.graphics.Shape
|
||||
import androidx.compose.ui.text.font.FontFamily
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.media3.datasource.cache.SimpleCache
|
||||
import com.navi.alfred.AlfredManager
|
||||
import com.navi.base.AppServiceManager
|
||||
import com.navi.base.utils.BaseUtils
|
||||
import com.navi.common.firebaseremoteconfig.FirebaseRemoteConfigHelper
|
||||
import com.navi.common.media3simplecache.Media3SimpleCache
|
||||
import com.navi.common.utils.CommonUtils.shortenMoney
|
||||
import com.navi.common.utils.Constants.MAX_MONEY_LENGTH
|
||||
import com.navi.common.utils.Constants.SHORTEN_MONEY
|
||||
@@ -138,4 +141,8 @@ class UiTronDependencyProvider(private val context: Context) : IUiTronDependency
|
||||
AlfredManager.sensitiveComposeRepository.blurSensitiveScreen(blur)
|
||||
}
|
||||
}
|
||||
|
||||
override fun getMedia3SimpleCache(): SimpleCache {
|
||||
return (AppServiceManager.application as Media3SimpleCache).media3SimpleCache
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,7 +75,9 @@ dependencies {
|
||||
api libs.androidx.paging.runtime.ktx
|
||||
api libs.masayukiSuda.easingInterpolator
|
||||
api libs.navi.adverse
|
||||
api libs.navi.uitron
|
||||
api (libs.navi.uitron) {
|
||||
exclude group: "com.google.guava", module: "guava"
|
||||
}
|
||||
|
||||
implementation libs.android.flexbox
|
||||
implementation libs.android.material
|
||||
|
||||
Reference in New Issue
Block a user