Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(657)

Unified Diff: content/browser/resources/media/painters/logPainter.js

Issue 18889006: Removed old media-internals page and rewrote it. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/resources/media/painters/logPainter.js
diff --git a/content/browser/resources/media/painters/logPainter.js b/content/browser/resources/media/painters/logPainter.js
new file mode 100755
index 0000000000000000000000000000000000000000..54a1d65e9a64ed6ec998e6a97fe6f456111d5958
--- /dev/null
+++ b/content/browser/resources/media/painters/logPainter.js
@@ -0,0 +1,65 @@
+var logPainter = (function () {
+ "use strict";
+
+ var logPainter = {};
+
+ // Creates a filter function for filtering the logs.
+ function genFilterFun(text) {
+ if (text.trim().length === 0) {
+ return function () {
+ return true;
+ };
+ }
+
+ var split = text.split(",");
+ var trimmed = goog.array.map(split, function (x) {
+ return x.trim().toLowerCase();
+ });
+
+ return function (x) {
+ return trimmed.indexOf(x.key.trim().toLowerCase()) !== -1;
+ };
+ }
+
+ logPainter.paintNew = function (playerInfo, div, properties) {
+ // Make sure that we don't have anything else inside.
+ removeChildren(div);
+ var table = makeTable("Timestamp", "Key", "Value");
+ var filterFun = genFilterFun(properties.filterText);
+
+ var logEntries = playerInfo.allEvents;
+ logEntries = goog.array.filter(logEntries, filterFun);
+
+ playerInfo.lastRendered = playerInfo.allEvents.length;
+
+ goog.array.forEach(logEntries, function (entry) {
+ appendRow(table, genLogRow(entry));
+ });
+
+ div.appendChild(table);
+ };
+
+ logPainter.paintExist = function (playerInfo, div, properties) {
+ // Find the existing table
+ var table = div.querySelector("table");
+ var filterFun = genFilterFun(properties.filterText);
+
+ // Cut off all the events that we've already rendered
+ var logEntries = playerInfo.allEvents.slice(playerInfo.lastRendered);
+ logEntries = goog.array.filter(logEntries, filterFun);
+
+ // Set the last rendered property so we
+ // slice at the right place next time
+ playerInfo.lastRendered = playerInfo.allEvents.length;
+
+ goog.array.forEach(logEntries, function (entry) {
+ appendRow(table, genLogRow(entry));
+ });
+ };
+
+ logPainter.invalidate = function (playerInfo) {
+ playerInfo.lastRendered = 0;
+ };
+
+ return logPainter;
+}());

Powered by Google App Engine
This is Rietveld 408576698