diff --git a/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/common/helper/EaseEmojiHelper.kt b/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/common/helper/EaseEmojiHelper.kt index c10cde3..5931926 100644 --- a/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/common/helper/EaseEmojiHelper.kt +++ b/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/common/helper/EaseEmojiHelper.kt @@ -119,6 +119,13 @@ object EaseEmojiHelper { private const val o_ee_49 = "[(Z)]" private const val o_ee_50 = "[-)]" private const val o_ee_51 = "[:-]" + private const val o_ee_52 = "☺" + private const val o_ee_53 = "\uD83E\uDD74" + private const val o_ee_54 = "\uD83D\uDE41" + private const val o_ee_55 = "\uD83D\uDE2D" + private const val o_ee_56 = "\uD83D\uDE10" + private const val o_ee_57 = "\uD83D\uDE07" + private const val o_ee_58 = "\uD83D\uDE2C" private val mapping: Map = mapOf( o_ee_1 to "☺️", @@ -172,6 +179,14 @@ object EaseEmojiHelper { o_ee_49 to "🎉", o_ee_50 to "🤢", o_ee_51 to "🙄", + o_ee_52 to "☺️", + o_ee_53 to "\uD83E\uDD74", + o_ee_54 to "\uD83D\uDE41", + o_ee_55 to "\uD83D\uDE2D", + o_ee_56 to "\uD83D\uDE10", + o_ee_57 to "\uD83D\uDE07", + o_ee_58 to "\uD83D\uDE2C", + ) private val emojiMap by lazy { mutableMapOf() } diff --git a/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/feature/contact/widgets/EaseContactListLayout.kt b/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/feature/contact/widgets/EaseContactListLayout.kt index 53fae07..78cc087 100644 --- a/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/feature/contact/widgets/EaseContactListLayout.kt +++ b/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/feature/contact/widgets/EaseContactListLayout.kt @@ -36,7 +36,7 @@ class EaseContactListLayout@JvmOverloads constructor( private val attrs: AttributeSet? = null, private val defStyleAttr: Int = 0 ): LinearLayout(context, attrs, defStyleAttr), IContactListLayout ,IEaseContactResultView { - + private var isFirstLoad = false /** * Refresh layout. */ @@ -254,7 +254,11 @@ class EaseContactListLayout@JvmOverloads constructor( override fun loadContactListSuccess(list: MutableList) { refreshLayout.finishRefresh() listAdapter?.setData(list.toMutableList()) - loadContactListener?.loadContactListSuccess(list) + listAdapter?.mData?.let { + if (it.size > 0){ + loadContactListener?.loadContactListSuccess(list) + } + } } override fun loadContactListFail(code: Int, error: String) { @@ -269,6 +273,10 @@ class EaseContactListLayout@JvmOverloads constructor( override fun fetchUserInfoByUserSuccess(users: List?) { if (!users.isNullOrEmpty()) { listAdapter?.notifyItemRangeChanged(0, listAdapter?.itemCount ?: 0) + if (!isFirstLoad){ + contactViewModel?.loadData() + isFirstLoad = true + } } } } \ No newline at end of file diff --git a/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/viewmodel/contacts/EaseContactListViewModel.kt b/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/viewmodel/contacts/EaseContactListViewModel.kt index 3ae7cf3..5b8dcc2 100644 --- a/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/viewmodel/contacts/EaseContactListViewModel.kt +++ b/ease-im-kit/src/main/kotlin/com/hyphenate/easeui/viewmodel/contacts/EaseContactListViewModel.kt @@ -28,8 +28,8 @@ import kotlinx.coroutines.flow.stateIn import kotlinx.coroutines.launch open class EaseContactListViewModel( - private val chatContactManager: ChatContactManager = ChatClient.getInstance().contactManager(), - private val stopTimeoutMillis: Long = 5000 + val chatContactManager: ChatContactManager = ChatClient.getInstance().contactManager(), + val stopTimeoutMillis: Long = 5000 ): EaseBaseViewModel(),IContactListRequest { val repository:EaseContactListRepository = EaseContactListRepository(chatContactManager)