Fixed capitalization scenario when cursor is moved

This commit is contained in:
merkost 2023-06-17 09:32:33 +10:00
parent 5e50feea90
commit cca92c784a
1 changed files with 7 additions and 1 deletions

View File

@ -6,6 +6,7 @@ import android.text.InputType.*
import android.text.TextUtils
import android.view.KeyEvent
import android.view.View
import android.view.inputmethod.CursorAnchorInfo
import android.view.inputmethod.EditorInfo
import android.view.inputmethod.EditorInfo.IME_ACTION_NONE
import android.view.inputmethod.EditorInfo.IME_FLAG_NO_ENTER_ACTION
@ -72,7 +73,7 @@ class SimpleKeyboardIME : InputMethodService(), OnKeyboardActionListener, Shared
}
private fun updateShiftKeyState() {
if (keyboard!!.mShiftState == ShiftState.ON_PERMANENT) {
if (keyboard?.mShiftState == ShiftState.ON_PERMANENT) {
return
}
@ -258,6 +259,11 @@ class SimpleKeyboardIME : InputMethodService(), OnKeyboardActionListener, Shared
updateShiftKeyState()
}
override fun onUpdateCursorAnchorInfo(cursorAnchorInfo: CursorAnchorInfo?) {
super.onUpdateCursorAnchorInfo(cursorAnchorInfo)
updateShiftKeyState()
}
private fun moveCursor(moveRight: Boolean) {
val extractedText = currentInputConnection?.getExtractedText(ExtractedTextRequest(), 0) ?: return
var newCursorPosition = extractedText.selectionStart