From 6610f2bad81f726931ca8d664f2ac8c0e323115a Mon Sep 17 00:00:00 2001 From: shimazu Date: Thu, 16 Oct 2014 17:38:13 -0700 Subject: [PATCH] ServiceWorker: Reset message in serviceworker-internals with update Currently, when there are two registration and above one is unregistered, console message by above registration is left in top console box though the bottom one goes to the top. Then, the message in each box is set to the message recorded internally when update() is called. BUG=418568 TEST=N/A Review URL: https://codereview.chromium.org/653283004 Cr-Commit-Position: refs/heads/master@{#300027} --- .../resources/service_worker/serviceworker_internals.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/content/browser/resources/service_worker/serviceworker_internals.js b/content/browser/resources/service_worker/serviceworker_internals.js index 23e898304a05..93bf437fbc5e 100644 --- a/content/browser/resources/service_worker/serviceworker_internals.js +++ b/content/browser/resources/service_worker/serviceworker_internals.js @@ -76,7 +76,7 @@ cr.define('serviceworker', function() { var allLogMessages = {}; // Set log for a worker version. - function fillLogForVersion(partition_id, version) { + function fillLogForVersion(container, partition_id, version) { if (!version) { return; } @@ -89,6 +89,14 @@ cr.define('serviceworker', function() { } else { version.log = ''; } + var logAreas = container.querySelectorAll('textarea.serviceworker-log'); + for (var i = 0; i < logAreas.length; ++i) { + var logArea = logAreas[i]; + if (logArea.partition_id == partition_id && + logArea.version_id == version.version_id) { + logArea.value = version.log; + } + } } // Get the unregistered workers. @@ -157,7 +165,7 @@ cr.define('serviceworker', function() { template = jstGetTemplate('serviceworker-list-template'); container.appendChild(template); } - var fillLogFunc = fillLogForVersion.bind(this, partition_id); + var fillLogFunc = fillLogForVersion.bind(this, container, partition_id); stored_registrations.forEach(function(registration) { [registration.active, registration.waiting].forEach(fillLogFunc); }); @@ -239,7 +247,7 @@ cr.define('serviceworker', function() { for (var i = 0; i < logAreas.length; ++i) { var logArea = logAreas[i]; if (logArea.partition_id == partition_id && - logArea.version_id == version_id) { + logArea.version_id == version_id) { logArea.value += message; } } -- 2.11.4.GIT