1
- @file:OptIn(ExperimentalLayoutApi ::class )
2
-
3
1
package com.dede.android_eggs.views.main.compose
4
2
5
- import androidx.annotation.StringRes
6
3
import androidx.compose.foundation.clickable
7
4
import androidx.compose.foundation.interaction.MutableInteractionSource
8
- import androidx.compose.foundation.layout.Arrangement
9
5
import androidx.compose.foundation.layout.Column
10
- import androidx.compose.foundation.layout.ExperimentalLayoutApi
11
- import androidx.compose.foundation.layout.FlowRow
12
- import androidx.compose.foundation.layout.FlowRowScope
13
6
import androidx.compose.foundation.layout.Row
14
7
import androidx.compose.foundation.layout.Spacer
15
8
import androidx.compose.foundation.layout.fillMaxWidth
16
9
import androidx.compose.foundation.layout.height
17
10
import androidx.compose.foundation.layout.padding
18
11
import androidx.compose.foundation.layout.size
19
12
import androidx.compose.material3.MaterialTheme.colorScheme
20
- import androidx.compose.material3.MaterialTheme.shapes
21
13
import androidx.compose.material3.MaterialTheme.typography
22
14
import androidx.compose.material3.Text
23
15
import androidx.compose.material3.ripple
@@ -27,45 +19,22 @@ import androidx.compose.runtime.remember
27
19
import androidx.compose.runtime.setValue
28
20
import androidx.compose.ui.Alignment
29
21
import androidx.compose.ui.Modifier
30
- import androidx.compose.ui.draw.clip
31
- import androidx.compose.ui.platform.LocalContext
32
22
import androidx.compose.ui.res.stringResource
33
- import androidx.compose.ui.text.font.FontWeight
34
23
import androidx.compose.ui.tooling.preview.Preview
35
24
import androidx.compose.ui.unit.dp
36
25
import com.dede.android_eggs.BuildConfig
37
26
import com.dede.android_eggs.R
38
- import com.dede.android_eggs.util.CustomTabsBrowser
39
27
import com.dede.android_eggs.resources.R as StringsR
40
28
41
- @Composable
42
- private fun FlowRowScope.ChipItem2 (
43
- @StringRes textRes : Int ,
44
- onClick : () -> Unit ,
45
- ) {
46
- Text (
47
- text = stringResource(textRes),
48
- style = typography.titleSmall,
49
- color = colorScheme.secondary,
50
- modifier = Modifier
51
- .align(Alignment .CenterVertically )
52
- .clip(shapes.extraSmall)
53
- .clickable(onClick = onClick)
54
- .padding(horizontal = 2 .dp)
55
- )
56
- }
57
-
58
29
@Preview(showBackground = true )
59
30
@Composable
60
31
fun ProjectDescription () {
61
- val context = LocalContext .current
62
32
var konfettiState by LocalKonfettiState .current
63
33
64
34
Column (
65
35
modifier = Modifier
66
36
.fillMaxWidth()
67
37
.padding(horizontal = 18 .dp)
68
- .then(Modifier .padding(bottom = 20 .dp))
69
38
) {
70
39
Row (
71
40
verticalAlignment = Alignment .CenterVertically ,
@@ -105,29 +74,5 @@ fun ProjectDescription() {
105
74
style = typography.bodyMedium
106
75
)
107
76
Wavy (res = R .drawable.ic_wavy_line_1, true , colorScheme.secondaryContainer)
108
- FlowRow (
109
- modifier = Modifier .fillMaxWidth(),
110
- horizontalArrangement = Arrangement .spacedBy(12 .dp),
111
- verticalArrangement = Arrangement .spacedBy(8 .dp)
112
- ) {
113
- Text (
114
- text = stringResource(StringsR .string.app_name),
115
- style = typography.titleSmall,
116
- modifier = Modifier .align(Alignment .CenterVertically ),
117
- fontWeight = FontWeight .SemiBold
118
- )
119
- ChipItem2 (StringsR .string.label_privacy_policy) {
120
- CustomTabsBrowser .launchUrl(context, R .string.url_privacy)
121
- }
122
- ChipItem2 (StringsR .string.label_license) {
123
- CustomTabsBrowser .launchUrl(context, R .string.url_license)
124
- }
125
- ChipItem2 (StringsR .string.label_github) {
126
- CustomTabsBrowser .launchUrl(context, R .string.url_github)
127
- }
128
- ChipItem2 (StringsR .string.label_feedback) {
129
- CustomTabsBrowser .launchUrl(context, R .string.url_github_issues)
130
- }
131
- }
132
77
}
133
78
}
0 commit comments