From 02d4741bd7900a1ebccb656d257882483c3ab5c6 Mon Sep 17 00:00:00 2001 From: SessionHero01 <180888785+SessionHero01@users.noreply.github.com> Date: Thu, 31 Oct 2024 15:10:58 +1100 Subject: [PATCH] Feedback --- .../ui/DisappearingMessages.kt | 16 ++- .../groups/compose/CreateGroupScreen.kt | 40 +++++-- .../groups/compose/SelectContactsScreen.kt | 63 +++++------ .../securesms/home/HomeActivity.kt | 8 +- .../onboarding/loadaccount/LoadAccount.kt | 3 +- .../onboarding/pickname/PickDisplayName.kt | 3 +- .../thoughtcrime/securesms/ui/Components.kt | 104 ++++++++++-------- .../securesms/ui/theme/Dimensions.kt | 1 + app/src/main/res/drawable/ic_images.xml | 11 ++ app/src/main/res/drawable/ic_link_out.xml | 12 -- app/src/main/res/drawable/ic_media.xml | 18 --- .../res/layout/activity_conversation_v2.xml | 3 +- .../res/layout/view_pending_attachment.xml | 2 +- 13 files changed, 147 insertions(+), 137 deletions(-) create mode 100644 app/src/main/res/drawable/ic_images.xml delete mode 100644 app/src/main/res/drawable/ic_link_out.xml delete mode 100644 app/src/main/res/drawable/ic_media.xml diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/disappearingmessages/ui/DisappearingMessages.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/disappearingmessages/ui/DisappearingMessages.kt index b066a96cc7..15025a411a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/disappearingmessages/ui/DisappearingMessages.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/disappearingmessages/ui/DisappearingMessages.kt @@ -1,6 +1,5 @@ package org.thoughtcrime.securesms.conversation.disappearingmessages.ui -import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxWidth @@ -12,19 +11,19 @@ import androidx.compose.material3.Text 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.res.stringResource import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign import network.loki.messenger.R import network.loki.messenger.libsession_util.util.ExpiryMode +import org.thoughtcrime.securesms.ui.BottomFadingEdgeBox import org.thoughtcrime.securesms.ui.Callbacks import org.thoughtcrime.securesms.ui.NoOpCallbacks import org.thoughtcrime.securesms.ui.OptionsCard import org.thoughtcrime.securesms.ui.RadioOption import org.thoughtcrime.securesms.ui.components.PrimaryOutlineButton -import org.thoughtcrime.securesms.ui.components.SlimOutlineButton import org.thoughtcrime.securesms.ui.contentDescription -import org.thoughtcrime.securesms.ui.fadingEdges import org.thoughtcrime.securesms.ui.theme.LocalColors import org.thoughtcrime.securesms.ui.theme.LocalDimensions import org.thoughtcrime.securesms.ui.theme.LocalType @@ -38,15 +37,12 @@ fun DisappearingMessages( modifier: Modifier = Modifier, callbacks: ExpiryCallbacks = NoOpCallbacks ) { - val scrollState = rememberScrollState() - Column(modifier = modifier.padding(horizontal = LocalDimensions.current.spacing)) { - Box(modifier = Modifier.weight(1f)) { + BottomFadingEdgeBox(modifier = Modifier.weight(1f)) { bottomContentPadding -> Column( modifier = Modifier - .padding(vertical = LocalDimensions.current.spacing) - .verticalScroll(scrollState) - .fadingEdges(scrollState), + .verticalScroll(rememberScrollState()) + .padding(vertical = LocalDimensions.current.spacing), ) { state.cards.forEachIndexed { index, option -> OptionsCard(option, callbacks) @@ -69,6 +65,8 @@ fun DisappearingMessages( .fillMaxWidth() .padding(top = LocalDimensions.current.xsSpacing) ) + + Spacer(modifier = Modifier.height(bottomContentPadding)) } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/compose/CreateGroupScreen.kt b/app/src/main/java/org/thoughtcrime/securesms/groups/compose/CreateGroupScreen.kt index 9b138ca8cd..8fdf556628 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/compose/CreateGroupScreen.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/compose/CreateGroupScreen.kt @@ -6,6 +6,8 @@ import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.PaddingValues +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.widthIn import androidx.compose.foundation.lazy.LazyColumn @@ -17,8 +19,11 @@ import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.collectAsState import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.input.nestedscroll.nestedScroll import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalFocusManager +import androidx.compose.ui.platform.rememberNestedScrollInteropConnection import androidx.compose.ui.res.stringResource import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp @@ -28,6 +33,7 @@ import org.session.libsignal.utilities.AccountId import org.thoughtcrime.securesms.groups.ContactItem import org.thoughtcrime.securesms.groups.CreateGroupEvent import org.thoughtcrime.securesms.groups.CreateGroupViewModel +import org.thoughtcrime.securesms.ui.BottomFadingEdgeBox import org.thoughtcrime.securesms.ui.LoadingArcOr import org.thoughtcrime.securesms.ui.SearchBar import org.thoughtcrime.securesms.ui.components.BackAppBar @@ -104,11 +110,10 @@ fun CreateGroup( ) } ) { paddings -> - Box(modifier = modifier.padding(paddings),) { + Box(modifier = modifier.padding(paddings)) { Column( - modifier = modifier.padding(vertical = LocalDimensions.current.spacing), + modifier = modifier.padding(vertical = LocalDimensions.current.xsSpacing), horizontalAlignment = Alignment.CenterHorizontally, - verticalArrangement = Arrangement.spacedBy(LocalDimensions.current.spacing) ) { SessionOutlinedTextField( text = groupName, @@ -122,6 +127,8 @@ fun CreateGroup( onContinue = focusManager::clearFocus ) + Spacer(modifier = Modifier.height(LocalDimensions.current.spacing)) + SearchBar( query = contactSearchQuery, onValueChanged = onContactSearchQueryChanged, @@ -130,17 +137,30 @@ fun CreateGroup( enabled = !showLoading ) - LazyColumn(modifier = Modifier.weight(1f)) { - multiSelectMemberList( - contacts = items, - onContactItemClicked = onContactItemClicked, - enabled = !showLoading - ) + Spacer(modifier = Modifier.height(LocalDimensions.current.spacing)) + + BottomFadingEdgeBox( + modifier = Modifier.weight(1f) + .nestedScroll(rememberNestedScrollInteropConnection()), + fadingColor = LocalColors.current.backgroundSecondary + ) { bottomContentPadding -> + LazyColumn( + contentPadding = PaddingValues(bottom = bottomContentPadding)) { + multiSelectMemberList( + contacts = items, + onContactItemClicked = onContactItemClicked, + enabled = !showLoading + ) + } } + Spacer(modifier = Modifier.height(LocalDimensions.current.xsSpacing)) + PrimaryOutlineButton( onClick = onCreateClicked, - modifier = Modifier.widthIn(min = 120.dp) + modifier = Modifier + .padding(horizontal = LocalDimensions.current.spacing) + .widthIn(min = LocalDimensions.current.minButtonWidth) ) { LoadingArcOr(loading = showLoading) { Text(stringResource(R.string.create)) diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/compose/SelectContactsScreen.kt b/app/src/main/java/org/thoughtcrime/securesms/groups/compose/SelectContactsScreen.kt index 305eb6fc93..225a5585db 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/compose/SelectContactsScreen.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/compose/SelectContactsScreen.kt @@ -1,35 +1,35 @@ package org.thoughtcrime.securesms.groups.compose import androidx.annotation.StringRes -import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.defaultMinSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.rememberLazyListState import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.graphics.Brush.Companion.verticalGradient -import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.stringResource import androidx.compose.ui.tooling.preview.Preview -import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import kotlinx.serialization.Serializable import network.loki.messenger.R import org.session.libsignal.utilities.AccountId import org.thoughtcrime.securesms.groups.ContactItem import org.thoughtcrime.securesms.groups.SelectContactsViewModel +import org.thoughtcrime.securesms.ui.BottomFadingEdgeBox import org.thoughtcrime.securesms.ui.SearchBar import org.thoughtcrime.securesms.ui.components.BackAppBar import org.thoughtcrime.securesms.ui.components.PrimaryOutlineButton import org.thoughtcrime.securesms.ui.theme.LocalColors +import org.thoughtcrime.securesms.ui.theme.LocalDimensions import org.thoughtcrime.securesms.ui.theme.PreviewTheme @@ -67,7 +67,7 @@ fun SelectContacts( onBack: () -> Unit, @StringRes okButtonResId: Int = R.string.ok ) { - Column(verticalArrangement = Arrangement.spacedBy(16.dp)) { + Column(verticalArrangement = Arrangement.spacedBy(LocalDimensions.current.smallSpacing)) { BackAppBar( title = stringResource(id = R.string.contactSelect), onBack = onBack, @@ -78,32 +78,33 @@ fun SelectContacts( query = searchQuery, onValueChanged = onSearchQueryChanged, placeholder = stringResource(R.string.searchContacts), - modifier = Modifier.padding(horizontal = 16.dp), + modifier = Modifier.padding(horizontal = LocalDimensions.current.smallSpacing), backgroundColor = LocalColors.current.backgroundSecondary, ) - LazyColumn(modifier = Modifier.weight(1f)) { - multiSelectMemberList( - contacts = contacts, - onContactItemClicked = onContactItemClicked, - ) + val scrollState = rememberLazyListState() + + BottomFadingEdgeBox(modifier = Modifier.weight(1f)) { bottomContentPadding -> + LazyColumn( + state = scrollState, + contentPadding = PaddingValues(bottom = bottomContentPadding), + ) { + multiSelectMemberList( + contacts = contacts, + onContactItemClicked = onContactItemClicked, + ) + } } + Box( contentAlignment = Alignment.Center, - modifier = Modifier - .fillMaxWidth() - .background( - verticalGradient( - 0f to Color.Transparent, - 0.2f to LocalColors.current.background, - ) - ) + modifier = Modifier.fillMaxWidth() ) { PrimaryOutlineButton( onClick = onDoneClicked, modifier = Modifier - .padding(horizontal = 12.dp, vertical = 4.dp) - .defaultMinSize(minWidth = 128.dp), + .padding(vertical = LocalDimensions.current.spacing) + .defaultMinSize(minWidth = LocalDimensions.current.minButtonWidth), ) { Text( stringResource(id = okButtonResId) @@ -118,21 +119,17 @@ fun SelectContacts( @Composable private fun PreviewSelectContacts() { val random = "05abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234" + val contacts = List(20) { + ContactItem( + accountID = AccountId(random), + name = "User $it", + selected = it % 3 == 0, + ) + } PreviewTheme { SelectContacts( - contacts = listOf( - ContactItem( - accountID = AccountId(random), - name = "User 1", - selected = false, - ), - ContactItem( - accountID = AccountId(random), - name = "User 2", - selected = true, - ), - ), + contacts = contacts, onContactItemClicked = {}, searchQuery = "", onSearchQueryChanged = {}, diff --git a/app/src/main/java/org/thoughtcrime/securesms/home/HomeActivity.kt b/app/src/main/java/org/thoughtcrime/securesms/home/HomeActivity.kt index 34260d460f..c62d62cfed 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/home/HomeActivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/home/HomeActivity.kt @@ -648,12 +648,12 @@ class HomeActivity : PassphraseRequiredActionBarActivity(), .cancelPendingMessageSendJobs(threadID) // Delete the conversation - val v2OpenGroup = lokiThreadDatabase + val community = lokiThreadDatabase .getOpenGroupChat(threadID) - if (v2OpenGroup != null) { + if (community != null) { OpenGroupManager.delete( - v2OpenGroup.server, - v2OpenGroup.room, + community.server, + community.room, context ) } else { diff --git a/app/src/main/java/org/thoughtcrime/securesms/onboarding/loadaccount/LoadAccount.kt b/app/src/main/java/org/thoughtcrime/securesms/onboarding/loadaccount/LoadAccount.kt index 66614366fe..57cfb1dcab 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/onboarding/loadaccount/LoadAccount.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/onboarding/loadaccount/LoadAccount.kt @@ -28,6 +28,7 @@ import org.thoughtcrime.securesms.ui.components.QRScannerScreen import org.thoughtcrime.securesms.ui.components.SessionOutlinedTextField import org.thoughtcrime.securesms.ui.components.SessionTabRow import org.thoughtcrime.securesms.ui.contentDescription +import org.thoughtcrime.securesms.ui.qaTag import org.thoughtcrime.securesms.ui.theme.LocalDimensions import org.thoughtcrime.securesms.ui.theme.LocalType import org.thoughtcrime.securesms.ui.theme.PreviewTheme @@ -101,7 +102,7 @@ private fun RecoveryPassword(state: State, onChange: (String) -> Unit = {}, onCo SessionOutlinedTextField( text = state.recoveryPhrase, modifier = Modifier.fillMaxWidth() - .contentDescription(R.string.AccessibilityId_recoveryPasswordEnter), + .qaTag(stringResource(R.string.AccessibilityId_recoveryPasswordEnter)), placeholder = stringResource(R.string.recoveryPasswordEnter), onChange = onChange, onContinue = onContinue, diff --git a/app/src/main/java/org/thoughtcrime/securesms/onboarding/pickname/PickDisplayName.kt b/app/src/main/java/org/thoughtcrime/securesms/onboarding/pickname/PickDisplayName.kt index c04408645c..bdb66346e0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/onboarding/pickname/PickDisplayName.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/onboarding/pickname/PickDisplayName.kt @@ -21,6 +21,7 @@ import org.thoughtcrime.securesms.ui.theme.LocalDimensions import org.thoughtcrime.securesms.ui.theme.PreviewTheme import org.thoughtcrime.securesms.ui.components.SessionOutlinedTextField import org.thoughtcrime.securesms.ui.contentDescription +import org.thoughtcrime.securesms.ui.qaTag import org.thoughtcrime.securesms.ui.theme.LocalType @Preview @@ -67,7 +68,7 @@ internal fun PickDisplayName( SessionOutlinedTextField( text = state.displayName, - modifier = Modifier.fillMaxWidth().contentDescription(R.string.AccessibilityId_displayNameEnter), + modifier = Modifier.fillMaxWidth().qaTag(stringResource(R.string.AccessibilityId_displayNameEnter)), placeholder = stringResource(R.string.displayNameEnter), onChange = onChange, onContinue = onContinue, diff --git a/app/src/main/java/org/thoughtcrime/securesms/ui/Components.kt b/app/src/main/java/org/thoughtcrime/securesms/ui/Components.kt index b76bbcf755..21b67d43d8 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/ui/Components.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/ui/Components.kt @@ -6,25 +6,20 @@ import androidx.appcompat.content.res.AppCompatResources import androidx.compose.animation.AnimatedVisibility import androidx.compose.foundation.Canvas import androidx.compose.foundation.Image -import androidx.compose.foundation.ScrollState import androidx.compose.foundation.background import androidx.compose.foundation.border import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.BoxScope import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.IntrinsicSize import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.RowScope import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.aspectRatio -import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.heightIn import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size -import androidx.compose.foundation.layout.width import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentSize import androidx.compose.foundation.lazy.LazyColumn @@ -46,18 +41,15 @@ import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip -import androidx.compose.ui.draw.drawWithContent import androidx.compose.ui.geometry.Size -import androidx.compose.ui.graphics.BlendMode import androidx.compose.ui.graphics.Brush import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.ColorFilter import androidx.compose.ui.graphics.RectangleShape import androidx.compose.ui.graphics.SolidColor import androidx.compose.ui.graphics.StrokeCap +import androidx.compose.ui.graphics.TileMode import androidx.compose.ui.graphics.drawscope.Stroke -import androidx.compose.ui.graphics.graphicsLayer -import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalInspectionMode @@ -79,6 +71,7 @@ import org.session.libsession.utilities.Address import org.session.libsession.utilities.recipients.Recipient import org.thoughtcrime.securesms.components.ProfilePictureView import org.thoughtcrime.securesms.conversation.disappearingmessages.ui.OptionsCardData +import org.thoughtcrime.securesms.ui.components.PrimaryOutlineButton import org.thoughtcrime.securesms.ui.components.SmallCircularProgressIndicator import org.thoughtcrime.securesms.ui.components.TitledRadioButton import org.thoughtcrime.securesms.ui.theme.LocalColors @@ -86,7 +79,6 @@ import org.thoughtcrime.securesms.ui.theme.LocalDimensions import org.thoughtcrime.securesms.ui.theme.LocalType import org.thoughtcrime.securesms.ui.theme.PreviewTheme import org.thoughtcrime.securesms.ui.theme.transparentButtonColors -import kotlin.math.min import kotlin.math.roundToInt interface Callbacks { @@ -370,43 +362,58 @@ fun Modifier.contentDescription(text: String?): Modifier { return text?.let { semantics { contentDescription = it } } ?: this } -fun Modifier.fadingEdges( - scrollState: ScrollState, - topEdgeHeight: Dp = 0.dp, - bottomEdgeHeight: Dp = 20.dp -): Modifier = this.then( - Modifier - // adding layer fixes issue with blending gradient and content - .graphicsLayer { alpha = 0.99F } - .drawWithContent { - drawContent() +@Composable +fun BottomFadingEdgeBox( + modifier: Modifier = Modifier, + fadingEdgeHeight: Dp = LocalDimensions.current.spacing, + fadingColor: Color = LocalColors.current.background, + content: @Composable BoxScope.(bottomContentPadding: Dp) -> Unit, +) { + Box(modifier) { + this.content(fadingEdgeHeight) - val topColors = listOf(Color.Transparent, Color.Black) - val topStartY = scrollState.value.toFloat() - val topGradientHeight = min(topEdgeHeight.toPx(), topStartY) - if (topGradientHeight > 0f) drawRect( - brush = Brush.verticalGradient( - colors = topColors, - startY = topStartY, - endY = topStartY + topGradientHeight - ), - blendMode = BlendMode.DstIn - ) + Box( + modifier = Modifier + .fillMaxWidth() + .align(Alignment.BottomCenter) + .height(fadingEdgeHeight) + .background( + Brush.verticalGradient( + 0f to Color.Transparent, + 1f to fadingColor, + tileMode = TileMode.Repeated + ) + ) + ) + } +} - val bottomColors = listOf(Color.Black, Color.Transparent) - val bottomEndY = size.height - scrollState.maxValue + scrollState.value - val bottomGradientHeight = - min(bottomEdgeHeight.toPx(), scrollState.maxValue.toFloat() - scrollState.value) - if (bottomGradientHeight > 0f) drawRect( - brush = Brush.verticalGradient( - colors = bottomColors, - startY = bottomEndY - bottomGradientHeight, - endY = bottomEndY - ), - blendMode = BlendMode.DstIn - ) - } -) +@Preview +@Composable +private fun BottomFadingEdgeBoxPreview() { + Column(modifier = Modifier.background(LocalColors.current.background)) { + BottomFadingEdgeBox( + modifier = Modifier + .height(600.dp) + .background(LocalColors.current.backgroundSecondary), + content = { bottomContentPadding -> + LazyColumn(contentPadding = PaddingValues(bottom = bottomContentPadding)) { + items(200) { + Text("Item $it", + color = LocalColors.current.text, + style = LocalType.current.base) + } + } + }, + ) + + PrimaryOutlineButton( + modifier = Modifier + .align(Alignment.CenterHorizontally), + text = "Do stuff", onClick = {} + ) + } +} @Composable fun Divider(modifier: Modifier = Modifier, startIndent: Dp = 0.dp) { @@ -565,8 +572,11 @@ fun SearchBar( LocalColors.current.textSecondary ), modifier = Modifier - .padding(horizontal = 16.dp, vertical = 8.dp) - .size(24.dp) + .padding( + horizontal = LocalDimensions.current.smallSpacing, + vertical = LocalDimensions.current.xxsSpacing + ) + .size(LocalDimensions.current.iconMedium) ) Box(modifier = Modifier.weight(1f)) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/ui/theme/Dimensions.kt b/app/src/main/java/org/thoughtcrime/securesms/ui/theme/Dimensions.kt index 5e91b563c3..1697db558b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/ui/theme/Dimensions.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/ui/theme/Dimensions.kt @@ -18,6 +18,7 @@ data class Dimensions( val appBarHeight: Dp = 64.dp, val minItemButtonHeight: Dp = 50.dp, val minLargeItemButtonHeight: Dp = 60.dp, + val minButtonWidth: Dp = 160.dp, val indicatorHeight: Dp = 4.dp, val borderStroke: Dp = 1.dp, diff --git a/app/src/main/res/drawable/ic_images.xml b/app/src/main/res/drawable/ic_images.xml new file mode 100644 index 0000000000..4e8b9abe3e --- /dev/null +++ b/app/src/main/res/drawable/ic_images.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_link_out.xml b/app/src/main/res/drawable/ic_link_out.xml deleted file mode 100644 index 40b1e94c6b..0000000000 --- a/app/src/main/res/drawable/ic_link_out.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_media.xml b/app/src/main/res/drawable/ic_media.xml deleted file mode 100644 index 16b35db22a..0000000000 --- a/app/src/main/res/drawable/ic_media.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - diff --git a/app/src/main/res/layout/activity_conversation_v2.xml b/app/src/main/res/layout/activity_conversation_v2.xml index 0dec3592c6..11597ca1d2 100644 --- a/app/src/main/res/layout/activity_conversation_v2.xml +++ b/app/src/main/res/layout/activity_conversation_v2.xml @@ -276,6 +276,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center" + app:drawableTint="@color/black" app:layout_constraintTop_toBottomOf="@+id/outdatedDisappearingBanner" android:background="@color/outdated_client_banner_background_color" android:paddingVertical="@dimen/very_small_spacing" @@ -287,7 +288,7 @@ tools:text="@string/groupLegacyBanner" android:visibility="gone" tools:visibility="visible" - app:drawableEndCompat="@drawable/ic_link_out" /> + app:drawableEndCompat="@drawable/ic_external" />