Use @DayNightPreviews to correctly render the PinIcon in dark mode (#795)

- Fixes rendering of `-night` resources in screenshot tests by overriding the `nightMode` with `paparazzi.unsafeUpdateConfig()`.
This commit is contained in:
Marco Romano
2023-07-07 16:35:34 +02:00
committed by GitHub
parent 850781444b
commit 220a6087f9
43 changed files with 77 additions and 96 deletions

View File

@@ -23,11 +23,10 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import io.element.android.libraries.designsystem.R
import io.element.android.libraries.designsystem.preview.ElementPreviewDark
import io.element.android.libraries.designsystem.preview.ElementPreviewLight
import io.element.android.libraries.designsystem.preview.DayNightPreviews
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.theme.components.Icon
import io.element.android.libraries.theme.ElementTheme
@@ -50,17 +49,8 @@ fun PinIcon(
}
}
@Preview
@DayNightPreviews
@Composable
fun PinIconLightPreview() =
ElementPreviewLight { ContentToPreview() }
@Preview
@Composable
fun PinIconDarkPreview() =
ElementPreviewDark { ContentToPreview() }
@Composable
private fun ContentToPreview() {
fun PinIconPreview() = ElementPreview {
PinIcon()
}

View File

@@ -73,7 +73,8 @@ import androidx.compose.ui.unit.dp
import io.element.android.libraries.designsystem.ElementTextStyles
import io.element.android.libraries.designsystem.VectorIcons
import io.element.android.libraries.designsystem.modifiers.applyIf
import io.element.android.libraries.designsystem.preview.ElementPreviewDark
import io.element.android.libraries.designsystem.preview.DayNightPreviews
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.preview.ElementPreviewLight
import io.element.android.libraries.designsystem.theme.components.Icon
import io.element.android.libraries.designsystem.theme.components.Surface
@@ -414,32 +415,9 @@ private fun BoxScope.SendButton(
}
}
@Preview
@DayNightPreviews
@Composable
internal fun TextComposerSimpleLightPreview() = ElementPreviewLight { SimpleContentToPreview() }
@Preview
@Composable
internal fun TextComposerSimpleDarkPreview() = ElementPreviewDark { SimpleContentToPreview() }
@Preview
@Composable
internal fun TextComposerEditLightPreview() = ElementPreviewLight { EditContentToPreview() }
@Preview
@Composable
internal fun TextComposerEditDarkPreview() = ElementPreviewDark { EditContentToPreview() }
@Preview
@Composable
internal fun TextComposerReplyLightPreview() = ElementPreviewLight { ReplyContentToPreview() }
@Preview
@Composable
internal fun TextComposerReplyDarkPreview() = ElementPreviewDark { ReplyContentToPreview() }
@Composable
private fun SimpleContentToPreview() {
fun TextComposerSimplePreview() = ElementPreview {
Column {
TextComposer(
onSendMessage = {},
@@ -468,8 +446,9 @@ private fun SimpleContentToPreview() {
}
}
@DayNightPreviews
@Composable
private fun EditContentToPreview() {
fun TextComposerEditPreview() = ElementPreview {
TextComposer(
onSendMessage = {},
onComposerTextChange = {},
@@ -480,8 +459,9 @@ private fun EditContentToPreview() {
)
}
@DayNightPreviews
@Composable
private fun ReplyContentToPreview() {
fun TextComposerReplyPreview() = ElementPreview {
Column {
TextComposer(
onSendMessage = {},