| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 | <html><!--Copyright 2010 The Closure Library Authors. All Rights Reserved.Use of this source code is governed by the Apache License, Version 2.0.See the COPYING file for details.--><head><script type="text/javascript" src="../../../base.js"></script><script type="text/javascript">goog.require('goog.dom');goog.require('goog.dom.TagName');goog.require('goog.events');goog.require('goog.net.xpc.CrossPageChannel');</script><script type="text/javascript">var channel;var logEl;/** * Writes a message to the log. * @param {string} msg The message text. */function log(msg) {  logEl || (logEl = goog.dom.getElement('log'));  var msgEl = goog.dom.createDom(goog.dom.TagName.DIV);  msgEl.innerHTML = msg;  logEl.insertBefore(msgEl, logEl.firstChild);}goog.events.listen(window, 'load', function() {  // Build the channel configuration.  var cfg = {};  var ownUri = new goog.Uri(window.location.href);  var peerDomain = ownUri.getParameterValue('peerdomain') || ownUri.getDomain();  var peerUri = ownUri.clone().setDomain(peerDomain);  var localRelayUri = ownUri.resolve(new goog.Uri('relay.html'));  var peerRelayUri = peerUri.resolve(new goog.Uri('relay.html'));  var localPollUri = ownUri.resolve(new goog.Uri('blank.html'));  var peerPollUri = peerUri.resolve(new goog.Uri('blank.html'));  cfg[goog.net.xpc.CfgFields.LOCAL_RELAY_URI] = localRelayUri.toString();  cfg[goog.net.xpc.CfgFields.PEER_RELAY_URI] = peerRelayUri.toString();  cfg[goog.net.xpc.CfgFields.LOCAL_POLL_URI] = localPollUri.toString();  cfg[goog.net.xpc.CfgFields.PEER_POLL_URI] = peerPollUri.toString();  // Set the URI of the peer page.  var peerUri = ownUri.resolve(      new goog.Uri('inner.html')).setDomain(peerDomain);  cfg[goog.net.xpc.CfgFields.PEER_URI] = peerUri;  // Create the channel.  channel = new goog.net.xpc.CrossPageChannel(cfg);  // Create the peer iframe.  channel.createPeerIframe(      goog.dom.getElement('iframeContainer'));  channel.registerService('log', log);  channel.connect(function() {    log('Channel connected.');  });});</script><style type="text/css">body, td {  background-color: #eeeeff;  font-family: arial,verdana;  font-size: 12px;}</style></head><body><table border=0 width="100%" height="100%"><tr><td width="50%" valign="top"><h3><script type="text/javascript">document.write(location.href.replace(/\?.*/,'?...'))</script></h3><p><input type="text" id="msgInput" value="Hello from the container page."    style="width:250px"><input type="button" value="Send" onclick="    channel.send('log', goog.dom.getElement('msgInput').value)"></p><div id="log" style="border: 1px #000 solid;"></div></td><td width="50%" valign="top" id="iframeContainer"></td></tr></table></body></html>
 |