Skip to content

Conversation

eymar
Copy link
Member

@eymar eymar commented Jul 17, 2025

This PR introduces a different approach to handling the key and input events.
Due to the differences in the browser behavoiur (events order, key values, timestamps), we collect the events and process them together in window.reqiestAnimationFrame callback. It allows to have more info at one point, which simplifies the processing - the decision making is less scattered through the code.

Fixes https://youtrack.jetbrains.com/issue/CMP-8416

Testing

  • Added new tests

This should be tested by QA

Release Notes

Fixes - Web

  • Fixed the bugs with composite text input

@eymar eymar requested a review from Schahen July 17, 2025 16:37
fix text selection + backspace

api dump

add a comment

Adding tests

refactoring + tests fixed

fix selected text editing

improve

refactor: collect all events in a list and process them together

click on accent using mouse

consider key "Process"

evt.timeStamp is 0 on iOS browser

fix nonTyped events delivery to Compose

safari ok too?

delete backwards count

IME input in FF work

IME input in Chrome work

accents work
@eymar eymar force-pushed the ok/cfw_composite_input_refactored branch from cfd0de6 to eb051ad Compare July 23, 2025 16:25
@eymar eymar merged commit 418289c into jb-main Jul 24, 2025
10 of 11 checks passed
@eymar eymar deleted the ok/cfw_composite_input_refactored branch July 24, 2025 11:54
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