Maintain send button tinting in media preview.

fork-5.53.8
Alex Hart 2022-07-25 13:18:09 -03:00 zatwierdzone przez Cody Henthorne
rodzic d6cc4acf5c
commit d40be0abf8
2 zmienionych plików z 11 dodań i 2 usunięć

Wyświetl plik

@ -84,6 +84,8 @@ import java.util.Locale;
import java.util.Map;
import java.util.Objects;
import io.reactivex.rxjava3.subjects.BehaviorSubject;
/**
* Activity for displaying media attachments in-app
*/
@ -397,6 +399,7 @@ public final class MediaPreviewActivity extends PassphraseRequiredActivity
if (mediaItem != null) {
MultiselectForwardFragmentArgs.create(
this,
threadId,
mediaItem.uri,
mediaItem.type,
args -> MultiselectForwardFragment.showBottomSheet(getSupportFragmentManager(), args)

Wyświetl plik

@ -15,6 +15,7 @@ import org.thoughtcrime.securesms.attachments.Attachment
import org.thoughtcrime.securesms.conversation.ConversationMessage
import org.thoughtcrime.securesms.conversation.mutiselect.Multiselect
import org.thoughtcrime.securesms.conversation.mutiselect.MultiselectPart
import org.thoughtcrime.securesms.database.SignalDatabase
import org.thoughtcrime.securesms.database.model.MmsMessageRecord
import org.thoughtcrime.securesms.mediasend.Media
import org.thoughtcrime.securesms.mms.PartAuthority
@ -50,7 +51,7 @@ data class MultiselectForwardFragmentArgs @JvmOverloads constructor(
companion object {
@JvmStatic
fun create(context: Context, mediaUri: Uri, mediaType: String, consumer: Consumer<MultiselectForwardFragmentArgs>) {
fun create(context: Context, threadId: Long, mediaUri: Uri, mediaType: String, consumer: Consumer<MultiselectForwardFragmentArgs>) {
SignalExecutors.BOUNDED.execute {
val mediaSize = MediaUtil.getMediaSize(context, mediaUri)
val isMmsSupported = Multiselect.isMmsSupported(context, mediaUri, mediaType, mediaSize)
@ -59,12 +60,17 @@ data class MultiselectForwardFragmentArgs @JvmOverloads constructor(
.withDataType(mediaType)
.build()
val sendButtonTint: Int = threadId.takeIf { it > 0 }
?.let { SignalDatabase.threads.getRecipientForThreadId(it) }?.chatColors?.asSingleColor()
?: -1
ThreadUtil.runOnMain {
consumer.accept(
MultiselectForwardFragmentArgs(
isMmsSupported,
listOf(multiShareArgs),
storySendRequirements = Stories.MediaTransform.SendRequirements.CAN_NOT_SEND
storySendRequirements = Stories.MediaTransform.SendRequirements.CAN_NOT_SEND,
sendButtonTint = sendButtonTint
)
)
}