Loading packages/SystemUI/src/com/android/systemui/screencapture/domain/interactor/ScreenshotInteractor.kt→packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/domain/interactor/ScreenshotInteractor.kt +1 −1 Original line number Diff line number Diff line Loading @@ -14,7 +14,7 @@ * limitations under the License. */ package com.android.systemui.screencapture.domain.interactor package com.android.systemui.screencapture.record.largescreen.domain.interactor import android.graphics.Rect import android.os.Handler Loading packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/ui/compose/LargeScreenCaptureRecordContent.kt +9 −3 Original line number Diff line number Diff line Loading @@ -16,15 +16,21 @@ package com.android.systemui.screencapture.record.largescreen.ui.compose import androidx.compose.material3.Text import androidx.compose.runtime.Composable import com.android.systemui.lifecycle.rememberViewModel import com.android.systemui.screencapture.common.ui.compose.ScreenCaptureContent import com.android.systemui.screencapture.record.largescreen.ui.viewmodel.PreCaptureViewModel import javax.inject.Inject class LargeScreenCaptureRecordContent @Inject constructor() : ScreenCaptureContent { class LargeScreenCaptureRecordContent @Inject constructor(private val viewModelFactory: PreCaptureViewModel.Factory) : ScreenCaptureContent { @Composable override fun Content() { Text("Not yet implemented") val viewModel: PreCaptureViewModel = rememberViewModel("PreCaptureViewModel") { viewModelFactory.create() } PreCaptureUI(viewModel = viewModel) } } packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/ui/compose/PreCaptureToolbar.kt +2 −2 Original line number Diff line number Diff line Loading @@ -29,12 +29,12 @@ import com.android.systemui.common.ui.compose.Icon import com.android.systemui.screencapture.common.ui.compose.RadioButtonGroup import com.android.systemui.screencapture.common.ui.compose.RadioButtonGroupItem import com.android.systemui.screencapture.common.ui.compose.Toolbar import com.android.systemui.screencapture.ui.viewmodel.ScreenCaptureViewModel import com.android.systemui.screencapture.record.largescreen.ui.viewmodel.PreCaptureViewModel @OptIn(ExperimentalMaterial3ExpressiveApi::class) @Composable fun PreCaptureToolbar( viewModel: ScreenCaptureViewModel, viewModel: PreCaptureViewModel, expanded: Boolean, onCloseClick: () -> Unit, modifier: Modifier = Modifier, Loading packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/ui/compose/PreCaptureUI.kt +4 −7 Original line number Diff line number Diff line Loading @@ -17,16 +17,13 @@ package com.android.systemui.screencapture.record.largescreen.ui.compose import androidx.compose.runtime.Composable import com.android.systemui.lifecycle.rememberViewModel import com.android.systemui.screencapture.ui.viewmodel.ScreenCaptureViewModel import com.android.systemui.screencapture.record.largescreen.ui.viewmodel.PreCaptureViewModel /** Main component for the pre-capture UI. */ @Composable fun PreCaptureUI(viewModelFactory: ScreenCaptureViewModel.Factory) { val viewModel: ScreenCaptureViewModel = rememberViewModel("ScreenCaptureViewModel") { viewModelFactory.create() } fun PreCaptureUI(viewModel: PreCaptureViewModel) { PreCaptureToolbar(viewModel = viewModel, expanded = true, onCloseClick = {}) // TODO: Add region box here // TODO(b/423967051) If the capture region is FULLSCREEN, show centered capture button. // TODO(b/422834671) If the capture region is PARTIAL, add region box here. } packages/SystemUI/src/com/android/systemui/screencapture/ui/viewmodel/ScreenCaptureViewModel.kt→packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/ui/viewmodel/PreCaptureViewModel.kt +4 −4 Original line number Diff line number Diff line Loading @@ -14,14 +14,14 @@ * limitations under the License. */ package com.android.systemui.screencapture.ui.viewmodel package com.android.systemui.screencapture.record.largescreen.ui.viewmodel import android.content.Context import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.lifecycle.HydratedActivatable import com.android.systemui.res.R import com.android.systemui.screencapture.domain.interactor.ScreenshotInteractor import com.android.systemui.screencapture.record.largescreen.domain.interactor.ScreenCaptureRecordLargeScreenFeaturesInteractor import com.android.systemui.screencapture.record.largescreen.domain.interactor.ScreenshotInteractor import dagger.assisted.AssistedFactory import dagger.assisted.AssistedInject import kotlinx.coroutines.coroutineScope Loading @@ -41,7 +41,7 @@ enum class ScreenCaptureRegion { } /** Models UI for the Screen Capture UI for large screen devices. */ class ScreenCaptureViewModel class PreCaptureViewModel @AssistedInject constructor( @Application private val applicationContext: Context, Loading Loading @@ -154,6 +154,6 @@ constructor( @AssistedFactory interface Factory { fun create(): ScreenCaptureViewModel fun create(): PreCaptureViewModel } } Loading
packages/SystemUI/src/com/android/systemui/screencapture/domain/interactor/ScreenshotInteractor.kt→packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/domain/interactor/ScreenshotInteractor.kt +1 −1 Original line number Diff line number Diff line Loading @@ -14,7 +14,7 @@ * limitations under the License. */ package com.android.systemui.screencapture.domain.interactor package com.android.systemui.screencapture.record.largescreen.domain.interactor import android.graphics.Rect import android.os.Handler Loading
packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/ui/compose/LargeScreenCaptureRecordContent.kt +9 −3 Original line number Diff line number Diff line Loading @@ -16,15 +16,21 @@ package com.android.systemui.screencapture.record.largescreen.ui.compose import androidx.compose.material3.Text import androidx.compose.runtime.Composable import com.android.systemui.lifecycle.rememberViewModel import com.android.systemui.screencapture.common.ui.compose.ScreenCaptureContent import com.android.systemui.screencapture.record.largescreen.ui.viewmodel.PreCaptureViewModel import javax.inject.Inject class LargeScreenCaptureRecordContent @Inject constructor() : ScreenCaptureContent { class LargeScreenCaptureRecordContent @Inject constructor(private val viewModelFactory: PreCaptureViewModel.Factory) : ScreenCaptureContent { @Composable override fun Content() { Text("Not yet implemented") val viewModel: PreCaptureViewModel = rememberViewModel("PreCaptureViewModel") { viewModelFactory.create() } PreCaptureUI(viewModel = viewModel) } }
packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/ui/compose/PreCaptureToolbar.kt +2 −2 Original line number Diff line number Diff line Loading @@ -29,12 +29,12 @@ import com.android.systemui.common.ui.compose.Icon import com.android.systemui.screencapture.common.ui.compose.RadioButtonGroup import com.android.systemui.screencapture.common.ui.compose.RadioButtonGroupItem import com.android.systemui.screencapture.common.ui.compose.Toolbar import com.android.systemui.screencapture.ui.viewmodel.ScreenCaptureViewModel import com.android.systemui.screencapture.record.largescreen.ui.viewmodel.PreCaptureViewModel @OptIn(ExperimentalMaterial3ExpressiveApi::class) @Composable fun PreCaptureToolbar( viewModel: ScreenCaptureViewModel, viewModel: PreCaptureViewModel, expanded: Boolean, onCloseClick: () -> Unit, modifier: Modifier = Modifier, Loading
packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/ui/compose/PreCaptureUI.kt +4 −7 Original line number Diff line number Diff line Loading @@ -17,16 +17,13 @@ package com.android.systemui.screencapture.record.largescreen.ui.compose import androidx.compose.runtime.Composable import com.android.systemui.lifecycle.rememberViewModel import com.android.systemui.screencapture.ui.viewmodel.ScreenCaptureViewModel import com.android.systemui.screencapture.record.largescreen.ui.viewmodel.PreCaptureViewModel /** Main component for the pre-capture UI. */ @Composable fun PreCaptureUI(viewModelFactory: ScreenCaptureViewModel.Factory) { val viewModel: ScreenCaptureViewModel = rememberViewModel("ScreenCaptureViewModel") { viewModelFactory.create() } fun PreCaptureUI(viewModel: PreCaptureViewModel) { PreCaptureToolbar(viewModel = viewModel, expanded = true, onCloseClick = {}) // TODO: Add region box here // TODO(b/423967051) If the capture region is FULLSCREEN, show centered capture button. // TODO(b/422834671) If the capture region is PARTIAL, add region box here. }
packages/SystemUI/src/com/android/systemui/screencapture/ui/viewmodel/ScreenCaptureViewModel.kt→packages/SystemUI/src/com/android/systemui/screencapture/record/largescreen/ui/viewmodel/PreCaptureViewModel.kt +4 −4 Original line number Diff line number Diff line Loading @@ -14,14 +14,14 @@ * limitations under the License. */ package com.android.systemui.screencapture.ui.viewmodel package com.android.systemui.screencapture.record.largescreen.ui.viewmodel import android.content.Context import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.lifecycle.HydratedActivatable import com.android.systemui.res.R import com.android.systemui.screencapture.domain.interactor.ScreenshotInteractor import com.android.systemui.screencapture.record.largescreen.domain.interactor.ScreenCaptureRecordLargeScreenFeaturesInteractor import com.android.systemui.screencapture.record.largescreen.domain.interactor.ScreenshotInteractor import dagger.assisted.AssistedFactory import dagger.assisted.AssistedInject import kotlinx.coroutines.coroutineScope Loading @@ -41,7 +41,7 @@ enum class ScreenCaptureRegion { } /** Models UI for the Screen Capture UI for large screen devices. */ class ScreenCaptureViewModel class PreCaptureViewModel @AssistedInject constructor( @Application private val applicationContext: Context, Loading Loading @@ -154,6 +154,6 @@ constructor( @AssistedFactory interface Factory { fun create(): ScreenCaptureViewModel fun create(): PreCaptureViewModel } }