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

Side by Side Diff: ceee/firefox/content/tab_api.js

Issue 5512001: Cloned from issue http://codereview.chromium.org/5277004/ by rogerta@chromium... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 10 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 | Annotate | Revision Log
« no previous file with comments | « ceee/firefox/content/overlay.js ('k') | ceee/firefox/content/window_api.js » ('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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 * @fileoverview This file contains the implementation of the Chrome extension 6 * @fileoverview This file contains the implementation of the Chrome extension
7 * tab APIs for the CEEE Firefox add-on. This file is loaded by the 7 * tab APIs for the CEEE Firefox add-on. This file is loaded by the
8 * overlay.xul file, and requires that overlay.js has already been loaded. 8 * overlay.xul file, and requires that overlay.js has already been loaded.
9 * 9 *
10 * @supported Firefox 3.x 10 * @supported Firefox 3.x
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after
251 CEEE_globals.MAIN_BROWSER_ID); 251 CEEE_globals.MAIN_BROWSER_ID);
252 if (!mainBrowser) { 252 if (!mainBrowser) {
253 throw(new Error(CEEE_tabs_internal_.CMD_GET_SELECTED_TAB + 253 throw(new Error(CEEE_tabs_internal_.CMD_GET_SELECTED_TAB +
254 ': cannot find main browser win id=' + id)); 254 ': cannot find main browser win id=' + id));
255 } 255 }
256 256
257 var tab = mainBrowser.selectedTab; 257 var tab = mainBrowser.selectedTab;
258 return this.buildTabValue(mainBrowser, tab); 258 return this.buildTabValue(mainBrowser, tab);
259 }; 259 };
260 260
261 CEEE_tabs_internal_.CMD_GET_CURRENT_TAB = 'tabs.getCurrent';
262 CEEE_tabs_internal_.getCurrentTab_ = function(cmd, data) {
263 // TODO(rogerta@chromium.org): Revisit this implementation. I'm not sure
264 // it strictly obeys the chrome extension API spec.
265 var cfTab = data.tab;
266 if (cfTab) {
267 var win = CEEE_mozilla_windows.findWindowFromCfSessionId(cfTab.id);
268 if (win) {
269 var mainBrowser = win.document.getElementById(
270 CEEE_globals.MAIN_BROWSER_ID);
271 var tab = mainBrowser.selectedTab;
272 return this.buildTabValue(mainBrowser, tab);
273 }
274 }
275 };
276
261 CEEE_tabs_internal_.CMD_GET_ALL_TABS_IN_WINDOW = 'tabs.getAllInWindow'; 277 CEEE_tabs_internal_.CMD_GET_ALL_TABS_IN_WINDOW = 'tabs.getAllInWindow';
262 CEEE_tabs_internal_.getAllTabsInWindow_ = function(cmd, data) { 278 CEEE_tabs_internal_.getAllTabsInWindow_ = function(cmd, data) {
263 var args = CEEE_json.decode(data.args); 279 var args = CEEE_json.decode(data.args);
264 var id = args[0]; 280 var id = args[0];
265 var win = CEEE_mozilla_windows.findWindow(id); 281 var win = CEEE_mozilla_windows.findWindow(id);
266 if (!win || !win.document) { 282 if (!win || !win.document) {
267 throw(new Error(CEEE_tabs_internal_.CMD_GET_ALL_TABS_IN_WINDOW + 283 throw(new Error(CEEE_tabs_internal_.CMD_GET_ALL_TABS_IN_WINDOW +
268 ': invalid window id=' + id)); 284 ': invalid window id=' + id));
269 } 285 }
270 286
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after
448 */ 464 */
449 function CEEE_initialize_tabs(ceeeInstance) { 465 function CEEE_initialize_tabs(ceeeInstance) {
450 CEEE_tabs_internal_.ceeeInstance_ = ceeeInstance; 466 CEEE_tabs_internal_.ceeeInstance_ = ceeeInstance;
451 var tabs = CEEE_tabs_internal_; 467 var tabs = CEEE_tabs_internal_;
452 ceeeInstance.registerExtensionHandler(tabs.CMD_GET_TAB, 468 ceeeInstance.registerExtensionHandler(tabs.CMD_GET_TAB,
453 tabs, 469 tabs,
454 tabs.getTab_); 470 tabs.getTab_);
455 ceeeInstance.registerExtensionHandler(tabs.CMD_GET_SELECTED_TAB, 471 ceeeInstance.registerExtensionHandler(tabs.CMD_GET_SELECTED_TAB,
456 tabs, 472 tabs,
457 tabs.getSelectedTab_); 473 tabs.getSelectedTab_);
474 ceeeInstance.registerExtensionHandler(tabs.CMD_GET_CURRENT_TAB,
475 tabs,
476 tabs.getCurrentTab_);
458 ceeeInstance.registerExtensionHandler(tabs.CMD_GET_ALL_TABS_IN_WINDOW, 477 ceeeInstance.registerExtensionHandler(tabs.CMD_GET_ALL_TABS_IN_WINDOW,
459 tabs, 478 tabs,
460 tabs.getAllTabsInWindow_); 479 tabs.getAllTabsInWindow_);
461 ceeeInstance.registerExtensionHandler(tabs.CMD_CREATE_TAB, 480 ceeeInstance.registerExtensionHandler(tabs.CMD_CREATE_TAB,
462 tabs, 481 tabs,
463 tabs.createTab_); 482 tabs.createTab_);
464 ceeeInstance.registerExtensionHandler(tabs.CMD_UPDATE_TAB, 483 ceeeInstance.registerExtensionHandler(tabs.CMD_UPDATE_TAB,
465 tabs, 484 tabs,
466 tabs.updateTab_); 485 tabs.updateTab_);
467 ceeeInstance.registerExtensionHandler(tabs.CMD_MOVE_TAB, 486 ceeeInstance.registerExtensionHandler(tabs.CMD_MOVE_TAB,
468 tabs, 487 tabs,
469 tabs.moveTab_); 488 tabs.moveTab_);
470 ceeeInstance.registerExtensionHandler(tabs.CMD_REMOVE_TAB, 489 ceeeInstance.registerExtensionHandler(tabs.CMD_REMOVE_TAB,
471 tabs, 490 tabs,
472 tabs.removeTab_); 491 tabs.removeTab_);
473 ceeeInstance.registerExtensionHandler(tabs.CMD_EXECUTE_SCRIPT, 492 ceeeInstance.registerExtensionHandler(tabs.CMD_EXECUTE_SCRIPT,
474 tabs, 493 tabs,
475 tabs.executeScript_); 494 tabs.executeScript_);
476 ceeeInstance.registerExtensionHandler(tabs.CMD_INSERT_CSS, 495 ceeeInstance.registerExtensionHandler(tabs.CMD_INSERT_CSS,
477 tabs, 496 tabs,
478 tabs.insertCss_); 497 tabs.insertCss_);
479 498
480 return tabs; 499 return tabs;
481 } 500 }
OLDNEW
« no previous file with comments | « ceee/firefox/content/overlay.js ('k') | ceee/firefox/content/window_api.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698