MessageEvent constructor

MessageEvent(
  1. String type,
  2. {bool canBubble: false,
  3. bool cancelable: false,
  4. Object data,
  5. String origin,
  6. String lastEventId,
  7. Window source,
  8. List<MessagePort> messagePorts: const []}
)

Implementation

factory MessageEvent(String type,
    {bool canBubble: false,
    bool cancelable: false,
    Object data,
    String origin,
    String lastEventId,
    Window source,
    List<MessagePort> messagePorts: const []}) {
  if (source == null) {
    source = window;
  }
  if (!Device.isIE) {
    // TODO: This if check should be removed once IE
    // implements the constructor.
    return JS(
        'MessageEvent',
        'new MessageEvent(#, {bubbles: #, cancelable: #, data: #, origin: #, lastEventId: #, source: #, ports: #})',
        type,
        canBubble,
        cancelable,
        data,
        origin,
        lastEventId,
        source,
        messagePorts);
  }
  MessageEvent event = document._createEvent("MessageEvent");
  event._initMessageEvent(type, canBubble, cancelable, data, origin,
      lastEventId, source, messagePorts);
  return event;
}