Kaaveh / ComposeNews

A playground about best practices, using updated libraries and solutions in the Android world!
Apache License 2.0
287 stars 49 forks source link

[refactor] use `DevicesPreviews` #123

Open Kaaveh opened 11 months ago

Kaaveh commented 11 months ago

In the MainActivity there is code:


@OptIn(ExperimentalMaterial3WindowSizeClassApi::class)
@Preview(showBackground = true, widthDp = 700, heightDp = 500)
@Composable
fun ComposeNewsAppPreviewTablet() {
    ComposeNewsTheme {
        ComposeNewsApp(
            windowSize = WindowSizeClass.calculateFromSize(DpSize(700.dp, 500.dp)),
            displayFeatures = emptyList(),
            uiState = MainContract.State(),
            closeDetailScreen = {},
        )
    }
}

@OptIn(ExperimentalMaterial3WindowSizeClassApi::class)
@Preview(showBackground = true, widthDp = 500, heightDp = 700)
@Composable
fun ComposeNewsAppPreviewTabletPortrait() {
    ComposeNewsTheme {
        ComposeNewsApp(
            windowSize = WindowSizeClass.calculateFromSize(DpSize(500.dp, 700.dp)),
            displayFeatures = emptyList(),
            uiState = MainContract.State(),
            closeDetailScreen = {},
        )
    }
}

@OptIn(ExperimentalMaterial3WindowSizeClassApi::class)
@Preview(showBackground = true, widthDp = 1100, heightDp = 600)
@Composable
fun ComposeNewsAppPreviewDesktop() {
    ComposeNewsTheme {
        ComposeNewsApp(
            windowSize = WindowSizeClass.calculateFromSize(DpSize(1100.dp, 600.dp)),
            displayFeatures = emptyList(),
            uiState = MainContract.State(),
            closeDetailScreen = {},
        )
    }
}

@OptIn(ExperimentalMaterial3WindowSizeClassApi::class)
@Preview(showBackground = true, widthDp = 600, heightDp = 1100)
@Composable
fun ComposeNewsAppPreviewDesktopPortrait() {
    ComposeNewsTheme {
        ComposeNewsApp(
            windowSize = WindowSizeClass.calculateFromSize(DpSize(600.dp, 1100.dp)),
            displayFeatures = emptyList(),
            uiState = MainContract.State(),
            closeDetailScreen = {},
        )
    }
}

Replace it with DevicesPreviews defined in designsystem module

mhmd-android commented 10 months ago

Hi dear Kaaveh, can I do this task?

Kaaveh commented 10 months ago

@mhmd-android Sure! I'll assign it to you! 🙌🏻