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

Unified Diff: chrome/common/extensions/docs/examples/api/windows/merge_windows/background.js

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 side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/docs/examples/api/windows/merge_windows/background.js
diff --git a/chrome/common/extensions/docs/examples/api/windows/merge_windows/background.js b/chrome/common/extensions/docs/examples/api/windows/merge_windows/background.js
new file mode 100644
index 0000000000000000000000000000000000000000..e9789210d1f6d62c69aaa38468a311e0ee04a2bc
--- /dev/null
+++ b/chrome/common/extensions/docs/examples/api/windows/merge_windows/background.js
@@ -0,0 +1,45 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+var targetWindow = null;
+var tabCount = 0;
+
+function start(tab) {
+ chrome.windows.getCurrent(getWindows);
+}
+
+function getWindows(win) {
+ targetWindow = win;
+ chrome.tabs.getAllInWindow(targetWindow.id, getTabs);
+}
+
+function getTabs(tabs) {
+ tabCount = tabs.length;
+ // We require all the tab information to be populated.
+ chrome.windows.getAll({"populate" : true}, moveTabs);
+}
+
+function moveTabs(windows) {
+ var numWindows = windows.length;
+ var tabPosition = tabCount;
+
+ for (var i = 0; i < numWindows; i++) {
+ var win = windows[i];
+
+ if (targetWindow.id != win.id) {
+ var numTabs = win.tabs.length;
+
+ for (var j = 0; j < numTabs; j++) {
+ var tab = win.tabs[j];
+ // Move the tab into the window that triggered the browser action.
+ chrome.tabs.move(tab.id,
+ {"windowId": targetWindow.id, "index": tabPosition});
+ tabPosition++;
+ }
+ }
+ }
+}
+
+// Set up a click handler so that we can merge all the windows.
+chrome.browserAction.onClicked.addListener(start);

Powered by Google App Engine
This is Rietveld 408576698