| 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
|
| }
|
|
|