kopia lustrzana https://github.com/ryukoposting/Signal-Android
Add proper media review send tint.
rodzic
d7d923c820
commit
5f7b07147f
|
@ -39,6 +39,7 @@ import org.thoughtcrime.securesms.mediasend.v2.MediaValidator
|
||||||
import org.thoughtcrime.securesms.mediasend.v2.stories.StoriesMultiselectForwardActivity
|
import org.thoughtcrime.securesms.mediasend.v2.stories.StoriesMultiselectForwardActivity
|
||||||
import org.thoughtcrime.securesms.mms.SentMediaQuality
|
import org.thoughtcrime.securesms.mms.SentMediaQuality
|
||||||
import org.thoughtcrime.securesms.permissions.Permissions
|
import org.thoughtcrime.securesms.permissions.Permissions
|
||||||
|
import org.thoughtcrime.securesms.recipients.Recipient
|
||||||
import org.thoughtcrime.securesms.util.LifecycleDisposable
|
import org.thoughtcrime.securesms.util.LifecycleDisposable
|
||||||
import org.thoughtcrime.securesms.util.MediaUtil
|
import org.thoughtcrime.securesms.util.MediaUtil
|
||||||
import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter
|
import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter
|
||||||
|
@ -61,7 +62,7 @@ class MediaReviewFragment : Fragment(R.layout.v2_media_review_fragment) {
|
||||||
private lateinit var cropAndRotateButton: View
|
private lateinit var cropAndRotateButton: View
|
||||||
private lateinit var qualityButton: ImageView
|
private lateinit var qualityButton: ImageView
|
||||||
private lateinit var saveButton: View
|
private lateinit var saveButton: View
|
||||||
private lateinit var sendButton: View
|
private lateinit var sendButton: ImageView
|
||||||
private lateinit var addMediaButton: View
|
private lateinit var addMediaButton: View
|
||||||
private lateinit var viewOnceButton: ViewSwitcher
|
private lateinit var viewOnceButton: ViewSwitcher
|
||||||
private lateinit var viewOnceMessage: TextView
|
private lateinit var viewOnceMessage: TextView
|
||||||
|
@ -219,7 +220,7 @@ class MediaReviewFragment : Fragment(R.layout.v2_media_review_fragment) {
|
||||||
state.selectedMedia.map { MediaReviewSelectedItem.Model(it, state.focusedMedia == it) } + MediaReviewAddItem.Model
|
state.selectedMedia.map { MediaReviewSelectedItem.Model(it, state.focusedMedia == it) } + MediaReviewAddItem.Model
|
||||||
)
|
)
|
||||||
|
|
||||||
presentSendButton(state.sendType)
|
presentSendButton(state.sendType, state.recipient)
|
||||||
presentPager(state)
|
presentPager(state)
|
||||||
presentAddMessageEntry(state.message)
|
presentAddMessageEntry(state.message)
|
||||||
presentImageQualityToggle(state.quality)
|
presentImageQualityToggle(state.quality)
|
||||||
|
@ -303,14 +304,26 @@ class MediaReviewFragment : Fragment(R.layout.v2_media_review_fragment) {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun presentSendButton(sendType: MessageSendType) {
|
private fun presentSendButton(sendType: MessageSendType, recipient: Recipient?) {
|
||||||
val sendButtonTint = if (sendType.usesSignalTransport) {
|
val sendButtonBackgroundTint = when {
|
||||||
R.color.signal_colorOnSecondaryContainer
|
recipient != null -> recipient.chatColors.asSingleColor()
|
||||||
} else {
|
sendType.usesSignalTransport -> ContextCompat.getColor(requireContext(), R.color.signal_colorOnSecondaryContainer)
|
||||||
R.color.core_grey_50
|
else -> ContextCompat.getColor(requireContext(), R.color.core_grey_50)
|
||||||
}
|
}
|
||||||
|
|
||||||
ViewCompat.setBackgroundTintList(sendButton, ColorStateList.valueOf(ContextCompat.getColor(requireContext(), sendButtonTint)))
|
val sendButtonForegroundDrawable = when {
|
||||||
|
recipient != null -> ContextCompat.getDrawable(requireContext(), R.drawable.ic_send_24)
|
||||||
|
else -> ContextCompat.getDrawable(requireContext(), R.drawable.ic_arrow_end_24)
|
||||||
|
}
|
||||||
|
|
||||||
|
val sendButtonForegroundTint = when {
|
||||||
|
recipient != null -> ContextCompat.getColor(requireContext(), R.color.signal_colorOnCustom)
|
||||||
|
else -> ContextCompat.getColor(requireContext(), R.color.signal_colorSecondaryContainer)
|
||||||
|
}
|
||||||
|
|
||||||
|
sendButton.setImageDrawable(sendButtonForegroundDrawable)
|
||||||
|
sendButton.setColorFilter(sendButtonForegroundTint)
|
||||||
|
ViewCompat.setBackgroundTintList(sendButton, ColorStateList.valueOf(sendButtonBackgroundTint))
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun presentPager(state: MediaSelectionState) {
|
private fun presentPager(state: MediaSelectionState) {
|
||||||
|
|
Ładowanie…
Reference in New Issue