| Index: tools/dom/src/EventStreamProvider.dart
|
| diff --git a/tools/dom/src/EventStreamProvider.dart b/tools/dom/src/EventStreamProvider.dart
|
| index 9c52a5dd7241f2f03d9b9c863e89c67b7fb64186..477359afcaf7498c0f20d2a464d9c8fd70187e2b 100644
|
| --- a/tools/dom/src/EventStreamProvider.dart
|
| +++ b/tools/dom/src/EventStreamProvider.dart
|
| @@ -135,3 +135,18 @@ class EventStreamProvider<T extends Event> {
|
| return new _EventStream(e, _eventType, useCapture);
|
| }
|
| }
|
| +
|
| +/**
|
| + * A factory to expose DOM events as streams, where the DOM event name has to
|
| + * be determined on the fly (for example, mouse wheel events).
|
| + */
|
| +class _CustomEventStreamProvider<T extends Event>
|
| + implements EventStreamProvider<T> {
|
| +
|
| + final _eventTypeGetter;
|
| + const _CustomEventStreamProvider(this._eventTypeGetter);
|
| +
|
| + Stream<T> forTarget(EventTarget e, {bool useCapture: false}) {
|
| + return new _EventStream(e, _eventTypeGetter(e), useCapture);
|
| + }
|
| +}
|
|
|