Closed Bug 993234 Opened 6 years ago Closed 6 years ago
Implement D3E Keyboard
Event .is Composing
No description provided.
https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html#widl-KeyboardEvent-isComposing > true if the key event occurs as part of a composition session, i.e., after a compositionstart event and before the corresponding compositionend event. > > The un-initialized value of this attribute MUST be false.
We can implement this bug very simply. widget shouldn't set the isComposing value at dispatching key events. Instead of that, EventStateManager::PreHandleEvent() can do it.
Attachment #8403248 - Flags: review?(bugs)
Currently, dispatching key events during composition causes some assertions. Therefore, this patch adds |SimpleTest.expectAssertions(0, 16)|. Note that on Linux, the assertion doesn't occur. Therefore, it specifies 0-16.
Attachment #8403251 - Flags: review?(bugs)
Comment on attachment 8403248 [details] [diff] [review] part.1 Implement KeyboardEvent.isComposing I wouldn't add isComposing to the .idl, nor KeyboardEvent::GetIsComposing. New stuff can go to .webidl only, unless there is some good reason to add to .idl too. So, remove the .idl stuff, r=me
Attachment #8403248 - Flags: review?(bugs) → review+
Comment on attachment 8403251 [details] [diff] [review] part.2 Add tests for KeyboardEvent.isComposing I'd like to see at least some test for keypress too, at least to check that it returns sane value, and not some random value for isComposing.
Attachment #8403251 - Flags: review?(bugs) → review-
Thanks, then, this doesn't need sr.
Attachment #8403248 - Attachment is obsolete: true
Although, keypress event should never be fired during composition even if after bug 354358 is fixed. But it's okay to include the test for something wired case.
And I hope VK_INSERT will never be handled by our editor...
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla31
You need to log in before you can comment on or make changes to this bug.