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

Side by Side Diff: chrome/browser/resources/net_internals/logs_view.js

Issue 7474013: Extract the CSS for the net_internals EventsView and LogsView to separate files. Also rename thes... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years, 4 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * This view displays network related log data and is specific fo ChromeOS. 6 * This view displays network related log data and is specific fo ChromeOS.
7 * We get log data from chrome by filtering system logs for network related 7 * We get log data from chrome by filtering system logs for network related
8 * keywords. Logs are not fetched until we actually need them. 8 * keywords. Logs are not fetched until we actually need them.
9 * 9 *
10 * @constructor 10 * @constructor
11 */ 11 */
12 function LogsView() { 12 function LogsView() {
13 const mainBoxId = 'logsTabContent'; 13 const mainBoxId = 'logs-view-tab-content';
14 const tableId = 'logTable'; 14 const tableId = 'logs-view-log-table';
15 const globalShowButtonId = 'logsGlobalShowBtn'; 15 const globalShowButtonId = 'logsGlobalShowBtn';
16 const globalHideButtonId = 'logsGlobalHideBtn'; 16 const globalHideButtonId = 'logsGlobalHideBtn';
17 const refreshLogsButtonId = 'logsRefreshBtn'; 17 const refreshLogsButtonId = 'logsRefreshBtn';
18 18
19 var tableDiv = $(tableId); 19 var tableDiv = $(tableId);
20 this.rows = []; 20 this.rows = [];
21 this.PopulateTable(tableDiv, this.logFilterList); 21 this.PopulateTable(tableDiv, this.logFilterList);
22 $(globalShowButtonId).addEventListener('click', 22 $(globalShowButtonId).addEventListener('click',
23 this.onGlobalChangeVisibleClick_.bind(this, true)); 23 this.onGlobalChangeVisibleClick_.bind(this, true));
24 $(globalHideButtonId).addEventListener('click', 24 $(globalHideButtonId).addEventListener('click',
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 LogsView.prototype.CreateTableRow = function(logKey) { 60 LogsView.prototype.CreateTableRow = function(logKey) {
61 var row = document.createElement('tr'); 61 var row = document.createElement('tr');
62 62
63 var cells = []; 63 var cells = [];
64 for (var i = 0; i < 3; i++) { 64 for (var i = 0; i < 3; i++) {
65 var rowCell = document.createElement('td'); 65 var rowCell = document.createElement('td');
66 cells.push(rowCell); 66 cells.push(rowCell);
67 row.appendChild(rowCell); 67 row.appendChild(rowCell);
68 } 68 }
69 // Log key cell. 69 // Log key cell.
70 cells[0].className = 'logCellText'; 70 cells[0].className = 'logs-view-log-cell-text';
71 cells[0].textContent = logKey; 71 cells[0].textContent = logKey;
72 // Cell log is displayed in. Log content is in div element that is initially 72 // Cell log is displayed in. Log content is in div element that is initially
73 // hidden and empty. 73 // hidden and empty.
74 cells[2].className = 'logCellText'; 74 cells[2].className = 'logs-view-log-cell-text';
75 var logDiv = document.createElement('div'); 75 var logDiv = document.createElement('div');
76 logDiv.textContent = ''; 76 logDiv.textContent = '';
77 logDiv.className = 'logCellLog'; 77 logDiv.className = 'logs-view-log-cell-log';
78 logDiv.id = 'logsView.logCell.' + this.rows.length; 78 logDiv.id = 'logsView.logCell.' + this.rows.length;
79 cells[2].appendChild(logDiv); 79 cells[2].appendChild(logDiv);
80 80
81 // Button that we use to show or hide div element with log content. Logs are 81 // Button that we use to show or hide div element with log content. Logs are
82 // not visible initially, so we initialize button accordingly. 82 // not visible initially, so we initialize button accordingly.
83 var expandButton = document.createElement('button'); 83 var expandButton = document.createElement('button');
84 expandButton.textContent = 'Show...'; 84 expandButton.textContent = 'Show...';
85 expandButton.className = 'logButton'; 85 expandButton.className = 'logs-view-log-button';
86 expandButton.addEventListener('click', 86 expandButton.addEventListener('click',
87 this.onButtonClicked_.bind(this, row)); 87 this.onButtonClicked_.bind(this, row));
88 88
89 // Cell that contains show/hide button. 89 // Cell that contains show/hide button.
90 cells[1].appendChild(expandButton); 90 cells[1].appendChild(expandButton);
91 cells[1].className = 'logTableButtonColumn'; 91 cells[1].className = 'logs-view-log-table-button-column';
92 92
93 // Initially, log is not visible. 93 // Initially, log is not visible.
94 row.className = 'logRowCollapsed'; 94 row.className = 'logs-view-log-row-collapsed';
95 95
96 // We will need those to process row buttons' onclick events. 96 // We will need those to process row buttons' onclick events.
97 row.logKey = logKey; 97 row.logKey = logKey;
98 row.expandButton = expandButton; 98 row.expandButton = expandButton;
99 row.logDiv = logDiv; 99 row.logDiv = logDiv;
100 row.logVisible = false; 100 row.logVisible = false;
101 this.rows.push(row); 101 this.rows.push(row);
102 102
103 return row; 103 return row;
104 }; 104 };
105 105
106 /** 106 /**
107 * Initializes |tableDiv| to represent data from |logList| which should be of 107 * Initializes |tableDiv| to represent data from |logList| which should be of
108 * type LogsView.logFilterList. 108 * type LogsView.logFilterList.
109 */ 109 */
110 LogsView.prototype.PopulateTable = function(tableDiv, logList) { 110 LogsView.prototype.PopulateTable = function(tableDiv, logList) {
111 for (var i = 0; i < logList.length; i++) { 111 for (var i = 0; i < logList.length; i++) {
112 var logSource = this.CreateTableRow(logList[i].key); 112 var logSource = this.CreateTableRow(logList[i].key);
113 tableDiv.appendChild(logSource); 113 tableDiv.appendChild(logSource);
114 } 114 }
115 }; 115 };
116 116
117 /** 117 /**
118 * Processes clicks on buttons that show or hide log contents in log row. 118 * Processes clicks on buttons that show or hide log contents in log row.
119 * Row containing the clicked button is given to the method since it contains 119 * Row containing the clicked button is given to the method since it contains
120 * all data we need to process the click (unlike button object itself). 120 * all data we need to process the click (unlike button object itself).
121 */ 121 */
122 LogsView.prototype.onButtonClicked_ = function(containingRow) { 122 LogsView.prototype.onButtonClicked_ = function(containingRow) {
123 if (!containingRow.logVisible) { 123 if (!containingRow.logVisible) {
124 containingRow.className = 'logRowExpanded'; 124 containingRow.className = 'logs-view-log-row-expanded';
125 containingRow.expandButton.textContent = 'Hide...'; 125 containingRow.expandButton.textContent = 'Hide...';
126 var logDiv = containingRow.logDiv; 126 var logDiv = containingRow.logDiv;
127 if (logDiv.textContent == '') { 127 if (logDiv.textContent == '') {
128 logDiv.textContent = 'Getting logs...'; 128 logDiv.textContent = 'Getting logs...';
129 // Callback will be executed by g_browser. 129 // Callback will be executed by g_browser.
130 g_browser.getSystemLog(containingRow.logKey, 130 g_browser.getSystemLog(containingRow.logKey,
131 containingRow.logDiv.id); 131 containingRow.logDiv.id);
132 } 132 }
133 } else { 133 } else {
134 containingRow.className = 'logRowCollapsed'; 134 containingRow.className = 'logs-view-log-row-collapsed';
135 containingRow.expandButton.textContent = 'Show...'; 135 containingRow.expandButton.textContent = 'Show...';
136 } 136 }
137 containingRow.logVisible = !containingRow.logVisible; 137 containingRow.logVisible = !containingRow.logVisible;
138 }; 138 };
139 139
140 /** 140 /**
141 * Processes click on one of the buttons that are used to show or hide all logs 141 * Processes click on one of the buttons that are used to show or hide all logs
142 * we care about. 142 * we care about.
143 */ 143 */
144 LogsView.prototype.onGlobalChangeVisibleClick_ = function(isShowAll) { 144 LogsView.prototype.onGlobalChangeVisibleClick_ = function(isShowAll) {
(...skipping 27 matching lines...) Expand all
172 g_browser.getSystemLog(visibleLogRows[row].logKey, 172 g_browser.getSystemLog(visibleLogRows[row].logKey,
173 visibleLogRows[row].logDiv.id); 173 visibleLogRows[row].logDiv.id);
174 } 174 }
175 175
176 // In hidden rows we just clear potential log text, so we know we have to get 176 // In hidden rows we just clear potential log text, so we know we have to get
177 // new contents when we show the row next time. 177 // new contents when we show the row next time.
178 for (row in hiddenLogRows) { 178 for (row in hiddenLogRows) {
179 hiddenLogRows[row].logDiv.textContent = ''; 179 hiddenLogRows[row].logDiv.textContent = '';
180 } 180 }
181 }; 181 };
OLDNEW
« no previous file with comments | « chrome/browser/resources/net_internals/logs_view.html ('k') | chrome/browser/resources/net_internals/main.css » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698