1 // Copyright 2013 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.
7 var getKeys = function(obj){
16 function appendMessage(text) {
17 document.getElementById('response').innerHTML += "<p>" + text + "</p>";
20 function updateUiState() {
22 document.getElementById('connect-button').style.display = 'none';
23 document.getElementById('input-text').style.display = 'block';
24 document.getElementById('send-message-button').style.display = 'block';
26 document.getElementById('connect-button').style.display = 'block';
27 document.getElementById('input-text').style.display = 'none';
28 document.getElementById('send-message-button').style.display = 'none';
32 function sendNativeMessage() {
33 message = {"text": document.getElementById('input-text').value};
34 port.postMessage(message);
35 appendMessage("Sent message: <b>" + JSON.stringify(message) + "</b>");
38 function onNativeMessage(message) {
39 appendMessage("Received message: <b>" + JSON.stringify(message) + "</b>");
42 function onDisconnected() {
43 appendMessage("Failed to connect: " + chrome.runtime.lastError.message);
49 var hostName = "com.google.chrome.example.echo";
50 appendMessage("Connecting to native messaging host <b>" + hostName + "</b>")
51 port = chrome.runtime.connectNative(hostName);
52 port.onMessage.addListener(onNativeMessage);
53 port.onDisconnect.addListener(onDisconnected);
57 document.addEventListener('DOMContentLoaded', function () {
58 document.getElementById('connect-button').addEventListener(
60 document.getElementById('send-message-button').addEventListener(
61 'click', sendNativeMessage);