Issue #1655: Update MediaQueryList to the current draft spec.

This make MediaQueryList inherit from EventTarget and adds MediaQueryListEvent
as an interface as well as the onchange() method.
This should not affect compatibility with other code; the event object is a
MediaQueryListEvent instance, which is recognized as a MediaListQuery instance.
This commit is contained in:
Moonchild 2020-09-23 08:24:14 +00:00 • committed by roytam1
commit 78bcb176ea
7 changed files with 209 additions and 117 deletions

View file

@ -4,17 +4,21 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* The origin of this IDL file is
* http://dev.w3.org/csswg/cssom-view/#the-mediaquerylist-interface
* https://drafts.csswg.org/cssom-view/#mediaquerylist
*
* Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
* liability, trademark and document use rules apply.
*/
interface MediaQueryList {
interface MediaQueryList : EventTarget {
readonly attribute DOMString media;
readonly attribute boolean matches;
void addListener(MediaQueryListListener listener);
void removeListener(MediaQueryListListener listener);
};
callback MediaQueryListListener = void (MediaQueryList list);
[Throws]
void addListener(EventListener? listener);
[Throws]
void removeListener(EventListener? listener);
attribute EventHandler onchange;
};