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

Side by Side Diff: chrome/browser/resources/inspect/inspect.js

Issue 2502863002: Add UI DevTools under chrome://inspect/#other (Closed)
Patch Set: feedback Created 4 years 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
« no previous file with comments | « no previous file | chrome/browser/ui/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 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 var MIN_VERSION_TAB_CLOSE = 25; 5 var MIN_VERSION_TAB_CLOSE = 25;
6 var MIN_VERSION_TARGET_ID = 26; 6 var MIN_VERSION_TARGET_ID = 26;
7 var MIN_VERSION_NEW_TAB = 29; 7 var MIN_VERSION_NEW_TAB = 29;
8 var MIN_VERSION_TAB_ACTIVATE = 30; 8 var MIN_VERSION_TAB_ACTIVATE = 30;
9 var WEBRTC_SERIAL = 'WEBRTC'; 9 var WEBRTC_SERIAL = 'WEBRTC';
10 10
(...skipping 26 matching lines...) Expand all
37 37
38 function sendTargetCommand(command, target) { 38 function sendTargetCommand(command, target) {
39 sendCommand(command, target.source, target.id); 39 sendCommand(command, target.source, target.id);
40 } 40 }
41 41
42 function removeChildren(element_id) { 42 function removeChildren(element_id) {
43 var element = $(element_id); 43 var element = $(element_id);
44 element.textContent = ''; 44 element.textContent = '';
45 } 45 }
46 46
47 function removeAdditionalChildren(element_id) {
48 var element = $(element_id);
49 var elements = element.querySelectorAll('.row.additional');
50 for (var i = 0; i != elements.length; i++)
51 element.removeChild(elements[i]);
52 }
53
54 function removeChildrenExceptAdditional(element_id) {
55 var element = $(element_id);
56 var elements = element.querySelectorAll('.row:not(.additional)');
57 for (var i = 0; i != elements.length; i++)
58 element.removeChild(elements[i]);
59 }
60
47 function onload() { 61 function onload() {
48 var tabContents = document.querySelectorAll('#content > div'); 62 var tabContents = document.querySelectorAll('#content > div');
49 for (var i = 0; i != tabContents.length; i++) { 63 for (var i = 0; i != tabContents.length; i++) {
50 var tabContent = tabContents[i]; 64 var tabContent = tabContents[i];
51 var tabName = tabContent.querySelector('.content-header').textContent; 65 var tabName = tabContent.querySelector('.content-header').textContent;
52 66
53 var tabHeader = document.createElement('div'); 67 var tabHeader = document.createElement('div');
54 tabHeader.className = 'tab-header'; 68 tabHeader.className = 'tab-header';
55 var button = document.createElement('button'); 69 var button = document.createElement('button');
56 button.textContent = tabName; 70 button.textContent = tabName;
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 111
98 function populateTargets(source, data) { 112 function populateTargets(source, data) {
99 if (source == 'local') 113 if (source == 'local')
100 populateLocalTargets(data); 114 populateLocalTargets(data);
101 else if (source == 'remote') 115 else if (source == 'remote')
102 populateRemoteTargets(data); 116 populateRemoteTargets(data);
103 else 117 else
104 console.error('Unknown source type: ' + source); 118 console.error('Unknown source type: ' + source);
105 } 119 }
106 120
121 function populateAdditionalTargets(data) {
122 removeAdditionalChildren('others-list');
123 for (var i = 0; i < data.length; i++)
124 addAdditionalTargetsToOthersList(data[i]);
125 }
126
107 function populateLocalTargets(data) { 127 function populateLocalTargets(data) {
108 removeChildren('pages-list'); 128 removeChildren('pages-list');
109 removeChildren('extensions-list'); 129 removeChildren('extensions-list');
110 removeChildren('apps-list'); 130 removeChildren('apps-list');
111 removeChildren('others-list');
112 removeChildren('workers-list'); 131 removeChildren('workers-list');
113 removeChildren('service-workers-list'); 132 removeChildren('service-workers-list');
133 removeChildrenExceptAdditional('others-list');
114 134
115 for (var i = 0; i < data.length; i++) { 135 for (var i = 0; i < data.length; i++) {
116 if (data[i].type === 'page') 136 if (data[i].type === 'page')
117 addToPagesList(data[i]); 137 addToPagesList(data[i]);
118 else if (data[i].type === 'background_page') 138 else if (data[i].type === 'background_page')
119 addToExtensionsList(data[i]); 139 addToExtensionsList(data[i]);
120 else if (data[i].type === 'app') 140 else if (data[i].type === 'app')
121 addToAppsList(data[i]); 141 addToAppsList(data[i]);
122 else if (data[i].type === 'shared_worker') 142 else if (data[i].type === 'shared_worker')
123 addToWorkersList(data[i]); 143 addToWorkersList(data[i]);
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
421 var row = addTargetToList( 441 var row = addTargetToList(
422 data, $('service-workers-list'), ['name', 'description', 'url']); 442 data, $('service-workers-list'), ['name', 'description', 'url']);
423 addActionLink(row, 'terminate', 443 addActionLink(row, 'terminate',
424 sendTargetCommand.bind(null, 'close', data), false); 444 sendTargetCommand.bind(null, 'close', data), false);
425 } 445 }
426 446
427 function addToOthersList(data) { 447 function addToOthersList(data) {
428 addTargetToList(data, $('others-list'), ['url']); 448 addTargetToList(data, $('others-list'), ['url']);
429 } 449 }
430 450
451 function addAdditionalTargetsToOthersList(data) {
452 addTargetToList(data, $('others-list'), ['name', 'url']);
453 }
454
431 function formatValue(data, property) { 455 function formatValue(data, property) {
432 var value = data[property]; 456 var value = data[property];
433 457
434 if (property == 'name' && value == '') { 458 if (property == 'name' && value == '') {
435 value = 'untitled'; 459 value = 'untitled';
436 } 460 }
437 461
438 var text = value ? String(value) : ''; 462 var text = value ? String(value) : '';
439 if (text.length > 100) 463 if (text.length > 100)
440 text = text.substring(0, 100) + '\u2026'; 464 text = text.substring(0, 100) + '\u2026';
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
560 subrow.className = 'subrow'; 584 subrow.className = 'subrow';
561 subrowBox.appendChild(subrow); 585 subrowBox.appendChild(subrow);
562 586
563 for (var j = 0; j < properties.length; j++) 587 for (var j = 0; j < properties.length; j++)
564 subrow.appendChild(formatValue(data, properties[j])); 588 subrow.appendChild(formatValue(data, properties[j]));
565 589
566 var actionBox = document.createElement('div'); 590 var actionBox = document.createElement('div');
567 actionBox.className = 'actions'; 591 actionBox.className = 'actions';
568 subrowBox.appendChild(actionBox); 592 subrowBox.appendChild(actionBox);
569 593
570 if (!data.hasCustomInspectAction) { 594 if (data.isAdditional) {
595 addActionLink(row, 'inspect',
596 sendCommand.bind(null, 'inspect-additional', data.url), false);
597 row.classList.add('additional');
598 } else if (!data.hasCustomInspectAction) {
571 addActionLink(row, 'inspect', sendTargetCommand.bind(null, 'inspect', data), 599 addActionLink(row, 'inspect', sendTargetCommand.bind(null, 'inspect', data),
572 data.hasNoUniqueId || data.adbAttachedForeign); 600 data.hasNoUniqueId || data.adbAttachedForeign);
573 } 601 }
574 602
575 list.appendChild(row); 603 list.appendChild(row);
576 return row; 604 return row;
577 } 605 }
578 606
579 function addActionLink(row, text, handler, opt_disabled) { 607 function addActionLink(row, text, handler, opt_disabled) {
580 var link = document.createElement('span'); 608 var link = document.createElement('span');
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after
991 Array.prototype.forEach.call( 1019 Array.prototype.forEach.call(
992 deviceSection.querySelectorAll('.browser'), clearBrowserPorts); 1020 deviceSection.querySelectorAll('.browser'), clearBrowserPorts);
993 } 1021 }
994 1022
995 Array.prototype.forEach.call( 1023 Array.prototype.forEach.call(
996 document.querySelectorAll('.device'), clearPorts); 1024 document.querySelectorAll('.device'), clearPorts);
997 } 1025 }
998 1026
999 document.addEventListener('DOMContentLoaded', onload); 1027 document.addEventListener('DOMContentLoaded', onload);
1000 window.addEventListener('hashchange', onHashChange); 1028 window.addEventListener('hashchange', onHashChange);
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/ui/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698