@@ -40,6 +40,7 @@ extension DomWindowExtension on DomWindow {
4040 external DomURL get URL ;
4141 external bool dispatchEvent (DomEvent event);
4242 external DomMediaQueryList matchMedia (String ? query);
43+ external DomCSSStyleDeclaration getComputedStyle (DomElement elt);
4344}
4445
4546@JS ()
@@ -186,6 +187,7 @@ extension DomNodeExtension on DomNode {
186187 set text (String ? value) =>
187188 js_util.setProperty <String ?>(this , 'textContent' , value);
188189 external DomNode cloneNode (bool ? deep);
190+ external bool contains (DomNode ? other);
189191}
190192
191193@JS ()
@@ -905,6 +907,63 @@ DomPath2D createDomPath2D([Object? path]) =>
905907 domCallConstructorString ('Path2D' , < Object > [if (path != null ) path])!
906908 as DomPath2D ;
907909
910+ @JS ()
911+ @staticInterop
912+ class DomMouseEvent extends DomUIEvent {}
913+
914+ extension DomMouseEventExtension on DomMouseEvent {
915+ external num get clientX;
916+ external num get clientY;
917+ external int get button;
918+ external int ? get buttons;
919+ external bool getModifierState (String keyArg);
920+ }
921+
922+ @JS ()
923+ @staticInterop
924+ class DomPointerEvent extends DomMouseEvent {}
925+
926+ extension DomPointerEventExtension on DomPointerEvent {
927+ external int ? get pointerId;
928+ external String ? get pointerType;
929+ external num ? get pressure;
930+ external int ? get tiltX;
931+ external int ? get tiltY;
932+ List <DomPointerEvent > getCoalescedEvents () =>
933+ js_util.callMethod <List <Object ?>>(
934+ this , 'getCoalescedEvents' , < Object > []).cast <DomPointerEvent >();
935+ }
936+
937+ @JS ()
938+ @staticInterop
939+ class DomWheelEvent extends DomMouseEvent {}
940+
941+ extension DomWheelEventExtension on DomWheelEvent {
942+ external num get deltaX;
943+ external num get deltaY;
944+ external int get deltaMode;
945+ }
946+
947+ @JS ()
948+ @staticInterop
949+ class DomTouchEvent extends DomUIEvent {}
950+
951+ extension DomTouchEventExtension on DomTouchEvent {
952+ List <DomTouch >? get changedTouches => js_util
953+ .getProperty <List <Object ?>?>(this , 'changedTouches' )
954+ ? .cast <DomTouch >();
955+ }
956+
957+ @JS ()
958+ @staticInterop
959+ class DomTouch {}
960+
961+ extension DomTouchExtension on DomTouch {
962+ external int ? get identifier;
963+ external num ? get clientX;
964+ external num ? get clientY;
965+ }
966+
908967Object ? domGetConstructor (String constructorName) =>
909968 js_util.getProperty (domWindow, constructorName);
910969
0 commit comments