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

Unified Diff: tools/dom/templates/html/dart2js/impl_Window.darttemplate

Issue 12212200: "Reverting 18531" (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 10 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
« no previous file with comments | « tools/dom/src/Timer.dart ('k') | tools/dom/templates/html/dartium/impl_Window.darttemplate » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/dom/templates/html/dart2js/impl_Window.darttemplate
diff --git a/tools/dom/templates/html/impl/impl_Window.darttemplate b/tools/dom/templates/html/dart2js/impl_Window.darttemplate
similarity index 71%
rename from tools/dom/templates/html/impl/impl_Window.darttemplate
rename to tools/dom/templates/html/dart2js/impl_Window.darttemplate
index 083aebd2d559dac2d1867356598f496bf624e79b..1f74f224a8997af2b79797e2b8ad335c20438d9f 100644
--- a/tools/dom/templates/html/impl/impl_Window.darttemplate
+++ b/tools/dom/templates/html/dart2js/impl_Window.darttemplate
@@ -4,63 +4,8 @@
part of $LIBRARYNAME;
-$if DART2JS
$(ANNOTATIONS)class $CLASSNAME$EXTENDS$IMPLEMENTS native "@*DOMWindow" {
-$else
-$(ANNOTATIONS)class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC {
-$endif
- /**
- * Executes a [callback] after the immediate execution stack has completed.
- *
- * This differs from using Timer.run(callback)
- * because Timer will run in about 4-15 milliseconds, depending on browser,
- * depending on load. [setImmediate], in contrast, makes browser-specific
- * changes in behavior to attempt to run immediately after the current
- * frame unwinds, causing the future to complete after all processing has
- * completed for the current event, but before any subsequent events.
- */
- void setImmediate(TimeoutHandler callback) {
- _addMicrotaskCallback(callback);
- }
- /**
- * Lookup a port by its [name]. Return null if no port is
- * registered under [name].
- */
- SendPortSync lookupPort(String name) {
- var port =
- json.parse(document.documentElement.attributes['dart-port:$name']);
- return _deserialize(port);
- }
-
- /**
- * Register a [port] on this window under the given [name]. This
- * port may be retrieved by any isolate (or JavaScript script)
- * running in this window.
- */
- void registerPort(String name, var port) {
- var serialized = _serialize(port);
- document.documentElement.attributes['dart-port:$name'] =
- json.stringify(serialized);
- }
-
- /**
- * Returns a Future that completes just before the window is about to repaint
- * so the user can draw an animation frame
- *
- * If you need to later cancel this animation, use [requestAnimationFrame]
- * instead.
- *
- * Note: The code that runs when the future completes should call
- * [animationFrame] again for the animation to continue.
- */
- Future<num> get animationFrame {
- var completer = new Completer<int>();
- requestAnimationFrame(completer.complete);
- return completer.future;
- }
-
-$if DART2JS
Document get document => JS('Document', '#.document', this);
WindowBase _open2(url, name) => JS('Window', '#.open(#,#)', this, url, name);
@@ -126,21 +71,15 @@ $if DART2JS
}
/**
- * Called to draw an animation frame and then request the window to repaint
- * after [callback] has finished (creating the animation).
- *
- * Use this method only if you need to later call [cancelAnimationFrame]. If
- * not, the preferred Dart idiom is to set animation frames by calling
- * [animationFrame], which returns a Future.
- *
- * Returns a non-zero valued integer to represent the request id for this
- * request. This value only needs to be saved if you intend to call
- * [cancelAnimationFrame] so you can specify the particular animation to
- * cancel.
+ * Executes a [callback] after the immediate execution stack has completed.
*
- * Note: The supplied [callback] needs to call [requestAnimationFrame] again
- * for the animation to continue.
+ * This will cause the callback to be executed after all processing has
+ * completed for the current event, but before any subsequent events.
*/
+ void setImmediate(TimeoutHandler callback) {
+ _addMicrotaskCallback(callback);
+ }
+
@DomName('DOMWindow.requestAnimationFrame')
int requestAnimationFrame(RequestAnimationFrameCallback callback) {
_ensureRequestAnimationFrame();
@@ -199,6 +138,25 @@ $if DART2JS
'#.indexedDB || #.webkitIndexedDB || #.mozIndexedDB',
this, this, this);
+ /**
+ * Lookup a port by its [name]. Return null if no port is
+ * registered under [name].
+ */
+ SendPortSync lookupPort(String name) {
+ var port = json.parse(document.documentElement.attributes['dart-port:$name']);
+ return _deserialize(port);
+ }
+
+ /**
+ * Register a [port] on this window under the given [name]. This
+ * port may be retrieved by any isolate (or JavaScript script)
+ * running in this window.
+ */
+ void registerPort(String name, var port) {
+ var serialized = _serialize(port);
+ document.documentElement.attributes['dart-port:$name'] = json.stringify(serialized);
+ }
+
@DomName('Window.console')
Console get console => Console.safeConsole;
@@ -210,15 +168,6 @@ $if DART2JS
void _setImmediate(void callback()) {
JS('void', '#.setImmediate(#)', this, convertDartClosureToJS(callback, 0));
}
-$else
- /// Checks if _setImmediate is supported.
- static bool get _supportsSetImmediate => false;
-
- /// Dartium stub for IE's setImmediate.
- void _setImmediate(void callback()) {
- throw new UnsupportedError('setImmediate is not supported');
- }
-$endif
$!MEMBERS
}
« no previous file with comments | « tools/dom/src/Timer.dart ('k') | tools/dom/templates/html/dartium/impl_Window.darttemplate » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698