-
-
Notifications
You must be signed in to change notification settings - Fork 2k
Expand file tree
/
Copy pathTaskSelectionAlertDialog.kt
More file actions
52 lines (50 loc) · 1.8 KB
/
TaskSelectionAlertDialog.kt
File metadata and controls
52 lines (50 loc) · 1.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/*
* Nextcloud - Android Client
*
* SPDX-FileCopyrightText: 2026 Alper Ozturk <alper.ozturk@nextcloud.com>
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
package com.nextcloud.ui.composeComponents.alertDialog
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.Dialog
import com.owncloud.android.lib.resources.assistant.v2.model.TaskTypeData
@Suppress("LongMethod")
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun TaskSelectionAlertDialog(taskTypes: List<TaskTypeData>, onDismiss: () -> Unit, onConfirm: (TaskTypeData) -> Unit) {
Dialog(onDismissRequest = onDismiss) {
Surface(
shape = MaterialTheme.shapes.extraLarge,
tonalElevation = 6.dp
) {
LazyColumn(
modifier = Modifier.padding(vertical = 16.dp)
) {
items(taskTypes) { task ->
TextButton(
onClick = {
onConfirm(task)
onDismiss()
},
modifier = Modifier.padding(horizontal = 8.dp)
) {
Text(
text = task.name,
style = MaterialTheme.typography.bodyLarge
)
}
}
}
}
}
}