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

Side by Side Diff: samples/swarm/swarm_ui_lib/touch/Scroller.dart

Issue 16125005: Make new StreamController be async by default. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Address review comments Created 7 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « runtime/bin/socket_patch.dart ('k') | sdk/lib/_internal/compiler/implementation/dart2js.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of touch; 5 part of touch;
6 6
7 /** 7 /**
8 * Implementation of a custom scrolling behavior. 8 * Implementation of a custom scrolling behavior.
9 * This behavior overrides native scrolling for an area. This area can be a 9 * This behavior overrides native scrolling for an area. This area can be a
10 * single defined part of a page, the entire page, or several different parts 10 * single defined part of a page, the entire page, or several different parts
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 // TODO(jacobr): this assert fires asynchronously which could be confusing. 239 // TODO(jacobr): this assert fires asynchronously which could be confusing.
240 if (_scrollTechnique == ScrollerScrollTechnique.RELATIVE_POSITIONING) { 240 if (_scrollTechnique == ScrollerScrollTechnique.RELATIVE_POSITIONING) {
241 assert(_element.getComputedStyle().position != "static"); 241 assert(_element.getComputedStyle().position != "static");
242 } 242 }
243 243
244 _initLayer(); 244 _initLayer();
245 } 245 }
246 246
247 Stream<Event> get onScrollerStart { 247 Stream<Event> get onScrollerStart {
248 if (_onScrollerStart == null) { 248 if (_onScrollerStart == null) {
249 _onScrollerStart = new StreamController<Event>(); 249 _onScrollerStart = new StreamController<Event>(sync: true);
250 _onScrollerStartStream = _onScrollerStart.stream.asBroadcastStream(); 250 _onScrollerStartStream = _onScrollerStart.stream.asBroadcastStream();
251 } 251 }
252 return _onScrollerStartStream; 252 return _onScrollerStartStream;
253 } 253 }
254 254
255 Stream<Event> get onScrollerEnd { 255 Stream<Event> get onScrollerEnd {
256 if (_onScrollerEnd == null) { 256 if (_onScrollerEnd == null) {
257 _onScrollerEnd = new StreamController<Event>(); 257 _onScrollerEnd = new StreamController<Event>(sync: true);
258 _onScrollerEndStream = _onScrollerEnd.stream.asBroadcastStream(); 258 _onScrollerEndStream = _onScrollerEnd.stream.asBroadcastStream();
259 } 259 }
260 return _onScrollerEndStream; 260 return _onScrollerEndStream;
261 } 261 }
262 262
263 Stream<Event> get onScrollerDragEnd { 263 Stream<Event> get onScrollerDragEnd {
264 if (_onScrollerDragEnd == null) { 264 if (_onScrollerDragEnd == null) {
265 _onScrollerDragEnd = new StreamController<Event>(); 265 _onScrollerDragEnd = new StreamController<Event>(sync: true);
266 _onScrollerDragEndStream = _onScrollerDragEnd.stream.asBroadcastStream(); 266 _onScrollerDragEndStream = _onScrollerDragEnd.stream.asBroadcastStream();
267 } 267 }
268 return _onScrollerDragEndStream; 268 return _onScrollerDragEndStream;
269 } 269 }
270 270
271 Stream<Event> get onContentMoved { 271 Stream<Event> get onContentMoved {
272 if (_onContentMoved == null) { 272 if (_onContentMoved == null) {
273 _onContentMoved = new StreamController<Event>(); 273 _onContentMoved = new StreamController<Event>(sync: true);
274 _onContentMovedStream = _onContentMoved.stream.asBroadcastStream(); 274 _onContentMovedStream = _onContentMoved.stream.asBroadcastStream();
275 } 275 }
276 return _onContentMovedStream; 276 return _onContentMovedStream;
277 } 277 }
278 278
279 Stream<Event> get onDecelStart { 279 Stream<Event> get onDecelStart {
280 if (_onDecelStart == null) { 280 if (_onDecelStart == null) {
281 _onDecelStart = new StreamController<Event>(); 281 _onDecelStart = new StreamController<Event>(sync: true);
282 _onDecelStartStream = _onDecelStart.stream.asBroadcastStream(); 282 _onDecelStartStream = _onDecelStart.stream.asBroadcastStream();
283 } 283 }
284 return _onDecelStartStream; 284 return _onDecelStartStream;
285 } 285 }
286 286
287 287
288 /** 288 /**
289 * Add a scroll listener. This allows other classes to subscribe to scroll 289 * Add a scroll listener. This allows other classes to subscribe to scroll
290 * notifications from this scroller. 290 * notifications from this scroller.
291 */ 291 */
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after
694 static const SCROLLER_END = "scroller:scroll_end"; 694 static const SCROLLER_END = "scroller:scroll_end";
695 static const DRAG_END = "scroller:drag_end"; 695 static const DRAG_END = "scroller:drag_end";
696 static const CONTENT_MOVED = "scroller:content_moved"; 696 static const CONTENT_MOVED = "scroller:content_moved";
697 static const DECEL_START = "scroller:decel_start"; 697 static const DECEL_START = "scroller:decel_start";
698 } 698 }
699 699
700 class ScrollerScrollTechnique { 700 class ScrollerScrollTechnique {
701 static const TRANSFORM_3D = 1; 701 static const TRANSFORM_3D = 1;
702 static const RELATIVE_POSITIONING = 2; 702 static const RELATIVE_POSITIONING = 2;
703 } 703 }
OLDNEW
« no previous file with comments | « runtime/bin/socket_patch.dart ('k') | sdk/lib/_internal/compiler/implementation/dart2js.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698