OLD | NEW |
(Empty) | |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 /** |
| 6 * This view displays information related to Prerendering. |
| 7 */ |
| 8 var PrerenderView = (function() { |
| 9 'use strict'; |
| 10 |
| 11 // We inherit from DivView. |
| 12 var superClass = DivView; |
| 13 |
| 14 /** |
| 15 * @constructor |
| 16 */ |
| 17 function PrerenderView() { |
| 18 assertFirstConstructorCall(PrerenderView); |
| 19 |
| 20 // Call superclass's constructor. |
| 21 superClass.call(this, PrerenderView.MAIN_BOX_ID); |
| 22 |
| 23 g_browser.addPrerenderInfoObserver(this, true); |
| 24 } |
| 25 |
| 26 PrerenderView.TAB_ID = 'tab-handle-prerender'; |
| 27 PrerenderView.TAB_NAME = 'Prerender'; |
| 28 PrerenderView.TAB_HASH = '#prerender'; |
| 29 |
| 30 // IDs for special HTML elements in prerender_view.html |
| 31 PrerenderView.MAIN_BOX_ID = 'prerender-view-tab-content'; |
| 32 PrerenderView.PRERENDER_VIEW_ENABLED_ID = |
| 33 'prerender-view-enabled'; |
| 34 PrerenderView.PRERENDER_VIEW_ENABLED_NOTE_ID = |
| 35 'prerender-view-enabled-note'; |
| 36 PrerenderView.PRERENDER_VIEW_OMNIBOX_ENABLED_ID = |
| 37 'prerender-view-omnibox-enabled'; |
| 38 PrerenderView.HISTORY_TABLE_ID = 'prerender-view-history-table'; |
| 39 PrerenderView.ACTIVE_TABLE_ID = 'prerender-view-active-table'; |
| 40 |
| 41 cr.addSingletonGetter(PrerenderView); |
| 42 |
| 43 PrerenderView.prototype = { |
| 44 // Inherit the superclass's methods. |
| 45 __proto__: superClass.prototype, |
| 46 |
| 47 onLoadLogFinish: function(data) { |
| 48 return this.onPrerenderInfoChanged(data.prerenderInfo); |
| 49 }, |
| 50 |
| 51 onPrerenderInfoChanged: function(prerenderInfo) { |
| 52 if (!prerenderInfo) |
| 53 return false; |
| 54 |
| 55 $(PrerenderView.PRERENDER_VIEW_ENABLED_ID).textContent = |
| 56 prerenderInfo.enabled; |
| 57 $(PrerenderView.PRERENDER_VIEW_ENABLED_NOTE_ID).textContent = |
| 58 prerenderInfo.enabled_note; |
| 59 $(PrerenderView.PRERENDER_VIEW_OMNIBOX_ENABLED_ID).textContent = |
| 60 prerenderInfo.omnibox_enabled; |
| 61 |
| 62 var tbodyActive = $(PrerenderView.ACTIVE_TABLE_ID); |
| 63 tbodyActive.innerHTML = ''; |
| 64 |
| 65 // Fill in Active Prerender Pages table |
| 66 for (var i = 0; i < prerenderInfo.active.length; ++i) { |
| 67 var a = prerenderInfo.active[i]; |
| 68 var tr = addNode(tbodyActive, 'tr'); |
| 69 |
| 70 addNodeWithText(tr, 'td', a.url); |
| 71 addNodeWithText(tr, 'td', a.duration); |
| 72 addNodeWithText(tr, 'td', a.is_loaded); |
| 73 } |
| 74 |
| 75 var tbodyHistory = $(PrerenderView.HISTORY_TABLE_ID); |
| 76 tbodyHistory.innerHTML = ''; |
| 77 |
| 78 // Fill in Prerender History table |
| 79 for (var i = 0; i < prerenderInfo.history.length; ++i) { |
| 80 var h = prerenderInfo.history[i]; |
| 81 var tr = addNode(tbodyHistory, 'tr'); |
| 82 tr.className = h.final_status.toLowerCase(); |
| 83 |
| 84 addNodeWithText(tr, 'td', h.origin); |
| 85 addNodeWithText(tr, 'td', h.url); |
| 86 addNodeWithText(tr, 'td', h.final_status); |
| 87 addNodeWithText(tr, 'td', |
| 88 timeutil.dateToString(new Date(parseInt(h.end_time)))); |
| 89 } |
| 90 |
| 91 return true; |
| 92 } |
| 93 }; |
| 94 |
| 95 return PrerenderView; |
| 96 })(); |
OLD | NEW |