forked from mirrors/gecko-dev
		
	
		
			
				
	
	
		
			24 lines
		
	
	
	
		
			858 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
	
		
			858 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| var port;
 | |
| onconnect = function(evt) {
 | |
|   evt.source.postMessage({ type: "connected" });
 | |
| 
 | |
|   if (!port) {
 | |
|     port = evt.source;
 | |
|     evt.source.onmessage = function(evtFromPort) {
 | |
|       port.postMessage({type: "status",
 | |
|                         test: "Port from the main-thread!" == evtFromPort.data,
 | |
|                         msg: "The message is coming from the main-thread"});
 | |
|       port.postMessage({type: "status",
 | |
|                         test: (evtFromPort.ports.length == 1),
 | |
|                         msg: "1 port transferred"});
 | |
| 
 | |
|       evtFromPort.ports[0].onmessage = function(evtFromPort2) {
 | |
|         port.postMessage({type: "status",
 | |
|                           test: (evtFromPort2.data.type == "connected"),
 | |
|                           msg: "The original message received" });
 | |
|         port.postMessage({type: "finish"});
 | |
|         close();
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| }
 | 
