Browse Source

Improve API of UnreadIndicatorAtom

jonny/proxy
Benoit Marty 1 year ago committed by Benoit Marty
parent
commit
8cb0e0808c
  1. 6
      features/invitelist/impl/src/main/kotlin/io/element/android/features/invitelist/impl/components/InviteSummaryRow.kt
  2. 1
      features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/InvitesEntryPointView.kt
  3. 5
      features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/components/RoomSummaryRow.kt
  4. 3
      libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/UnreadIndicatorAtom.kt

6
features/invitelist/impl/src/main/kotlin/io/element/android/features/invitelist/impl/components/InviteSummaryRow.kt

@ -32,7 +32,6 @@ import androidx.compose.material3.MaterialTheme @@ -32,7 +32,6 @@ import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.AnnotatedString
@ -56,8 +55,6 @@ import io.element.android.libraries.designsystem.theme.components.Button @@ -56,8 +55,6 @@ import io.element.android.libraries.designsystem.theme.components.Button
import io.element.android.libraries.designsystem.theme.components.OutlinedButton
import io.element.android.libraries.designsystem.theme.components.Text
import io.element.android.libraries.designsystem.theme.noFontPadding
import io.element.android.libraries.designsystem.theme.unreadIndicator
import io.element.android.libraries.theme.ElementTheme
import io.element.android.libraries.ui.strings.CommonStrings
private val minHeight = 72.dp
@ -161,8 +158,7 @@ internal fun DefaultInviteSummaryRow( @@ -161,8 +158,7 @@ internal fun DefaultInviteSummaryRow(
}
}
val unreadIndicatorColor = if (invite.isNew) ElementTheme.colors.unreadIndicator else Color.Transparent
UnreadIndicatorAtom(color = unreadIndicatorColor)
UnreadIndicatorAtom(isVisible = invite.isNew)
}
}

1
features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/InvitesEntryPointView.kt

@ -66,7 +66,6 @@ fun InvitesEntryPointView( @@ -66,7 +66,6 @@ fun InvitesEntryPointView(
if (state == InvitesState.NewInvites) {
Spacer(Modifier.width(8.dp))
UnreadIndicatorAtom()
}
}

5
features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/components/RoomSummaryRow.kt

@ -35,7 +35,6 @@ import androidx.compose.ui.Alignment @@ -35,7 +35,6 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.geometry.Rect
import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.Outline
import androidx.compose.ui.graphics.Path
import androidx.compose.ui.graphics.Shape
@ -170,11 +169,9 @@ private fun RowScope.LastMessageAndIndicatorRow(room: RoomListRoomSummary) { @@ -170,11 +169,9 @@ private fun RowScope.LastMessageAndIndicatorRow(room: RoomListRoomSummary) {
overflow = TextOverflow.Ellipsis
)
// Unread
val unreadIndicatorColor =
if (room.hasUnread) ElementTheme.colors.unreadIndicator else Color.Transparent
UnreadIndicatorAtom(
modifier = Modifier.padding(top = 3.dp),
color = unreadIndicatorColor,
isVisible = room.hasUnread,
)
}

3
libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/UnreadIndicatorAtom.kt

@ -37,12 +37,13 @@ fun UnreadIndicatorAtom( @@ -37,12 +37,13 @@ fun UnreadIndicatorAtom(
modifier: Modifier = Modifier,
size: Dp = 12.dp,
color: Color = ElementTheme.colors.unreadIndicator,
isVisible: Boolean = true,
) {
Box(
modifier = modifier
.size(size)
.clip(CircleShape)
.background(color)
.background(if (isVisible) color else Color.Transparent)
)
}

Loading…
Cancel
Save