// Copyright (c) 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
var NaClModulesExpected = 0;
var NaClModulesLoaded = 0;
// Indicate load success.
function moduleDidLoad() {
NaClModulesLoaded++;
if (NaClModulesLoaded == NaClModulesExpected)
chrome.test.sendMessage("nacl_modules_loaded", handleChromeTestMessage);
}
var handleChromeTestMessage = function (message) {
NaClModules = document.querySelectorAll('embed');
for (var i = 0; i < NaClModules.length; i++) {
NaClModules[i].postMessage(message);
}
}
function handleNaclMessage(message_event) {
console.log("handleNaclMessage: " + message_event.data);
}
function createNaClEmbed() {
NaClModulesExpected++;
var listener = document.createElement("div");
listener.addEventListener("load", moduleDidLoad, true);
listener.addEventListener("message", handleNaclMessage, true);
listener.innerHTML = '<embed' +
' src="ppapi_tests_extensions_background_keepalive.nmf"' +
' type="application/x-nacl" />';
document.body.appendChild(listener);
}
// Create 2 embeds to verify that we can handle more than one.
createNaClEmbed();
createNaClEmbed();