Skip to content

Commit 326b238

Browse files
committed
moves videoViewer
1 parent 4d30969 commit 326b238

File tree

2 files changed

+32
-54
lines changed

2 files changed

+32
-54
lines changed

toolkit/popup/src/main/java/com/arcgismaps/toolkit/popup/internal/ui/fileviewer/FileViewer.kt

+32-1
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ import androidx.compose.material3.MaterialTheme
3939
import androidx.compose.material3.Scaffold
4040
import androidx.compose.material3.Text
4141
import androidx.compose.runtime.Composable
42+
import androidx.compose.runtime.DisposableEffect
4243
import androidx.compose.runtime.mutableStateOf
4344
import androidx.compose.runtime.remember
4445
import androidx.compose.runtime.rememberCoroutineScope
@@ -47,9 +48,12 @@ import androidx.compose.ui.Modifier
4748
import androidx.compose.ui.platform.LocalContext
4849
import androidx.compose.ui.tooling.preview.Preview
4950
import androidx.compose.ui.unit.dp
51+
import androidx.compose.ui.viewinterop.AndroidView
5052
import androidx.compose.ui.window.Dialog
5153
import androidx.compose.ui.window.DialogProperties
52-
import coil.compose.AsyncImage
54+
import androidx.media3.common.MediaItem
55+
import androidx.media3.exoplayer.ExoPlayer
56+
import androidx.media3.ui.PlayerView
5357
import kotlinx.coroutines.CoroutineScope
5458
import kotlinx.coroutines.Dispatchers
5559
import kotlinx.coroutines.launch
@@ -168,6 +172,33 @@ private fun ViewerActions(
168172
}
169173
}
170174

175+
@Composable
176+
internal fun VideoViewer(path: String) {
177+
val context = LocalContext.current
178+
val exoPlayer = remember {
179+
ExoPlayer.Builder(context).build().apply {
180+
val mediaItem = MediaItem.Builder()
181+
.setUri(path)
182+
.build()
183+
setMediaItem(mediaItem)
184+
prepare()
185+
}
186+
}
187+
188+
AndroidView(
189+
factory = {
190+
PlayerView(context).apply {
191+
player = exoPlayer
192+
}
193+
}
194+
)
195+
DisposableEffect(Unit) {
196+
onDispose {
197+
exoPlayer.release()
198+
}
199+
}
200+
}
201+
171202
@Preview
172203
@Composable
173204
private fun FileViewerPreview() {

toolkit/popup/src/main/java/com/arcgismaps/toolkit/popup/internal/ui/fileviewer/VideoViewer.kt

-53
This file was deleted.

0 commit comments

Comments
 (0)