Auto merge of #17578 - pyfisch:input-event, r=jdm

Implement the InputEvent

Add WebIDL, from UI Events working draft.
Implement script type for event.

Note that actually firing InputEvents is not part of this commit.

<!-- Please describe your changes on the following line: -->
As part of my effort to improve [keyboard handling](https://groups.google.com/forum/#!topic/mozilla.dev.servo/e6R7eBDjo4M) it is necessary to introduce the InputEvent. While I have a working prototype using the input event this still needs a lot of work  before it can be merged into servo.

cc @jdm

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/17578)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2017-07-06 10:55:41 -07:00 committed by GitHub
commit f18782fb0e
6 changed files with 97 additions and 15 deletions

View file

@ -0,0 +1,21 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/*
* The origin of this IDL file is
* https://w3c.github.io/uievents/#idl-inputevent
*
*/
// https://w3c.github.io/uievents/#idl-inputevent
[Constructor(DOMString type, optional InputEventInit eventInitDict)]
interface InputEvent : UIEvent {
readonly attribute DOMString? data;
readonly attribute boolean isComposing;
};
// https://w3c.github.io/uievents/#idl-inputeventinit
dictionary InputEventInit : UIEventInit {
DOMString? data = null;
boolean isComposing = false;
};