|
|
@@ -30,6 +30,8 @@ class SessionTopComp(
|
|
|
private val profileViewModel by fastLazy { ProfileModule.getProfileViewModel(viewModelStoreOwner) }
|
|
|
private val followViewModel by fastLazy { ProfileModule.getFollowViewModel(viewModelStoreOwner) }
|
|
|
|
|
|
+ private var chatUserInfo: UserInfo? = null
|
|
|
+
|
|
|
override fun onCreate() {
|
|
|
super.onCreate()
|
|
|
initView()
|
|
|
@@ -69,7 +71,9 @@ class SessionTopComp(
|
|
|
|
|
|
private fun observeViewModel() {
|
|
|
profileViewModel?.userInfoLD?.observe(viewLifecycleOwner) {
|
|
|
+ this@SessionTopComp.chatUserInfo = it
|
|
|
updateUserInfo(it)
|
|
|
+ updateCallButton()
|
|
|
}
|
|
|
|
|
|
chatInfo?.let { chatInfo ->
|
|
|
@@ -100,6 +104,18 @@ class SessionTopComp(
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private fun updateCallButton() {
|
|
|
+ val chatUserInfo = this@SessionTopComp.chatUserInfo
|
|
|
+ if (chatUserInfo == null) {
|
|
|
+ topBar.btnCall.gone()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //通话按钮展示条件, 至少有一个陪玩师
|
|
|
+ val hasPlaymate =
|
|
|
+ chatUserInfo.isPlaymate() || ProfileModule.getMyUserInfo()?.isPlaymate() == true
|
|
|
+ topBar.btnCall.show(hasPlaymate)
|
|
|
+ }
|
|
|
+
|
|
|
private fun updateUserInfo(userInfo: UserInfo?) {
|
|
|
topBar.ivAvatar.setImageUrl(userInfo?.avatar)
|
|
|
topBar.tvUserName.text = userInfo?.nickName
|