|
|
@@ -6,6 +6,7 @@ import android.text.Editable
|
|
|
import android.text.TextWatcher
|
|
|
import android.view.KeyEvent
|
|
|
import android.view.MotionEvent
|
|
|
+import android.view.View
|
|
|
import android.view.inputmethod.EditorInfo
|
|
|
import android.widget.TextView
|
|
|
import android.widget.TextView.OnEditorActionListener
|
|
|
@@ -32,6 +33,7 @@ import com.adealink.weparty.im.session.comp.input.InputAction
|
|
|
import com.adealink.weparty.im.session.comp.input.InputState
|
|
|
import com.adealink.weparty.im.session.comp.viewmodel.SessionInputViewModel
|
|
|
import com.adealink.weparty.module.im.data.TAG_IM_SESSION
|
|
|
+import com.adealink.weparty.util.isMultiWindowMode
|
|
|
import com.qmuiteam.qmui.widget.util.QMUIKeyboardHelper
|
|
|
import com.tencent.qcloud.tuikit.timcommon.bean.ChatFace
|
|
|
import com.tencent.qcloud.tuikit.timcommon.component.face.FaceManager
|
|
|
@@ -156,6 +158,17 @@ class SessionBottomInputComp(
|
|
|
return true
|
|
|
}
|
|
|
})
|
|
|
+ inputBar.etInputMessage.onFocusChangeListener = object : View.OnFocusChangeListener {
|
|
|
+ override fun onFocusChange(v: View?, hasFocus: Boolean) {
|
|
|
+ //多窗口模式
|
|
|
+ if (activity.isMultiWindowMode()) {
|
|
|
+ if (hasFocus) {
|
|
|
+ //获取焦点
|
|
|
+ sessionInputViewModel.execute(InputAction.CLICK_INPUT)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
inputBar.etInputMessage.addTextChangedListener(object : TextWatcher {
|
|
|
override fun beforeTextChanged(
|
|
|
s: CharSequence?,
|
|
|
@@ -319,8 +332,9 @@ class SessionBottomInputComp(
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- sessionInputViewModel.inputVisibleLD.observe(viewLifecycleOwner) { visible ->
|
|
|
- if (!visible) {
|
|
|
+ //处理非全屏窗口底部输入栏
|
|
|
+ sessionInputViewModel.bottomImeVisibleLD.observe(viewLifecycleOwner) { visible ->
|
|
|
+ if (!activity.isMultiWindowMode() && !visible) {
|
|
|
if (sessionInputViewModel.inputStateLD.value?.currentState != InputState.STATE_NONE) {
|
|
|
sessionInputViewModel.execute(InputAction.EMPTY_CLICKED)
|
|
|
}
|