File tree Expand file tree Collapse file tree 2 files changed +3
-3
lines changed
samples/camera/camerax/src/main/java/com/example/platform/camerax/basic Expand file tree Collapse file tree 2 files changed +3
-3
lines changed Original file line number Diff line number Diff line change @@ -35,7 +35,6 @@ import androidx.compose.foundation.layout.height
35
35
import androidx.compose.foundation.layout.offset
36
36
import androidx.compose.foundation.layout.padding
37
37
import androidx.compose.foundation.layout.size
38
- import androidx.compose.foundation.layout.wrapContentSize
39
38
import androidx.compose.foundation.shape.CircleShape
40
39
import androidx.compose.material.icons.Icons
41
40
import androidx.compose.material.icons.automirrored.filled.ArrowBack
@@ -86,7 +85,7 @@ fun CameraXBasic(modifier: Modifier = Modifier) {
86
85
var showCapturedImage by remember { mutableStateOf<Uri ?>(null ) }
87
86
val cameraPermissionState = rememberPermissionState(Manifest .permission.CAMERA )
88
87
val imageCaptureCallbackExecutor: ExecutorService = remember { Executors .newSingleThreadExecutor() }
89
- val viewModel = remember { CameraXBasicViewModel () }
88
+ val viewModel = viewModel { CameraXBasicViewModel () }
90
89
91
90
DisposableEffect (Unit ) {
92
91
onDispose {
Original file line number Diff line number Diff line change @@ -37,6 +37,7 @@ import androidx.camera.lifecycle.awaitInstance
37
37
import androidx.compose.ui.geometry.Offset
38
38
import androidx.core.content.ContextCompat
39
39
import androidx.lifecycle.LifecycleOwner
40
+ import androidx.lifecycle.ViewModel
40
41
import kotlinx.coroutines.awaitCancellation
41
42
import kotlinx.coroutines.flow.MutableStateFlow
42
43
import kotlinx.coroutines.flow.StateFlow
@@ -52,7 +53,7 @@ import java.util.concurrent.ExecutorService
52
53
* functionality using CameraX. It exposes a [StateFlow] for the camera preview [SurfaceRequest]
53
54
* to be used in a composable.
54
55
*/
55
- class CameraXBasicViewModel {
56
+ class CameraXBasicViewModel : ViewModel () {
56
57
private val _surfaceRequest = MutableStateFlow <SurfaceRequest ?>(null )
57
58
val surfaceRequest: StateFlow <SurfaceRequest ?> = _surfaceRequest
58
59
private var surfaceMeteringPointFactory: SurfaceOrientedMeteringPointFactory ? = null
You can’t perform that action at this time.
0 commit comments