mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2024-12-22 15:50:51 +01:00
Merge branch 'develop' into feature/ons/wait_members_before_sending_event
This commit is contained in:
commit
a755536a2f
@ -2,13 +2,14 @@ Changes in Element 1.0.14 (2020-XX-XX)
|
||||
===================================================
|
||||
|
||||
Features ✨:
|
||||
-
|
||||
- Enable url previews for notices (#2562)
|
||||
|
||||
Improvements 🙌:
|
||||
-
|
||||
|
||||
Bugfix 🐛:
|
||||
- Wait for all room members to be known before sending a message to a e2e room (#2518)
|
||||
- Url previews sometimes attached to wrong message (#2561)
|
||||
|
||||
Translations 🗣:
|
||||
-
|
||||
|
@ -32,7 +32,11 @@ internal class UrlsExtractor @Inject constructor() {
|
||||
return event.takeIf { it.getClearType() == EventType.MESSAGE }
|
||||
?.getClearContent()
|
||||
?.toModel<MessageContent>()
|
||||
?.takeIf { it.msgType == MessageType.MSGTYPE_TEXT || it.msgType == MessageType.MSGTYPE_EMOTE }
|
||||
?.takeIf {
|
||||
it.msgType == MessageType.MSGTYPE_TEXT
|
||||
|| it.msgType == MessageType.MSGTYPE_NOTICE
|
||||
|| it.msgType == MessageType.MSGTYPE_EMOTE
|
||||
}
|
||||
?.body
|
||||
?.let { urlRegex.findAll(it) }
|
||||
?.map { it.value }
|
||||
|
@ -114,6 +114,7 @@ abstract class VectorBaseBottomSheetDialogFragment<VB: ViewBinding> : BottomShee
|
||||
@CallSuper
|
||||
override fun onDestroyView() {
|
||||
uiDisposables.clear()
|
||||
_binding = null
|
||||
super.onDestroyView()
|
||||
}
|
||||
|
||||
|
@ -512,6 +512,9 @@ class MessageItemFactory @Inject constructor(
|
||||
|
||||
return MessageTextItem_()
|
||||
.leftGuideline(avatarSizeProvider.leftGuideline)
|
||||
.previewUrlRetriever(callback?.getPreviewUrlRetriever())
|
||||
.imageContentRenderer(imageContentRenderer)
|
||||
.previewUrlCallback(callback)
|
||||
.attributes(attributes)
|
||||
.message(message)
|
||||
.highlighted(highlight)
|
||||
|
@ -19,6 +19,7 @@ package im.vector.app.features.home.room.detail.timeline.item
|
||||
import android.text.method.MovementMethod
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import androidx.core.text.PrecomputedTextCompat
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.core.widget.TextViewCompat
|
||||
import com.airbnb.epoxy.EpoxyAttribute
|
||||
import com.airbnb.epoxy.EpoxyModelClass
|
||||
@ -60,7 +61,12 @@ abstract class MessageTextItem : AbsMessageItem<MessageTextItem.Holder>() {
|
||||
// Preview URL
|
||||
previewUrlViewUpdater.previewUrlView = holder.previewUrlView
|
||||
previewUrlViewUpdater.imageContentRenderer = imageContentRenderer
|
||||
previewUrlRetriever?.addListener(attributes.informationData.eventId, previewUrlViewUpdater)
|
||||
val safePreviewUrlRetriever = previewUrlRetriever
|
||||
if (safePreviewUrlRetriever == null) {
|
||||
holder.previewUrlView.isVisible = false
|
||||
} else {
|
||||
safePreviewUrlRetriever.addListener(attributes.informationData.eventId, previewUrlViewUpdater)
|
||||
}
|
||||
holder.previewUrlView.delegate = previewUrlCallback
|
||||
|
||||
if (useBigFont) {
|
||||
@ -106,7 +112,11 @@ abstract class MessageTextItem : AbsMessageItem<MessageTextItem.Holder>() {
|
||||
var imageContentRenderer: ImageContentRenderer? = null
|
||||
|
||||
override fun onStateUpdated(state: PreviewUrlUiState) {
|
||||
val safeImageContentRenderer = imageContentRenderer ?: return
|
||||
val safeImageContentRenderer = imageContentRenderer
|
||||
if (safeImageContentRenderer == null) {
|
||||
previewUrlView?.isVisible = false
|
||||
return
|
||||
}
|
||||
previewUrlView?.render(state, safeImageContentRenderer)
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user