summaryrefslogtreecommitdiffstats
path: root/chromium/chrome/browser/resources/components.js
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2018-05-03 13:42:47 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2018-05-15 10:27:51 +0000
commit8c5c43c7b138c9b4b0bf56d946e61d3bbc111bec (patch)
treed29d987c4d7b173cf853279b79a51598f104b403 /chromium/chrome/browser/resources/components.js
parent830c9e163d31a9180fadca926b3e1d7dfffb5021 (diff)
BASELINE: Update Chromium to 66.0.3359.156
Change-Id: I0c9831ad39911a086b6377b16f995ad75a51e441 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Diffstat (limited to 'chromium/chrome/browser/resources/components.js')
-rw-r--r--chromium/chrome/browser/resources/components.js36
1 files changed, 30 insertions, 6 deletions
diff --git a/chromium/chrome/browser/resources/components.js b/chromium/chrome/browser/resources/components.js
index f1247bbc0b3..8d29201a3d0 100644
--- a/chromium/chrome/browser/resources/components.js
+++ b/chromium/chrome/browser/resources/components.js
@@ -5,6 +5,13 @@
'use strict';
/**
+ * An array of the latest component data including ID, name, status and
+ * version. This is populated in returnComponentsData() for the convenience of
+ * tests.
+ */
+var currentComponentsData = null;
+
+/**
* Takes the |componentsData| input argument which represents data about the
* currently installed components and populates the html jstemplate with
* that data. It expects an object structure like the above.
@@ -32,7 +39,8 @@ function requestComponentsData() {
/**
* Called by the WebUI to re-populate the page with data representing the
- * current state of installed components.
+ * current state of installed components. The componentsData will also be
+ * stored in currentComponentsData to be available to JS for testing purposes.
* @param {Object} componentsData Detailed info about installed components. The
* template expects each component's format to match the following
* structure to correctly populate the page:
@@ -56,6 +64,10 @@ function returnComponentsData(componentsData) {
bodyContainer.style.visibility = 'hidden';
body.className = '';
+ // Initialize |currentComponentsData|, which can also be updated in
+ // onComponentEvent() later.
+ currentComponentsData = componentsData.components;
+
renderTemplate(componentsData);
// Add handlers to dynamically created HTML elements.
@@ -85,12 +97,24 @@ function returnComponentsData(componentsData) {
* optional.
*/
function onComponentEvent(eventArgs) {
- if (eventArgs['id']) {
- var id = eventArgs['id'];
- $('status-' + id).textContent = eventArgs['event'];
- }
+ if (!eventArgs['id'])
+ return;
+
+ var id = eventArgs['id'];
+
+ var filteredComponents = currentComponentsData.filter(function(entry) {
+ return entry.id === id;
+ });
+ var component = filteredComponents[0];
+
+ var status = eventArgs['event'];
+ $('status-' + id).textContent = status;
+ component['status'] = status;
+
if (eventArgs['version']) {
- $('version-' + id).textContent = eventArgs['version'];
+ var version = eventArgs['version'];
+ $('version-' + id).textContent = version;
+ component['version'] = version;
}
}