Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(95)

Unified Diff: tools/dom/src/EventStreamProvider.dart

Issue 11931009: Adding support for the MouseWheel event in Streams. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698