Bug 1368667 - Replace KeyValueTable with GenericTable r?chutten draft
authorflyingrub <flyinggrub@gmail.com>
Wed, 31 May 2017 16:24:08 +0200
changeset 588285 bcec035092eb547be315af3925673b53e6f902d6
parent 588284 0e3f121b41113b67d304caee45a462594f2d93ed
child 588286 e65919c33936d78107d359c4065cb6bd377cfa41
push id61982
push userbmo:flyinggrub@gmail.com
push dateFri, 02 Jun 2017 13:39:34 +0000
reviewerschutten
bugs1368667
milestone55.0a1
Bug 1368667 - Replace KeyValueTable with GenericTable r?chutten Both provide the same functionality so we only need to keep one of them. MozReview-Commit-ID: AOiiRiFr1fD
toolkit/content/aboutTelemetry.js
toolkit/locales/en-US/chrome/global/aboutTelemetry.properties
--- a/toolkit/content/aboutTelemetry.js
+++ b/toolkit/content/aboutTelemetry.js
@@ -501,18 +501,18 @@ var GeneralData = {
    * Renders the general data
    */
   render(aPing) {
     setHasData("general-data-section", true);
     let generalDataSection = document.getElementById("general-data");
     removeAllChildNodes(generalDataSection);
 
     const headings = [
-      "generalDataHeadingName",
-      "generalDataHeadingValue",
+      "namesHeader",
+      "valuesHeader",
     ].map(h => bundle.GetStringFromName(h));
 
     // The payload & environment parts are handled by other renderers.
     let ignoreSections = ["payload", "environment"];
     let data = explodeObject(filterObject(aPing, ignoreSections));
 
     const table = GenericTable.render(data, headings);
     generalDataSection.appendChild(table);
@@ -658,18 +658,18 @@ var EnvironmentData = {
   },
 
   appendAddonID(table, addonID) {
     this.appendRow(table, "id", addonID);
   },
 
   appendHeading(table) {
     let headings = document.createElement("tr");
-    this.appendColumn(headings, "th", bundle.GetStringFromName("environmentDataHeadingName"));
-    this.appendColumn(headings, "th", bundle.GetStringFromName("environmentDataHeadingValue"));
+    this.appendColumn(headings, "th", bundle.GetStringFromName("namesHeader"));
+    this.appendColumn(headings, "th", bundle.GetStringFromName("valuesHeader"));
     table.appendChild(headings);
   },
 
   appendHeadingName(table, name) {
     let headings = document.createElement("tr");
     this.appendColumn(headings, "th", name);
     headings.cells[0].colSpan = 2;
     table.appendChild(headings);
@@ -1620,19 +1620,21 @@ var AddonDetails = {
       return;
     }
 
     for (let provider in addonDetails) {
       let providerSection = document.createElement("h2");
       let titleText = bundle.formatStringFromName("addonProvider", [provider], 1);
       providerSection.appendChild(document.createTextNode(titleText));
       addonSection.appendChild(providerSection);
-      addonSection.appendChild(
-        KeyValueTable.render(addonDetails[provider],
-                             this.tableIDTitle, this.tableDetailsTitle));
+
+      let headingStrings = [this.tableIDTitle, this.tableDetailsTitle ]
+      let table = GenericTable.render(explodeObject(addonDetails[provider]),
+                                      headingStrings);
+      addonSection.appendChild(table);
     }
   },
 };
 
 var Scalars = {
   /**
    * Render the scalar data - if present - from the payload in a simple key-value table.
    * @param aPayload A payload object to render the data from.
@@ -1652,19 +1654,21 @@ var Scalars = {
 
     let scalars = aPayload.processes[selectedProcess].scalars;
     const hasData = scalars && Object.keys(scalars).length > 0;
     setHasData("scalars-section", hasData || processesSelect.options.length);
     if (!hasData) {
       return;
     }
 
-    const headingName = bundle.GetStringFromName("namesHeader");
-    const headingValue = bundle.GetStringFromName("valuesHeader");
-    const table = KeyValueTable.render(scalars, headingName, headingValue);
+    const headings = [
+      "namesHeader",
+      "valuesHeader",
+    ].map(h => bundle.GetStringFromName(h));
+    const table = GenericTable.render(explodeObject(scalars), headings);
     scalarsSection.appendChild(table);
   },
 };
 
 var KeyedScalars = {
   /**
    * Render the keyed scalar data - if present - from the payload in a simple key-value table.
    * @param aPayload A payload object to render the data from.
@@ -1684,25 +1688,27 @@ var KeyedScalars = {
 
     let keyedScalars = aPayload.processes[selectedProcess].keyedScalars;
     const hasData = keyedScalars && Object.keys(keyedScalars).length > 0;
     setHasData("keyed-scalars-section", hasData || processesSelect.options.length);
     if (!hasData) {
       return;
     }
 
-    const headingName = bundle.GetStringFromName("namesHeader");
-    const headingValue = bundle.GetStringFromName("valuesHeader");
+    const headings = [
+      "namesHeader",
+      "valuesHeader",
+    ].map(h => bundle.GetStringFromName(h));
     for (let scalar in keyedScalars) {
       // Add the name of the scalar.
       let scalarNameSection = document.createElement("h2");
       scalarNameSection.appendChild(document.createTextNode(scalar));
       scalarsSection.appendChild(scalarNameSection);
       // Populate the section with the key-value pairs from the scalar.
-      const table = KeyValueTable.render(keyedScalars[scalar], headingName, headingValue);
+      const table = GenericTable.render(explodeObject(keyedScalars[scalar]), headings);
       scalarsSection.appendChild(table);
     }
   },
 };
 
 var Events = {
   /**
    * Render the event data - if present - from the payload in a simple table.
--- a/toolkit/locales/en-US/chrome/global/aboutTelemetry.properties
+++ b/toolkit/locales/en-US/chrome/global/aboutTelemetry.properties
@@ -4,24 +4,16 @@
 
 # Note to translators:
 # - %1$S will be replaced by brandFullName
 # - %2$S will be replaced with the value of the toolkit.telemetry.server_owner preference
 pageSubtitle = This page shows the information about performance, hardware, usage and customizations collected by Telemetry. This information is submitted to %1$S to help improve %2$S.
 
 generalDataTitle = General Data
 
-generalDataHeadingName = Name
-
-generalDataHeadingValue = Value
-
-environmentDataHeadingName = Name
-
-environmentDataHeadingValue = Value
-
 environmentDataSubsectionToggle = Click to toggle section
 
 environmentDataSubsectionEmpty = (No data collected)
 
 telemetryLogTitle = Telemetry Log
 
 telemetryLogHeadingId = Id