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

Unified Diff: chrome/browser/resources/translate_internals/translate_internals.js

Issue 15881006: Added 'error logs' tab to chrome://translte-internals. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed unnecessary files Created 7 years, 7 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: chrome/browser/resources/translate_internals/translate_internals.js
diff --git a/chrome/browser/resources/translate_internals/translate_internals.js b/chrome/browser/resources/translate_internals/translate_internals.js
index bad235077d479234843acb4f7706ae41a18d01ae..7932b732e93d6985021a95b1cda984a2e673d256 100644
--- a/chrome/browser/resources/translate_internals/translate_internals.js
+++ b/chrome/browser/resources/translate_internals/translate_internals.js
@@ -58,6 +58,32 @@
}
/**
+ * Formats the error type to a human-readable text.
+ *
+ * @param {string} error Translation error type from the browser.
+ * @param {string} The formatted string.
Evan Stade 2013/05/28 16:59:36 why are there two params here but only one in the
hajimehoshi 2013/05/29 02:01:42 I took a mistake. This should be @return. On 2013
+ */
+ function formatTranslateErrorsType(error) {
+ // This list is from chrome/common/translate_errors.h. If this header
+ // file is updated, the below list also should be updated.
+ var errorStrs = {
+ 0: 'None',
+ 1: 'Network',
+ 2: 'Initialization Error',
+ 3: 'Unknown Language',
+ 4: 'Unsupported Language',
+ 5: 'Identical Languages',
+ 6: 'Translation Error',
+ };
+
+ if (error < 0 || errorStrs.length <= error) {
+ console.error('Invalid error code:', error);
+ return 'Invalid Error Code';
+ }
+ return errorStrs[error];
+ }
+
+ /**
* Handles the message of 'prefsUpdated' from the browser.
*
* @param {Object} detail the object which represents pref values.
@@ -208,6 +234,30 @@
}
/**
+ * Handles the message of 'translateErrorDetailsAdded' from the
+ * browser.
+ *
+ * @param {Object} details The object which represents the logs.
+ */
+ function onTranslateErrorDetailsAdded(details) {
+ var tr = document.createElement('tr');
+
+ var errorStr = details['error'] + ':' +
+ formatTranslateErrorsType(details['error']);
+ [
+ createTD(formatDate(new Date(details['time'])),
+ 'error-logs-time'),
+ createTD(details['url'], 'error-logs-url'),
+ createTD(errorStr, 'error-logs-error'),
+ ].forEach(function(td) {
+ tr.appendChild(td);
+ });
+
+ var tbody = $('error-logs').getElementsByTagName('tbody')[0];
+ tbody.appendChild(tr);
+ }
+
+ /**
* The callback entry point from the browser. This function will be
* called by the browser.
*
@@ -222,6 +272,9 @@
case 'prefsUpdated':
cr.translateInternals.onPrefsUpdated(detail);
break;
+ case 'translateErrorDetailsAdded':
+ cr.translateInternals.onTranslateErrorDetailsAdded(detail);
+ break;
default:
console.error('Unknown message:', message);
break;
@@ -233,6 +286,7 @@
messageHandler: messageHandler,
onLanguageDetectionInfoAdded: onLanguageDetectionInfoAdded,
onPrefsUpdated: onPrefsUpdated,
+ onTranslateErrorDetailsAdded: onTranslateErrorDetailsAdded,
};
});

Powered by Google App Engine
This is Rietveld 408576698