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

Side by Side Diff: chrome/common/extensions/docs/examples/api/processes/show_tabs/popup.html

Issue 8318001: Adding `content_security_policy` to a few sample extensions (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Docs. Zips. Created 9 years, 2 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 <!doctype html>
1 <html> 2 <html>
2 <head> 3 <head>
3 <script> 4 <title>Popup</title>
4 // Show a list of all tabs in the same process as this one. 5 <link href="popup.css" rel="stylesheet" type="text/css">
5 function init() { 6 <script src="popup.js"></script>
6 chrome.windows.getCurrent(function(currentWindow) { 7 </head>
7 chrome.tabs.getSelected(currentWindow.id, function(selectedTab) { 8 <body>
8 chrome.experimental.processes.getProcessIdForTab(selectedTab.id, 9 <div id="title"></div>
9 function(pid) { 10 <div id="tab-list"></div>
10 var outputDiv = document.getElementById("tab-list"); 11 </body>
11 var titleDiv = document.getElementById("title");
12 titleDiv.innerHTML = "<b>Tabs in Process " + pid + ":</b>";
13 displayTabInfo(currentWindow.id, selectedTab, outputDiv);
14 displaySameProcessTabs(selectedTab, pid, outputDiv);
15 }
16 );
17
18 });
19 });
20 }
21
22 function displaySameProcessTabs(selectedTab, processId, outputDiv) {
23 // Loop over all windows and their tabs
24 var tabs = [];
25 chrome.windows.getAll({ populate: true }, function(windowList) {
26 for (var i = 0; i < windowList.length; i++) {
27 for (var j = 0; j < windowList[i].tabs.length; j++) {
28 var tab = windowList[i].tabs[j];
29 if (tab.id != selectedTab.id) {
30 tabs.push(tab);
31 }
32 }
33 }
34
35 // Display tab in list if it is in the same process
36 tabs.forEach(function(tab) {
37 chrome.experimental.processes.getProcessIdForTab(tab.id,
38 function(pid) {
39 if (pid == processId) {
40 displayTabInfo(tab.windowId, tab, outputDiv);
41 }
42 }
43 );
44 });
45 });
46 }
47
48 // Print a link to a given tab
49 function displayTabInfo(windowId, tab, outputDiv) {
50 if (tab.favIconUrl != undefined) {
51 outputDiv.innerHTML += "<img src='" + tab.favIconUrl + "'>\n";
52 }
53 outputDiv.innerHTML +=
54 "<b><a href='#' onclick='showTab(window, " + windowId + ", " + tab.id +
55 ")'>" + tab.title + "</a></b><br>\n" +
56 "<i>" + tab.url + "</i><br>\n";
57 }
58
59 // Bring the selected tab to the front
60 function showTab(origWindow, windowId, tabId) {
61 // TODO: Bring the window to the front. (See http://crbug.com/31434)
62 //chrome.windows.update(windowId, {focused: true});
63 chrome.tabs.update(tabId, { selected: true });
64 origWindow.close();
65 }
66 </script>
67 <style>
68 body {
69 overflow: hidden;
70 margin: 0px;
71 padding: 0px;
72 background: white;
73 }
74
75 div:first-child {
76 margin-top: 0px;
77 }
78
79 div {
80 padding: 1px 3px;
81 font-family: sans-serif;
82 font-size: 10pt;
83 width: 400px;
84 margin-top: 1px;
85 }
86 </style>
87 </head>
88 <body onload="init()" style="width: 400px">
89 <div id="title"></div>
90 <div id="tab-list"></div>
91 </body>
92 </html> 12 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698