OLD | NEW |
(Empty) | |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 var controllerChangePromise = new Promise(function(resolve, reject) { |
| 6 navigator.serviceWorker.oncontrollerchange = function(e) { |
| 7 navigator.serviceWorker.ready.then(function(registration) { |
| 8 resolve(registration.active); |
| 9 }).catch(function(err) { |
| 10 reject('oncontrollerchange failure'); |
| 11 }); |
| 12 }; |
| 13 }); |
| 14 |
| 15 controllerChangePromise.then(function(serviceWorker) { |
| 16 var channel = new MessageChannel(); |
| 17 channel.port1.onmessage = function(e) { |
| 18 chrome.test.log('Message received from SW: ' + e.data); |
| 19 chrome.test.sendMessage(e.data); |
| 20 }; |
| 21 serviceWorker.postMessage('ping', [channel.port2]); |
| 22 }).catch(function(err) { |
| 23 console.log(err); |
| 24 chrome.test.sendMessage('FAILURE_V2'); |
| 25 }); |
OLD | NEW |