Browse Source

Move and rename VectorIcon

jme/20-permission-management
Benoit Marty 2 years ago committed by Benoit Marty
parent
commit
9234f47ce3
  1. 5
      features/login/src/main/kotlin/io/element/android/features/login/changeserver/ChangeServerView.kt
  2. 5
      features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListView.kt
  3. 37
      libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/VectorIcon.kt
  4. 17
      libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/Icon.kt

5
features/login/src/main/kotlin/io/element/android/features/login/changeserver/ChangeServerView.kt

@ -48,12 +48,12 @@ import androidx.compose.ui.unit.sp @@ -48,12 +48,12 @@ import androidx.compose.ui.unit.sp
import io.element.android.features.login.R
import io.element.android.features.login.error.changeServerError
import io.element.android.libraries.architecture.Async
import io.element.android.libraries.designsystem.components.VectorIcon
import io.element.android.libraries.designsystem.components.form.textFieldState
import io.element.android.libraries.designsystem.preview.ElementPreviewDark
import io.element.android.libraries.designsystem.preview.ElementPreviewLight
import io.element.android.libraries.designsystem.theme.components.Button
import io.element.android.libraries.designsystem.theme.components.CircularProgressIndicator
import io.element.android.libraries.designsystem.theme.components.Icon
import io.element.android.libraries.designsystem.theme.components.OutlinedTextField
import io.element.android.libraries.designsystem.theme.components.Text
import io.element.android.libraries.testtags.TestTags
@ -91,12 +91,13 @@ fun ChangeServerView( @@ -91,12 +91,13 @@ fun ChangeServerView(
shape = RoundedCornerShape(32.dp)
)
) {
VectorIcon(
Icon(
modifier = Modifier
.align(Alignment.Center)
.size(width = 48.dp, height = 48.dp),
// TODO Update with design input
resourceId = R.drawable.ic_baseline_dataset_24,
contentDescription = "",
)
}
Text(

5
features/messages/src/main/kotlin/io/element/android/features/messages/actionlist/ActionListView.kt

@ -42,9 +42,9 @@ import androidx.compose.ui.tooling.preview.PreviewParameter @@ -42,9 +42,9 @@ import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import io.element.android.features.messages.actionlist.model.TimelineItemAction
import io.element.android.features.messages.timeline.model.TimelineItem
import io.element.android.libraries.designsystem.components.VectorIcon
import io.element.android.libraries.designsystem.preview.ElementPreviewDark
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.ModalBottomSheetLayout
import kotlinx.coroutines.flow.filter
import kotlinx.coroutines.launch
@ -121,8 +121,9 @@ private fun SheetContent( @@ -121,8 +121,9 @@ private fun SheetContent(
)
},
icon = {
VectorIcon(
Icon(
resourceId = action.icon,
contentDescription = "",
tint = if (action.destructive) MaterialTheme.colorScheme.error else MaterialTheme.colorScheme.primary,
)
}

37
libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/VectorIcon.kt

@ -1,37 +0,0 @@ @@ -1,37 +0,0 @@
/*
* Copyright (c) 2022 New Vector Ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.element.android.libraries.designsystem.components
import androidx.compose.material3.LocalContentColor
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.painterResource
@Composable
fun VectorIcon(
resourceId: Int,
modifier: Modifier = Modifier,
tint: Color = LocalContentColor.current,
) {
androidx.compose.material3.Icon(
painter = painterResource(id = resourceId),
contentDescription = null,
modifier = modifier,
tint = tint
)
}

17
libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/Icon.kt

@ -16,6 +16,7 @@ @@ -16,6 +16,7 @@
package io.element.android.libraries.designsystem.theme.components
import androidx.annotation.DrawableRes
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Close
import androidx.compose.material3.LocalContentColor
@ -24,6 +25,7 @@ import androidx.compose.ui.Modifier @@ -24,6 +25,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.ImageBitmap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.tooling.preview.Preview
import io.element.android.libraries.designsystem.preview.ElementPreviewDark
import io.element.android.libraries.designsystem.preview.ElementPreviewLight
@ -58,6 +60,21 @@ fun Icon( @@ -58,6 +60,21 @@ fun Icon(
)
}
@Composable
fun Icon(
@DrawableRes resourceId: Int,
contentDescription: String?,
modifier: Modifier = Modifier,
tint: Color = LocalContentColor.current,
) {
androidx.compose.material3.Icon(
painter = painterResource(id = resourceId),
contentDescription = contentDescription,
modifier = modifier,
tint = tint
)
}
@Preview
@Composable
internal fun IconImageVectorLightPreview() =

Loading…
Cancel
Save