diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 80010bcb4..9f889b10e 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -109,7 +109,6 @@ dependencies { // Compose - Material Design 3 implementation(libs.compose.material3) - implementation(libs.compose.material.icons.extended) // Compose - Android Studio Preview support implementation(libs.compose.ui.tooling.preview) diff --git a/feature/permissions/build.gradle.kts b/feature/permissions/build.gradle.kts index d988b587a..6c977afeb 100644 --- a/feature/permissions/build.gradle.kts +++ b/feature/permissions/build.gradle.kts @@ -55,7 +55,6 @@ dependencies { // Compose - Material Design 3 implementation(libs.compose.material3) - implementation(libs.compose.material.icons.extended) // Compose - Android Studio Preview support implementation(libs.compose.ui.tooling.preview) diff --git a/feature/permissions/src/main/java/com/google/jetpackcamera/permissions/PermissionsEnums.kt b/feature/permissions/src/main/java/com/google/jetpackcamera/permissions/PermissionsEnums.kt index 35ffeb5d3..194ffb441 100644 --- a/feature/permissions/src/main/java/com/google/jetpackcamera/permissions/PermissionsEnums.kt +++ b/feature/permissions/src/main/java/com/google/jetpackcamera/permissions/PermissionsEnums.kt @@ -18,10 +18,6 @@ package com.google.jetpackcamera.permissions import android.Manifest import androidx.annotation.DrawableRes import androidx.annotation.StringRes -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.outlined.CameraAlt -import androidx.compose.material.icons.outlined.CreateNewFolder -import androidx.compose.material.icons.outlined.Mic import androidx.compose.runtime.Composable import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.graphics.vector.ImageVector @@ -90,9 +86,9 @@ enum class PermissionEnum : PermissionInfoProvider { override fun getTestTag(): String = CAMERA_PERMISSION_BUTTON - override fun getDrawableResId(): Int? = null + override fun getDrawableResId(): Int? = R.drawable.ic_camera_alt - override fun getImageVector(): ImageVector = Icons.Outlined.CameraAlt + override fun getImageVector(): ImageVector? = null override fun getPermissionTitleResId(): Int = R.string.camera_permission_screen_title @@ -113,9 +109,9 @@ enum class PermissionEnum : PermissionInfoProvider { override fun getTestTag(): String = RECORD_AUDIO_PERMISSION_BUTTON - override fun getDrawableResId(): Int? = null + override fun getDrawableResId(): Int? = R.drawable.ic_mic - override fun getImageVector(): ImageVector = Icons.Outlined.Mic + override fun getImageVector(): ImageVector? = null override fun getPermissionTitleResId(): Int = R.string.microphone_permission_screen_title @@ -135,9 +131,9 @@ enum class PermissionEnum : PermissionInfoProvider { override fun getTestTag(): String = WRITE_EXTERNAL_STORAGE_PERMISSION_BUTTON - override fun getDrawableResId(): Int? = null + override fun getDrawableResId(): Int? = R.drawable.ic_create_new_folder - override fun getImageVector(): ImageVector = Icons.Outlined.CreateNewFolder + override fun getImageVector(): ImageVector? = null override fun getPermissionTitleResId(): Int = R.string.write_storage_permission_screen_title diff --git a/feature/permissions/src/main/java/com/google/jetpackcamera/permissions/ui/PermissionsScreenComponents.kt b/feature/permissions/src/main/java/com/google/jetpackcamera/permissions/ui/PermissionsScreenComponents.kt index 136b47c6e..e18c241e1 100644 --- a/feature/permissions/src/main/java/com/google/jetpackcamera/permissions/ui/PermissionsScreenComponents.kt +++ b/feature/permissions/src/main/java/com/google/jetpackcamera/permissions/ui/PermissionsScreenComponents.kt @@ -37,7 +37,7 @@ import androidx.compose.runtime.LaunchedEffect import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color -import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.font.FontWeight @@ -85,7 +85,7 @@ fun PermissionTemplate( permissionState.launchPermissionRequest() } }, - imageVector = permissionEnum.getImageVector()!!, + painter = permissionEnum.getPainter(), iconAccessibilityText = stringResource(permissionEnum.getIconAccessibilityTextResId()), title = stringResource(permissionEnum.getPermissionTitleResId()), @@ -113,7 +113,7 @@ fun PermissionTemplate( modifier: Modifier = Modifier, testTag: String, onRequestPermission: () -> Unit, - imageVector: ImageVector, + painter: Painter, iconAccessibilityText: String, title: String, bodyText: String, @@ -129,7 +129,7 @@ fun PermissionTemplate( .height(IntrinsicSize.Min) .align(Alignment.CenterHorizontally) .testTag(testTag), - imageVector = imageVector, + painter = painter, accessibilityText = iconAccessibilityText ) Spacer(modifier = Modifier.fillMaxHeight(.1f)) @@ -165,7 +165,7 @@ private fun Preview_Camera_Permission_Page() { PermissionTemplate( onRequestPermission = { /*TODO*/ }, testTag = "", - imageVector = PermissionEnum.CAMERA.getImageVector()!!, + painter = PermissionEnum.CAMERA.getPainter(), iconAccessibilityText = "", title = stringResource(id = PermissionEnum.CAMERA.getPermissionTitleResId()), bodyText = stringResource(id = PermissionEnum.CAMERA.getPermissionBodyTextResId()), @@ -179,7 +179,7 @@ private fun Preview_Audio_Permission_Page() { PermissionTemplate( onRequestPermission = { /*TODO*/ }, testTag = "", - imageVector = PermissionEnum.RECORD_AUDIO.getImageVector()!!, + painter = PermissionEnum.RECORD_AUDIO.getPainter(), iconAccessibilityText = "", title = stringResource(id = PermissionEnum.RECORD_AUDIO.getPermissionTitleResId()), bodyText = stringResource(id = PermissionEnum.RECORD_AUDIO.getPermissionBodyTextResId()), @@ -191,17 +191,13 @@ private fun Preview_Audio_Permission_Page() { Permission UI Subcomponents */ @Composable -fun PermissionImage( - modifier: Modifier = Modifier, - imageVector: ImageVector, - accessibilityText: String -) { +fun PermissionImage(modifier: Modifier = Modifier, painter: Painter, accessibilityText: String) { Box(modifier = modifier) { Icon( modifier = Modifier .size(300.dp) .align(Alignment.BottomCenter), - imageVector = imageVector, + painter = painter, tint = MaterialTheme.colorScheme.onPrimary, contentDescription = accessibilityText ) diff --git a/feature/permissions/src/main/res/drawable/ic_camera_alt.xml b/feature/permissions/src/main/res/drawable/ic_camera_alt.xml new file mode 100644 index 000000000..5b60c17de --- /dev/null +++ b/feature/permissions/src/main/res/drawable/ic_camera_alt.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/feature/permissions/src/main/res/drawable/ic_create_new_folder.xml b/feature/permissions/src/main/res/drawable/ic_create_new_folder.xml new file mode 100644 index 000000000..d21e95d70 --- /dev/null +++ b/feature/permissions/src/main/res/drawable/ic_create_new_folder.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/feature/permissions/src/main/res/drawable/ic_mic.xml b/feature/permissions/src/main/res/drawable/ic_mic.xml new file mode 100644 index 000000000..8ebd5226a --- /dev/null +++ b/feature/permissions/src/main/res/drawable/ic_mic.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/feature/postcapture/build.gradle.kts b/feature/postcapture/build.gradle.kts index 0a1bca503..5d1513d0c 100644 --- a/feature/postcapture/build.gradle.kts +++ b/feature/postcapture/build.gradle.kts @@ -88,7 +88,6 @@ dependencies { // Compose - Material Design 3 implementation(libs.compose.material3) - implementation(libs.compose.material.icons.extended) // Compose - Android Studio Preview support implementation(libs.compose.ui.tooling.preview) diff --git a/feature/postcapture/src/main/java/com/google/jetpackcamera/feature/postcapture/ui/PostCaptureScreenComponents.kt b/feature/postcapture/src/main/java/com/google/jetpackcamera/feature/postcapture/ui/PostCaptureScreenComponents.kt index 02e244106..90e305880 100644 --- a/feature/postcapture/src/main/java/com/google/jetpackcamera/feature/postcapture/ui/PostCaptureScreenComponents.kt +++ b/feature/postcapture/src/main/java/com/google/jetpackcamera/feature/postcapture/ui/PostCaptureScreenComponents.kt @@ -20,11 +20,6 @@ import androidx.annotation.OptIn import androidx.compose.foundation.Image import androidx.compose.foundation.layout.size import androidx.compose.foundation.shape.CircleShape -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.Close -import androidx.compose.material.icons.filled.Delete -import androidx.compose.material.icons.filled.SaveAlt -import androidx.compose.material.icons.filled.Share import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi import androidx.compose.material3.Icon import androidx.compose.material3.IconButton @@ -39,6 +34,7 @@ import androidx.compose.ui.draw.shadow import androidx.compose.ui.graphics.asImageBitmap import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.platform.testTag +import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import androidx.media3.common.Player @@ -121,7 +117,7 @@ fun ExitPostCaptureButton(onExitPostCapture: () -> Unit, modifier: Modifier = Mo Icon( modifier = it, - imageVector = Icons.Default.Close, + painter = painterResource(id = R.drawable.ic_close), contentDescription = stringResource(R.string.button_exit_description) ) } @@ -143,7 +139,7 @@ fun ShareCurrentMediaButton( Icon( modifier = it, - imageVector = Icons.Default.Share, + painter = painterResource(id = R.drawable.ic_share), contentDescription = stringResource(R.string.button_share_media_description), tint = MaterialTheme.colorScheme.onSurface ) @@ -166,7 +162,7 @@ fun SaveCurrentMediaButton(onClick: () -> Unit, modifier: Modifier = Modifier) { Icon( modifier = it, - imageVector = Icons.Default.SaveAlt, + painter = painterResource(id = R.drawable.ic_save), contentDescription = stringResource(R.string.button_save_media_description) ) } @@ -185,7 +181,7 @@ fun DeleteCurrentMediaButton( ) { Icon( modifier = it, - imageVector = Icons.Default.Delete, + painter = painterResource(id = R.drawable.ic_delete), contentDescription = stringResource( R.string.button_delete_media_description ) diff --git a/feature/postcapture/src/main/res/drawable/ic_close.xml b/feature/postcapture/src/main/res/drawable/ic_close.xml new file mode 100644 index 000000000..0fc5d64b1 --- /dev/null +++ b/feature/postcapture/src/main/res/drawable/ic_close.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/feature/postcapture/src/main/res/drawable/ic_delete.xml b/feature/postcapture/src/main/res/drawable/ic_delete.xml new file mode 100644 index 000000000..16fc1bee7 --- /dev/null +++ b/feature/postcapture/src/main/res/drawable/ic_delete.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/feature/postcapture/src/main/res/drawable/ic_save.xml b/feature/postcapture/src/main/res/drawable/ic_save.xml new file mode 100644 index 000000000..4339a7e8d --- /dev/null +++ b/feature/postcapture/src/main/res/drawable/ic_save.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/feature/postcapture/src/main/res/drawable/ic_share.xml b/feature/postcapture/src/main/res/drawable/ic_share.xml new file mode 100644 index 000000000..48eb8aa2a --- /dev/null +++ b/feature/postcapture/src/main/res/drawable/ic_share.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/feature/preview/build.gradle.kts b/feature/preview/build.gradle.kts index 0e63717c7..3ab9173a1 100644 --- a/feature/preview/build.gradle.kts +++ b/feature/preview/build.gradle.kts @@ -88,7 +88,6 @@ dependencies { // Compose - Material Design 3 implementation(libs.compose.material3) - implementation(libs.compose.material.icons.extended) // Compose - Android Studio Preview support implementation(libs.compose.ui.tooling.preview) diff --git a/feature/settings/build.gradle.kts b/feature/settings/build.gradle.kts index 2b2ea90d6..2e4835edc 100644 --- a/feature/settings/build.gradle.kts +++ b/feature/settings/build.gradle.kts @@ -81,11 +81,6 @@ dependencies { // Compose - Material Design 3 implementation(libs.compose.material3) - //todo(): icons library is no longer being maintained. Migrate to material symbols. - implementation(libs.compose.material.icons.extended) - - //todo(): icons library is no longer being maintained. Migrate to material symbols. - implementation(libs.compose.material.icons.extended) // Compose - Android Studio Preview support implementation(libs.compose.ui.tooling.preview) diff --git a/feature/settings/src/main/java/com/google/jetpackcamera/settings/ui/SettingsComponents.kt b/feature/settings/src/main/java/com/google/jetpackcamera/settings/ui/SettingsComponents.kt index ad78ea908..d95b5a16b 100644 --- a/feature/settings/src/main/java/com/google/jetpackcamera/settings/ui/SettingsComponents.kt +++ b/feature/settings/src/main/java/com/google/jetpackcamera/settings/ui/SettingsComponents.kt @@ -26,8 +26,6 @@ import androidx.compose.foundation.selection.selectable import androidx.compose.foundation.selection.selectableGroup import androidx.compose.foundation.selection.toggleable import androidx.compose.foundation.verticalScroll -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.automirrored.filled.ArrowBack import androidx.compose.material3.AlertDialog import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.Icon @@ -49,6 +47,7 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.testTag +import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.semantics.Role import androidx.compose.ui.semantics.semantics @@ -116,8 +115,8 @@ fun SettingsPageHeader( onClick = { navBack() } ) { Icon( - Icons.AutoMirrored.Filled.ArrowBack, - stringResource(id = R.string.nav_back_accessibility) + painter = painterResource(id = R.drawable.ic_arrow_back), + contentDescription = stringResource(id = R.string.nav_back_accessibility) ) } }, diff --git a/feature/settings/src/main/res/drawable/ic_arrow_back.xml b/feature/settings/src/main/res/drawable/ic_arrow_back.xml new file mode 100644 index 000000000..920736aa1 --- /dev/null +++ b/feature/settings/src/main/res/drawable/ic_arrow_back.xml @@ -0,0 +1,27 @@ + + + + + diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3a48567b6..9e76a6caf 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -87,7 +87,6 @@ camera-compose = { module = "androidx.camera:camera-compose", version.ref = "and compose-bom = { module = "androidx.compose:compose-bom", version.ref = "composeBom" } compose-junit = { module = "androidx.compose.ui:ui-test-junit4" } compose-material3 = { module = "androidx.compose.material3:material3", version.ref = "composeMaterial" } -compose-material-icons-extended = { module = "androidx.compose.material:material-icons-extended" } compose-test-manifest = { module = "androidx.compose.ui:ui-test-manifest" } compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling" } compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview" } diff --git a/ui/components/capture/build.gradle.kts b/ui/components/capture/build.gradle.kts index 8e8b6faae..9bea5745f 100644 --- a/ui/components/capture/build.gradle.kts +++ b/ui/components/capture/build.gradle.kts @@ -69,7 +69,6 @@ dependencies { // Compose - Material Design 3 implementation(libs.compose.material3) - implementation(libs.compose.material.icons.extended) // Compose - Android Studio Preview support implementation(libs.compose.ui.tooling.preview) diff --git a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/CaptureButtonComponents.kt b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/CaptureButtonComponents.kt index 18fc38af3..5165a431b 100644 --- a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/CaptureButtonComponents.kt +++ b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/CaptureButtonComponents.kt @@ -39,9 +39,6 @@ import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width import androidx.compose.foundation.shape.CircleShape -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.Lock -import androidx.compose.material.icons.filled.LockOpen import androidx.compose.material3.Icon import androidx.compose.material3.LocalContentColor import androidx.compose.runtime.Composable @@ -67,6 +64,7 @@ import androidx.compose.ui.input.pointer.pointerInput import androidx.compose.ui.layout.onSizeChanged import androidx.compose.ui.platform.LocalView import androidx.compose.ui.platform.LocalViewConfiguration +import androidx.compose.ui.res.painterResource import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.dp @@ -533,10 +531,10 @@ private fun LockSwitchCaptureButtonNucleus( onToggleSwitchPosition() }, tint = Color.White, - imageVector = if (shouldBeLocked()) { - Icons.Default.Lock + painter = if (shouldBeLocked()) { + painterResource(R.drawable.ic_lock) } else { - Icons.Default.LockOpen + painterResource(R.drawable.ic_lock_open) }, contentDescription = null ) diff --git a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/CaptureScreenComponents.kt b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/CaptureScreenComponents.kt index a3bc22753..dda1439b2 100644 --- a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/CaptureScreenComponents.kt +++ b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/CaptureScreenComponents.kt @@ -55,17 +55,6 @@ import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width import androidx.compose.foundation.shape.CircleShape import androidx.compose.foundation.shape.RoundedCornerShape -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.CameraAlt -import androidx.compose.material.icons.filled.FlipCameraAndroid -import androidx.compose.material.icons.filled.Mic -import androidx.compose.material.icons.filled.MicOff -import androidx.compose.material.icons.filled.Pause -import androidx.compose.material.icons.filled.PlayArrow -import androidx.compose.material.icons.filled.VideoStable -import androidx.compose.material.icons.filled.Videocam -import androidx.compose.material.icons.outlined.CameraAlt -import androidx.compose.material.icons.outlined.Videocam import androidx.compose.material3.ButtonDefaults import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi import androidx.compose.material3.FilledIconToggleButton @@ -94,7 +83,6 @@ import androidx.compose.ui.draw.drawBehind import androidx.compose.ui.draw.rotate import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Matrix -import androidx.compose.ui.graphics.vector.rememberVectorPainter import androidx.compose.ui.input.pointer.pointerInput import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.testTag @@ -187,9 +175,11 @@ fun PauseResumeToggleButton( Icon( modifier = Modifier .size(ButtonDefaults.MediumIconSize), - imageVector = when (currentRecordingState) { - is VideoRecordingState.Active.Recording -> Icons.Filled.Pause - is VideoRecordingState.Active.Paused -> Icons.Filled.PlayArrow + painter = when (currentRecordingState) { + is VideoRecordingState.Active.Recording -> painterResource(R.drawable.ic_pause) + is VideoRecordingState.Active.Paused -> painterResource( + R.drawable.ic_play_arrow + ) }, contentDescription = stringResource(id = R.string.pause_resume_button_description) ) @@ -256,10 +246,10 @@ fun AmplitudeToggleButton( ) { Icon( modifier = Modifier.size(ButtonDefaults.MediumIconSize), - imageVector = if (currentUiState.value is AudioUiState.Enabled.On) { - Icons.Filled.Mic + painter = if (currentUiState.value is AudioUiState.Enabled.On) { + painterResource(R.drawable.ic_mic) } else { - Icons.Filled.MicOff + painterResource(R.drawable.ic_mic_off) }, contentDescription = stringResource(id = R.string.audio_visualizer_icon_description) ) @@ -323,16 +313,16 @@ fun CaptureModeToggleButton( leftIcon = if (uiState.selectedCaptureMode == CaptureMode.IMAGE_ONLY ) { - Icons.Filled.CameraAlt + R.drawable.ic_camera_alt_filled } else { - Icons.Outlined.CameraAlt + R.drawable.ic_camera_alt_outline }, rightIcon = if (uiState.selectedCaptureMode == CaptureMode.VIDEO_ONLY ) { - Icons.Filled.Videocam + R.drawable.ic_videocam_filled } else { - Icons.Outlined.Videocam + R.drawable.ic_videocam_outline }, leftIconDescription = if (enabled) { stringResource(id = R.string.capture_mode_image_capture_content_description) @@ -674,7 +664,7 @@ fun StabilizationIcon(stabilizationUiState: StabilizationUiState, modifier: Modi painterResource(R.drawable.video_stable_ois_filled_icon) StabilizationMode.ON -> - rememberVectorPainter(Icons.Filled.VideoStable) + painterResource(R.drawable.ic_video_stable) else -> TODO( @@ -826,7 +816,7 @@ fun FlipCameraButton( enabled = enabledCondition ) { Icon( - imageVector = Icons.Filled.FlipCameraAndroid, + painter = painterResource(R.drawable.ic_flip_camera_android), contentDescription = stringResource(id = R.string.flip_camera_icon_description), modifier = Modifier .size(IconButtonDefaults.extraLargeIconSize) diff --git a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/ToggleSwitch.kt b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/ToggleSwitch.kt index 7d65d6bf8..b5db95586 100644 --- a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/ToggleSwitch.kt +++ b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/ToggleSwitch.kt @@ -16,6 +16,7 @@ package com.google.jetpackcamera.ui.components.capture import android.content.res.Configuration +import androidx.annotation.DrawableRes import androidx.compose.animation.animateColorAsState import androidx.compose.animation.core.animateFloatAsState import androidx.compose.animation.core.tween @@ -25,11 +26,6 @@ import androidx.compose.foundation.gestures.detectTapGestures import androidx.compose.foundation.gestures.draggable import androidx.compose.foundation.gestures.rememberDraggableState import androidx.compose.foundation.layout.size -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.CameraAlt -import androidx.compose.material.icons.filled.Videocam -import androidx.compose.material.icons.outlined.CameraAlt -import androidx.compose.material.icons.outlined.Videocam import androidx.compose.material3.MaterialTheme import androidx.compose.material3.darkColorScheme import androidx.compose.runtime.Composable @@ -49,9 +45,9 @@ import androidx.compose.ui.graphics.drawscope.clipRect import androidx.compose.ui.graphics.drawscope.translate import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.graphics.vector.ImageVector -import androidx.compose.ui.graphics.vector.rememberVectorPainter import androidx.compose.ui.input.pointer.pointerInput import androidx.compose.ui.platform.LocalDensity +import androidx.compose.ui.res.painterResource import androidx.compose.ui.semantics.semantics import androidx.compose.ui.semantics.stateDescription import androidx.compose.ui.tooling.preview.Preview @@ -86,8 +82,8 @@ fun ToggleSwitch( trackColor: Color = Color.White.copy(alpha = TRACK_COLOR_ALPHA), thumbColor: Color = MaterialTheme.colorScheme.primaryFixedDim, disableColor: Color = MaterialTheme.colorScheme.onSurface, - leftIcon: ImageVector? = null, - rightIcon: ImageVector? = null, + @DrawableRes leftIcon: Int? = null, + @DrawableRes rightIcon: Int? = null, leftIconDescription: String = "leftIcon", rightIconDescription: String = "rightIcon", unselectedIconColor: Color = MaterialTheme.colorScheme.secondaryFixed, @@ -135,8 +131,8 @@ fun ToggleSwitch( ) // --- 4. Icon Painters --- - val offIconPainter = leftIcon?.let { rememberVectorPainter(image = leftIcon) } - val onIconPainter = rightIcon?.let { rememberVectorPainter(image = rightIcon) } + val offIconPainter = leftIcon?.let { painterResource(id = leftIcon) } + val onIconPainter = rightIcon?.let { painterResource(id = rightIcon) } // --- 5. Gesture Handlers --- val draggableState = rememberDraggableState { delta -> @@ -389,8 +385,8 @@ private fun Capture_ToggleSwitch_On_Disabled() { colorScheme = darkColorScheme(), content = { ToggleSwitch( - leftIcon = Icons.Outlined.CameraAlt, - rightIcon = Icons.Filled.Videocam, + leftIcon = R.drawable.ic_camera_alt_outline, + rightIcon = R.drawable.ic_videocam_filled, checked = true, onCheckedChange = {}, enabled = false @@ -406,8 +402,8 @@ private fun Capture_ToggleSwitch_Off_Disabled() { colorScheme = darkColorScheme(), content = { ToggleSwitch( - leftIcon = Icons.Filled.CameraAlt, - rightIcon = Icons.Outlined.Videocam, + leftIcon = R.drawable.ic_camera_alt_filled, + rightIcon = R.drawable.ic_videocam_outline, checked = false, onCheckedChange = {}, enabled = false @@ -423,8 +419,8 @@ private fun Capture_ToggleSwitch_On_Enabled() { colorScheme = darkColorScheme(), content = { ToggleSwitch( - leftIcon = Icons.Outlined.CameraAlt, - rightIcon = Icons.Filled.Videocam, + leftIcon = R.drawable.ic_camera_alt_outline, + rightIcon = R.drawable.ic_videocam_filled, checked = true, onCheckedChange = {}, enabled = true @@ -440,8 +436,8 @@ private fun Capture_ToggleSwitch_Off_Enabled() { colorScheme = darkColorScheme(), content = { ToggleSwitch( - leftIcon = Icons.Filled.CameraAlt, - rightIcon = Icons.Outlined.Videocam, + leftIcon = R.drawable.ic_camera_alt_filled, + rightIcon = R.drawable.ic_videocam_outline, checked = false, onCheckedChange = {}, enabled = true @@ -458,8 +454,8 @@ private fun Capture_Switch_Off_Enabled() { content = { ToggleSwitch( - leftIcon = Icons.Filled.CameraAlt, - rightIcon = Icons.Outlined.Videocam, + leftIcon = R.drawable.ic_camera_alt_filled, + rightIcon = R.drawable.ic_videocam_outline, checked = false, onCheckedChange = {}, enabled = true diff --git a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/debug/DebugOverlayComponents.kt b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/debug/DebugOverlayComponents.kt index 10c9ab4fc..8567c46aa 100644 --- a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/debug/DebugOverlayComponents.kt +++ b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/debug/DebugOverlayComponents.kt @@ -37,9 +37,6 @@ import androidx.compose.foundation.lazy.items import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.text.KeyboardOptions import androidx.compose.foundation.verticalScroll -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.Visibility -import androidx.compose.material.icons.filled.VisibilityOff import androidx.compose.material3.Button import androidx.compose.material3.FilledIconToggleButton import androidx.compose.material3.Icon @@ -57,6 +54,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.testTag +import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.semantics.semantics import androidx.compose.ui.semantics.stateDescription @@ -155,12 +153,12 @@ private fun ToggleVisibilityButton( ) { if (isHidingComponents) { Icon( - Icons.Default.VisibilityOff, + painter = painterResource(R.drawable.ic_visibility_off), contentDescription = null, modifier = Modifier.alpha(.5f) ) } else { - Icon(Icons.Default.Visibility, contentDescription = null) + Icon(painter = painterResource(R.drawable.ic_visibility), contentDescription = null) } } } diff --git a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/quicksettings/QuickSettingsEnums.kt b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/quicksettings/QuickSettingsEnums.kt index f6128e2a6..3c4c5701b 100644 --- a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/quicksettings/QuickSettingsEnums.kt +++ b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/quicksettings/QuickSettingsEnums.kt @@ -17,24 +17,8 @@ package com.google.jetpackcamera.ui.components.capture.quicksettings import androidx.annotation.DrawableRes import androidx.annotation.StringRes -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.AspectRatio -import androidx.compose.material.icons.filled.CameraAlt -import androidx.compose.material.icons.filled.Cameraswitch -import androidx.compose.material.icons.filled.FlashAuto -import androidx.compose.material.icons.filled.FlashOff -import androidx.compose.material.icons.filled.FlashOn -import androidx.compose.material.icons.filled.HdrOff -import androidx.compose.material.icons.filled.HdrOn -import androidx.compose.material.icons.filled.Nightlight -import androidx.compose.material.icons.filled.PhotoCameraFront -import androidx.compose.material.icons.filled.PictureInPicture -import androidx.compose.material.icons.filled.Videocam -import androidx.compose.material.icons.outlined.Nightlight import androidx.compose.runtime.Composable import androidx.compose.ui.graphics.painter.Painter -import androidx.compose.ui.graphics.vector.ImageVector -import androidx.compose.ui.graphics.vector.rememberVectorPainter import androidx.compose.ui.res.painterResource import com.google.jetpackcamera.ui.components.capture.R @@ -42,23 +26,12 @@ interface QuickSettingsEnum { @Composable fun getPainter(): Painter { val iconResId = getDrawableResId() - val iconVector = getImageVector() - require((iconResId == null).xor(iconVector == null)) { - "UI Item should have exactly one of iconResId or iconVector set." - } - return iconResId?.let { painterResource(it) } - ?: iconVector?.let { - rememberVectorPainter( - it - ) - }!! // !! allowed because we've checked null + return iconResId?.let { painterResource(it) }!! } @DrawableRes fun getDrawableResId(): Int? - fun getImageVector(): ImageVector? - @StringRes fun getTextResId(): Int @@ -68,14 +41,14 @@ interface QuickSettingsEnum { enum class CameraLensFace : QuickSettingsEnum { FRONT { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.Cameraswitch + + override fun getDrawableResId() = R.drawable.ic_cameraswitch override fun getTextResId() = R.string.quick_settings_front_camera_text override fun getDescriptionResId() = R.string.quick_settings_front_camera_description }, BACK { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.Cameraswitch + + override fun getDrawableResId() = R.drawable.ic_cameraswitch override fun getTextResId() = R.string.quick_settings_back_camera_text override fun getDescriptionResId() = R.string.quick_settings_back_camera_description } @@ -83,32 +56,32 @@ enum class CameraLensFace : QuickSettingsEnum { enum class CameraFlashMode : QuickSettingsEnum { OFF { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.FlashOff + + override fun getDrawableResId() = R.drawable.ic_flash_off override fun getTextResId() = R.string.quick_settings_flash_off override fun getDescriptionResId() = R.string.quick_settings_flash_off_description }, AUTO { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.FlashAuto + + override fun getDrawableResId() = R.drawable.ic_flash_auto_filled override fun getTextResId() = R.string.quick_settings_flash_auto override fun getDescriptionResId() = R.string.quick_settings_flash_auto_description }, ON { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.FlashOn + + override fun getDrawableResId() = R.drawable.ic_flash_on_filled override fun getTextResId() = R.string.quick_settings_flash_on override fun getDescriptionResId() = R.string.quick_settings_flash_on_description }, LOW_LIGHT_BOOST_INACTIVE { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Outlined.Nightlight + + override fun getDrawableResId() = R.drawable.ic_nightlight_outline override fun getTextResId() = R.string.quick_settings_flash_llb override fun getDescriptionResId() = R.string.quick_settings_flash_llb_description }, LOW_LIGHT_BOOST_ACTIVE { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.Nightlight + + override fun getDrawableResId() = R.drawable.ic_nightlight_filled override fun getTextResId() = R.string.quick_settings_flash_llb override fun getDescriptionResId() = R.string.quick_settings_flash_llb_description } @@ -116,20 +89,20 @@ enum class CameraFlashMode : QuickSettingsEnum { enum class CameraAspectRatio : QuickSettingsEnum { THREE_FOUR { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.AspectRatio + + override fun getDrawableResId() = R.drawable.ic_aspect_ratio override fun getTextResId() = R.string.quick_settings_aspect_ratio_3_4 override fun getDescriptionResId() = R.string.quick_settings_aspect_ratio_3_4_description }, NINE_SIXTEEN { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.AspectRatio + + override fun getDrawableResId() = R.drawable.ic_aspect_ratio override fun getTextResId() = R.string.quick_settings_aspect_ratio_9_16 override fun getDescriptionResId() = R.string.quick_settings_aspect_ratio_9_16_description }, ONE_ONE { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.AspectRatio + + override fun getDrawableResId() = R.drawable.ic_aspect_ratio override fun getTextResId() = R.string.quick_settings_aspect_ratio_1_1 override fun getDescriptionResId() = R.string.quick_settings_aspect_ratio_1_1_description } @@ -138,13 +111,13 @@ enum class CameraAspectRatio : QuickSettingsEnum { enum class CameraStreamConfig : QuickSettingsEnum { MULTI_STREAM { override fun getDrawableResId() = R.drawable.multi_stream_icon - override fun getImageVector() = null // this icon is not available + override fun getTextResId() = R.string.quick_settings_stream_config_multi override fun getDescriptionResId() = R.string.quick_settings_stream_config_multi_description }, SINGLE_STREAM { override fun getDrawableResId() = R.drawable.single_stream_capture_icon - override fun getImageVector() = null // this icon is not available + override fun getTextResId() = R.string.quick_settings_stream_config_single override fun getDescriptionResId() = R.string.quick_settings_stream_config_single_description @@ -153,14 +126,14 @@ enum class CameraStreamConfig : QuickSettingsEnum { enum class CameraDynamicRange : QuickSettingsEnum { SDR { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.HdrOff + + override fun getDrawableResId() = R.drawable.ic_hdr_off override fun getTextResId() = R.string.quick_settings_dynamic_range_sdr override fun getDescriptionResId() = R.string.quick_settings_dynamic_range_sdr_description }, HDR { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.HdrOn + + override fun getDrawableResId() = R.drawable.ic_hdr_on override fun getTextResId() = R.string.quick_settings_dynamic_range_hdr override fun getDescriptionResId() = R.string.quick_settings_dynamic_range_hdr_description } @@ -168,9 +141,8 @@ enum class CameraDynamicRange : QuickSettingsEnum { enum class CameraCaptureMode : QuickSettingsEnum { STANDARD { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Default.PhotoCameraFront + override fun getDrawableResId() = R.drawable.ic_photo_camera_front override fun getTextResId() = R.string.quick_settings_text_capture_mode_standard @@ -178,9 +150,8 @@ enum class CameraCaptureMode : QuickSettingsEnum { R.string.quick_settings_description_capture_mode_standard }, VIDEO_ONLY { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Default.Videocam + override fun getDrawableResId() = R.drawable.ic_videocam_outline override fun getTextResId() = R.string.quick_settings_text_capture_mode_video_only @@ -188,9 +159,8 @@ enum class CameraCaptureMode : QuickSettingsEnum { R.string.quick_settings_description_capture_mode_video_only }, IMAGE_ONLY { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Default.CameraAlt + override fun getDrawableResId() = R.drawable.ic_camera_alt_outline override fun getTextResId() = R.string.quick_settings_text_capture_mode_image_only @@ -201,14 +171,14 @@ enum class CameraCaptureMode : QuickSettingsEnum { enum class CameraConcurrentCameraMode : QuickSettingsEnum { OFF { override fun getDrawableResId() = R.drawable.picture_in_picture_off_icon - override fun getImageVector() = null + override fun getTextResId() = R.string.quick_settings_text_concurrent_camera_off override fun getDescriptionResId() = R.string.quick_settings_description_concurrent_camera_off }, DUAL { - override fun getDrawableResId() = null - override fun getImageVector() = Icons.Filled.PictureInPicture + + override fun getDrawableResId() = R.drawable.ic_picture_in_picture override fun getTextResId() = R.string.quick_settings_text_concurrent_camera_dual override fun getDescriptionResId() = R.string.quick_settings_description_concurrent_camera_dual diff --git a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/quicksettings/ui/QuickSettingsComponents.kt b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/quicksettings/ui/QuickSettingsComponents.kt index 6b0eec752..de1613c65 100644 --- a/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/quicksettings/ui/QuickSettingsComponents.kt +++ b/ui/components/capture/src/main/java/com/google/jetpackcamera/ui/components/capture/quicksettings/ui/QuickSettingsComponents.kt @@ -34,9 +34,6 @@ import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.grid.GridCells import androidx.compose.foundation.lazy.grid.LazyVerticalGrid import androidx.compose.foundation.lazy.itemsIndexed -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.Close -import androidx.compose.material.icons.filled.MoreHoriz import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi import androidx.compose.material3.FilledIconButton @@ -56,7 +53,6 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.painter.Painter -import androidx.compose.ui.graphics.vector.rememberVectorPainter import androidx.compose.ui.platform.LocalConfiguration import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.dimensionResource @@ -236,7 +232,7 @@ fun QuickNavSettings(onNavigateToSettings: () -> Unit, modifier: Modifier = Modi onClick = onNavigateToSettings, text = stringResource(R.string.quick_settings_more_text), accessibilityText = stringResource(R.string.quick_settings_more_description), - painter = rememberVectorPainter(Icons.Filled.MoreHoriz), + painter = painterResource(R.drawable.ic_more_horiz), modifier = modifier.testTag(SETTINGS_BUTTON) ) } @@ -658,7 +654,7 @@ private fun CloseExpandedSettingsButton(onUnFocus: () -> Unit, modifier: Modifie onClick = onUnFocus ) { Icon( - imageVector = Icons.Default.Close, + painter = painterResource(R.drawable.ic_close), contentDescription = stringResource( R.string.quick_settings_btn_close_expanded_settings_description ) diff --git a/ui/components/capture/src/main/res/drawable/ic_aspect_ratio.xml b/ui/components/capture/src/main/res/drawable/ic_aspect_ratio.xml new file mode 100644 index 000000000..8f506d85c --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_aspect_ratio.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_camera_alt_filled.xml b/ui/components/capture/src/main/res/drawable/ic_camera_alt_filled.xml new file mode 100644 index 000000000..5641e23ab --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_camera_alt_filled.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_camera_alt_outline.xml b/ui/components/capture/src/main/res/drawable/ic_camera_alt_outline.xml new file mode 100644 index 000000000..5b60c17de --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_camera_alt_outline.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_cameraswitch.xml b/ui/components/capture/src/main/res/drawable/ic_cameraswitch.xml new file mode 100644 index 000000000..3af767eff --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_cameraswitch.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_close.xml b/ui/components/capture/src/main/res/drawable/ic_close.xml new file mode 100644 index 000000000..6aec13d2e --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_close.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_flash_auto_filled.xml b/ui/components/capture/src/main/res/drawable/ic_flash_auto_filled.xml new file mode 100644 index 000000000..6ccd91823 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_flash_auto_filled.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_flash_auto_outline.xml b/ui/components/capture/src/main/res/drawable/ic_flash_auto_outline.xml new file mode 100644 index 000000000..274cf21d3 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_flash_auto_outline.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_flash_off.xml b/ui/components/capture/src/main/res/drawable/ic_flash_off.xml new file mode 100644 index 000000000..0aae7b38d --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_flash_off.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_flash_on_filled.xml b/ui/components/capture/src/main/res/drawable/ic_flash_on_filled.xml new file mode 100644 index 000000000..8ae05c681 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_flash_on_filled.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_flash_on_outline.xml b/ui/components/capture/src/main/res/drawable/ic_flash_on_outline.xml new file mode 100644 index 000000000..88b66a1e1 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_flash_on_outline.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_flip_camera_android.xml b/ui/components/capture/src/main/res/drawable/ic_flip_camera_android.xml new file mode 100644 index 000000000..0f3193cdf --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_flip_camera_android.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_hdr_off.xml b/ui/components/capture/src/main/res/drawable/ic_hdr_off.xml new file mode 100644 index 000000000..fa753c5a2 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_hdr_off.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_hdr_on.xml b/ui/components/capture/src/main/res/drawable/ic_hdr_on.xml new file mode 100644 index 000000000..2d5aa6718 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_hdr_on.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_lock.xml b/ui/components/capture/src/main/res/drawable/ic_lock.xml new file mode 100644 index 000000000..5b7ef95d0 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_lock.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_lock_open.xml b/ui/components/capture/src/main/res/drawable/ic_lock_open.xml new file mode 100644 index 000000000..a5c429bc1 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_lock_open.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_mic.xml b/ui/components/capture/src/main/res/drawable/ic_mic.xml new file mode 100644 index 000000000..8ebd5226a --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_mic.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_mic_off.xml b/ui/components/capture/src/main/res/drawable/ic_mic_off.xml new file mode 100644 index 000000000..5e58804e9 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_mic_off.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_more_horiz.xml b/ui/components/capture/src/main/res/drawable/ic_more_horiz.xml new file mode 100644 index 000000000..cbf1b7dea --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_more_horiz.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_nightlight_filled.xml b/ui/components/capture/src/main/res/drawable/ic_nightlight_filled.xml new file mode 100644 index 000000000..09825b4fe --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_nightlight_filled.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_nightlight_outline.xml b/ui/components/capture/src/main/res/drawable/ic_nightlight_outline.xml new file mode 100644 index 000000000..6cb1f12d0 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_nightlight_outline.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_pause.xml b/ui/components/capture/src/main/res/drawable/ic_pause.xml new file mode 100644 index 000000000..4d3131bcf --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_pause.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_photo_camera_front.xml b/ui/components/capture/src/main/res/drawable/ic_photo_camera_front.xml new file mode 100644 index 000000000..d3b5ff4e1 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_photo_camera_front.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_picture_in_picture.xml b/ui/components/capture/src/main/res/drawable/ic_picture_in_picture.xml new file mode 100644 index 000000000..022dc4f40 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_picture_in_picture.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_play_arrow.xml b/ui/components/capture/src/main/res/drawable/ic_play_arrow.xml new file mode 100644 index 000000000..bfea655e5 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_play_arrow.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_video_stable.xml b/ui/components/capture/src/main/res/drawable/ic_video_stable.xml new file mode 100644 index 000000000..6b53f5a7a --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_video_stable.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_videocam_filled.xml b/ui/components/capture/src/main/res/drawable/ic_videocam_filled.xml new file mode 100644 index 000000000..eaf0c755b --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_videocam_filled.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_videocam_outline.xml b/ui/components/capture/src/main/res/drawable/ic_videocam_outline.xml new file mode 100644 index 000000000..a66239cdb --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_videocam_outline.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_visibility.xml b/ui/components/capture/src/main/res/drawable/ic_visibility.xml new file mode 100644 index 000000000..5ce61ed23 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_visibility.xml @@ -0,0 +1,26 @@ + + + + + diff --git a/ui/components/capture/src/main/res/drawable/ic_visibility_off.xml b/ui/components/capture/src/main/res/drawable/ic_visibility_off.xml new file mode 100644 index 000000000..1c7df3bd9 --- /dev/null +++ b/ui/components/capture/src/main/res/drawable/ic_visibility_off.xml @@ -0,0 +1,26 @@ + + + + +