| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * Javascript for bluetooth_internals.html, served from | 6 * Javascript for bluetooth_internals.html, served from |
| 7 * chrome://bluetooth-internals/. | 7 * chrome://bluetooth-internals/. |
| 8 */ | 8 */ |
| 9 | 9 |
| 10 // Expose for testing. |
| 11 var adapterBroker = null; |
| 12 var devices = null; |
| 13 |
| 10 cr.define('bluetooth_internals', function() { | 14 cr.define('bluetooth_internals', function() { |
| 11 function initialize() { | 15 function initialize() { |
| 12 var adapterBroker = null; | |
| 13 adapter_broker.getAdapterBroker() | 16 adapter_broker.getAdapterBroker() |
| 14 .then(function(broker) { adapterBroker = broker; }) | 17 .then(function(broker) { adapterBroker = broker; }) |
| 15 .then(function() { return adapterBroker.getInfo(); }) | 18 .then(function() { return adapterBroker.getInfo(); }) |
| 16 .then(function(response) { console.log('adapter', response.info); }) | 19 .then(function(response) { console.log('adapter', response.info); }) |
| 17 .then(function() { return adapterBroker.getDevices(); }) | 20 .then(function() { return adapterBroker.getDevices(); }) |
| 18 .then(function(response) { | 21 .then(function(response) { |
| 19 // Hook up device collection events. | 22 // Hook up device collection events. |
| 20 var devices = new device_collection.DeviceCollection([]); | 23 devices = new device_collection.DeviceCollection([]); |
| 21 adapterBroker.addEventListener('deviceadded', function(event) { | 24 adapterBroker.addEventListener('deviceadded', function(event) { |
| 22 devices.addOrUpdate(event.deviceInfo); | 25 devices.addOrUpdate(event.deviceInfo); |
| 23 }); | 26 }); |
| 24 adapterBroker.addEventListener('devicechanged', function(event) { | 27 adapterBroker.addEventListener('devicechanged', function(event) { |
| 25 devices.addOrUpdate(event.deviceInfo); | 28 devices.addOrUpdate(event.deviceInfo); |
| 26 }); | 29 }); |
| 27 adapterBroker.addEventListener('deviceremoved', function(event) { | 30 adapterBroker.addEventListener('deviceremoved', function(event) { |
| 28 devices.remove(event.deviceInfo); | 31 devices.remove(event.deviceInfo); |
| 29 }); | 32 }); |
| 30 | 33 |
| 31 response.devices.forEach(devices.addOrUpdate, | 34 response.devices.forEach(devices.addOrUpdate, |
| 32 devices /* this */); | 35 devices /* this */); |
| 33 | 36 |
| 34 var deviceTable = new device_table.DeviceTable(); | 37 var deviceTable = new device_table.DeviceTable(); |
| 35 deviceTable.setDevices(devices); | 38 deviceTable.setDevices(devices); |
| 39 deviceTable.id = 'device-table'; |
| 40 |
| 36 document.body.appendChild(deviceTable); | 41 document.body.appendChild(deviceTable); |
| 37 }) | 42 }) |
| 38 .catch(function(error) { console.error(error); }); | 43 .catch(function(error) { console.error(error); }); |
| 39 } | 44 } |
| 40 | 45 |
| 41 return { | 46 return { |
| 42 initialize: initialize | 47 initialize: initialize |
| 43 }; | 48 }; |
| 44 | 49 |
| 45 }); | 50 }); |
| 46 | 51 |
| 47 document.addEventListener('DOMContentLoaded', bluetooth_internals.initialize); | 52 document.addEventListener('DOMContentLoaded', bluetooth_internals.initialize); |
| OLD | NEW |