Chromium Code Reviews| 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 a0553a68a08146e7ea7f5504454e3f269b649443..2774ff368efc982a0c8f61b0c7f8a8624e922e38 100644 |
| --- a/chrome/browser/resources/translate_internals/translate_internals.js |
| +++ b/chrome/browser/resources/translate_internals/translate_internals.js |
| @@ -31,6 +31,36 @@ |
| $('prefs-blocked-languages').hidden = true; |
| $('prefs-language-blacklist').querySelector('h2 span').hidden = true; |
| } |
| + |
| + var tabpanelNodeList = document.getElementsByTagName('tabpanel'); |
| + var tabpanels = Array.prototype.slice.call(tabpanelNodeList, 0); |
| + var tabpanelIds = tabpanels.map(function(tab) { |
| + return tab.id; |
| + }); |
| + |
| + var tabNodeList = document.getElementsByTagName('tab'); |
| + var tabs = Array.prototype.slice.call(tabNodeList, 0); |
| + tabs.forEach(function(tab) { |
| + tab.onclick = function(e) { |
| + var tabbox = document.querySelector('tabbox'); |
| + var tabpanel = tabpanels[tabbox.selectedIndex]; |
| + var hash = tabpanel.id.match(/(?:^tabpanel-)(.+)/)[1]; |
| + window.location.hash = hash; |
| + }; |
| + }); |
| + |
| + window.onhashchange = function(e) { |
| + var hash = window.location.hash; |
| + |
| + // Remove the first character '#'. |
| + hash = hash.substring(1); |
| + |
| + var id = 'tabpanel-' + hash; |
| + if (tabpanelIds.indexOf(id) == -1) |
| + return; |
| + |
| + $(id).selected = true; |
| + }; |
| } |
| /** |
| @@ -299,7 +329,8 @@ |
| contentTD.textContent = ''; |
| contentTD.appendChild(div); |
| - var tbody = $('detection-logs').getElementsByTagName('tbody')[0]; |
| + var tabpanel = $('tabpanel-detection-logs'); |
|
Evan Stade
2013/07/22 19:06:04
no need to stick this in its own var
|
| + var tbody = tabpanel.getElementsByTagName('tbody')[0]; |
| tbody.appendChild(tr); |
| } |
| @@ -319,7 +350,8 @@ |
| details['error'] + ': ' + formatTranslateErrorsType(details['error']), |
| 'error-logs-error'); |
| - var tbody = $('error-logs').getElementsByTagName('tbody')[0]; |
| + var tabpanel = $('tabpanel-error-logs'); |
|
Evan Stade
2013/07/22 19:06:04
no need to stick this in its own var
|
| + var tbody = tabpanel.getElementsByTagName('tbody')[0]; |
| tbody.appendChild(tr); |
| } |