File tree Expand file tree Collapse file tree 4 files changed +76
-2
lines changed
androidMain/kotlin/org/ooni/probe/ui/shared
commonMain/kotlin/org/ooni/probe/ui Expand file tree Collapse file tree 4 files changed +76
-2
lines changed Original file line number Diff line number Diff line change 1
1
package org.ooni.probe.ui.shared
2
2
3
- import android.app.Activity
4
3
import androidx.activity.compose.LocalActivity
5
4
import androidx.compose.material3.windowsizeclass.WindowSizeClass
6
5
import androidx.compose.material3.windowsizeclass.calculateWindowSizeClass
7
6
import androidx.compose.runtime.Composable
7
+ import androidx.compose.ui.unit.DpSize
8
+ import androidx.compose.ui.unit.dp
8
9
9
10
@Composable
10
- actual fun calculateWindowSizeClass (): WindowSizeClass = calculateWindowSizeClass(LocalActivity .current as Activity )
11
+ actual fun calculateWindowSizeClass (): WindowSizeClass =
12
+ LocalActivity .current
13
+ ?.let { calculateWindowSizeClass(it) }
14
+ // Generic default size
15
+ ? : WindowSizeClass .calculateFromSize(DpSize (360 .dp, 800 .dp))
Original file line number Diff line number Diff line change @@ -50,7 +50,9 @@ import ooniprobe.composeapp.generated.resources.ic_timer
50
50
import org.jetbrains.compose.resources.painterResource
51
51
import org.jetbrains.compose.resources.pluralStringResource
52
52
import org.jetbrains.compose.resources.stringResource
53
+ import org.jetbrains.compose.ui.tooling.preview.Preview
53
54
import org.ooni.probe.ui.shared.TopBar
55
+ import org.ooni.probe.ui.theme.AppTheme
54
56
55
57
@Composable
56
58
fun ChooseWebsitesScreen (
@@ -205,3 +207,14 @@ private fun BackConfirmationDialog(
205
207
},
206
208
)
207
209
}
210
+
211
+ @Preview
212
+ @Composable
213
+ fun ChooseWebsitesScreenPreview () {
214
+ AppTheme {
215
+ ChooseWebsitesScreen (
216
+ state = ChooseWebsitesViewModel .State (),
217
+ onEvent = {},
218
+ )
219
+ }
220
+ }
Original file line number Diff line number Diff line change @@ -195,3 +195,11 @@ fun DashboardScreenPreview() {
195
195
)
196
196
}
197
197
}
198
+
199
+ @Preview
200
+ @Composable
201
+ fun VpnWarningPreview () {
202
+ AppTheme {
203
+ VpnWarning ()
204
+ }
205
+ }
Original file line number Diff line number Diff line change @@ -33,10 +33,12 @@ import ooniprobe.composeapp.generated.resources.Results_UploadingMissing
33
33
import ooniprobe.composeapp.generated.resources.ic_timer
34
34
import org.jetbrains.compose.resources.painterResource
35
35
import org.jetbrains.compose.resources.stringResource
36
+ import org.jetbrains.compose.ui.tooling.preview.Preview
36
37
import org.ooni.probe.data.models.RunBackgroundState
37
38
import org.ooni.probe.domain.UploadMissingMeasurements
38
39
import org.ooni.probe.ui.shared.relativeDateTime
39
40
import org.ooni.probe.ui.shared.shortFormat
41
+ import org.ooni.probe.ui.theme.AppTheme
40
42
import org.ooni.probe.ui.theme.customColors
41
43
42
44
@Composable
@@ -230,3 +232,49 @@ private fun RunningTests(
230
232
}
231
233
}
232
234
}
235
+
236
+ @Preview
237
+ @Composable
238
+ fun RunBackgroundIdlePreview () {
239
+ AppTheme {
240
+ Idle (
241
+ state = RunBackgroundState .Idle (),
242
+ onEvent = {},
243
+ )
244
+ }
245
+ }
246
+
247
+ @Preview
248
+ @Composable
249
+ fun RunBackgroundUploadingMissingResultsPreview () {
250
+ AppTheme {
251
+ UploadingMissingResults (
252
+ state = RunBackgroundState .UploadingMissingResults (
253
+ UploadMissingMeasurements .State .Uploading (
254
+ uploaded = 2 ,
255
+ failedToUpload = 1 ,
256
+ total = 10 ,
257
+ ),
258
+ ),
259
+ )
260
+ }
261
+ }
262
+
263
+ @Preview
264
+ @Composable
265
+ fun RunBackgroundRunningTestsPreview () {
266
+ AppTheme {
267
+ RunningTests (
268
+ state = RunBackgroundState .RunningTests (),
269
+ onEvent = {},
270
+ )
271
+ }
272
+ }
273
+
274
+ @Preview
275
+ @Composable
276
+ fun RunBackgroundStoppingPreview () {
277
+ AppTheme {
278
+ Stopping ()
279
+ }
280
+ }
You can’t perform that action at this time.
0 commit comments