Skip to content

fix: improve key buffering and state recovery to prevent dropped keys#64

Merged
nhktmdzhg merged 1 commit intoLotusInputMethod:devfrom
Miho1254:fix/improve-key-buffering
Mar 5, 2026
Merged

fix: improve key buffering and state recovery to prevent dropped keys#64
nhktmdzhg merged 1 commit intoLotusInputMethod:devfrom
Miho1254:fix/improve-key-buffering

Conversation

@Miho1254
Copy link
Contributor

@Miho1254 Miho1254 commented Mar 5, 2026

  • Tăng MAX_BUFFERED_KEYS từ 10 lên 50 để đảm bảo bộ đệm chứa đủ phím khi gõ nhanh mà hệ thống chưa kịp xử lý.
  • Tạo cấu trúc KeyEntry để lưu trữ đồng thời KeySym và trạng thái phím (rawKey().states()), giúp chức năng replay phím xử lý đầy đủ bối cảnh (context) của phím được gõ.
  • Cập nhật logic trong luồng EnginePullCommit để đảm bảo:
    • Phục hồi lại các phím chưa được xử lý vào buffer cho chu kỳ (cycle) tiếp theo (Re-buffer remaining keys).
    • Xóa lịch sử (history_.clear()) và reset engine khi việc thay thế chữ đã thành công.

@nhktmdzhg nhktmdzhg merged commit 947dc62 into LotusInputMethod:dev Mar 5, 2026
17 checks passed
@Miho1254 Miho1254 deleted the fix/improve-key-buffering branch March 5, 2026 04:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants