summaryrefslogtreecommitdiffstats
path: root/browser/components/syncedtabs/TabListComponent.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/syncedtabs/TabListComponent.js')
-rw-r--r--browser/components/syncedtabs/TabListComponent.js142
1 files changed, 0 insertions, 142 deletions
diff --git a/browser/components/syncedtabs/TabListComponent.js b/browser/components/syncedtabs/TabListComponent.js
deleted file mode 100644
index d3aace8f9..000000000
--- a/browser/components/syncedtabs/TabListComponent.js
+++ /dev/null
@@ -1,142 +0,0 @@
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-"use strict";
-
-const {classes: Cc, interfaces: Ci, utils: Cu, results: Cr} = Components;
-
-Cu.import("resource://gre/modules/XPCOMUtils.jsm");
-
-let log = Cu.import("resource://gre/modules/Log.jsm", {})
- .Log.repository.getLogger("Sync.RemoteTabs");
-
-XPCOMUtils.defineLazyModuleGetter(this, "BrowserUITelemetry",
- "resource:///modules/BrowserUITelemetry.jsm");
-XPCOMUtils.defineLazyModuleGetter(this, "PlacesUIUtils",
- "resource:///modules/PlacesUIUtils.jsm");
-
-this.EXPORTED_SYMBOLS = [
- "TabListComponent"
-];
-
-/**
- * TabListComponent
- *
- * The purpose of this component is to compose the view, state, and actions.
- * It defines high level actions that act on the state and passes them to the
- * view for it to trigger during user interaction. It also subscribes the view
- * to state changes so it can rerender.
- */
-
-function TabListComponent({window, store, View, SyncedTabs, clipboardHelper,
- getChromeWindow}) {
- this._window = window;
- this._store = store;
- this._View = View;
- this._clipboardHelper = clipboardHelper;
- this._getChromeWindow = getChromeWindow;
- // used to trigger Sync from context menu
- this._SyncedTabs = SyncedTabs;
-}
-
-TabListComponent.prototype = {
- get container() {
- return this._view.container;
- },
-
- init() {
- log.debug("Initializing TabListComponent");
-
- this._view = new this._View(this._window, {
- onSelectRow: (...args) => this.onSelectRow(...args),
- onOpenTab: (...args) => this.onOpenTab(...args),
- onOpenTabs: (...args) => this.onOpenTabs(...args),
- onMoveSelectionDown: (...args) => this.onMoveSelectionDown(...args),
- onMoveSelectionUp: (...args) => this.onMoveSelectionUp(...args),
- onToggleBranch: (...args) => this.onToggleBranch(...args),
- onBookmarkTab: (...args) => this.onBookmarkTab(...args),
- onCopyTabLocation: (...args) => this.onCopyTabLocation(...args),
- onSyncRefresh: (...args) => this.onSyncRefresh(...args),
- onFilter: (...args) => this.onFilter(...args),
- onClearFilter: (...args) => this.onClearFilter(...args),
- onFilterFocus: (...args) => this.onFilterFocus(...args),
- onFilterBlur: (...args) => this.onFilterBlur(...args)
- });
-
- this._store.on("change", state => this._view.render(state));
- this._view.render({clients: []});
- // get what's already available...
- this._store.getData();
- this._store.focusInput();
- },
-
- uninit() {
- this._view.destroy();
- },
-
- onFilter(query) {
- this._store.getData(query);
- },
-
- onClearFilter() {
- this._store.clearFilter();
- },
-
- onFilterFocus() {
- this._store.focusInput();
- },
-
- onFilterBlur() {
- this._store.blurInput();
- },
-
- onSelectRow(position) {
- this._store.selectRow(position[0], position[1]);
- },
-
- onMoveSelectionDown() {
- this._store.moveSelectionDown();
- },
-
- onMoveSelectionUp() {
- this._store.moveSelectionUp();
- },
-
- onToggleBranch(id) {
- this._store.toggleBranch(id);
- },
-
- onBookmarkTab(uri, title) {
- this._window.top.PlacesCommandHook
- .bookmarkLink(this._window.top.PlacesUtils.bookmarksMenuFolderId, uri, title)
- .catch(Cu.reportError);
- },
-
- onOpenTab(url, where, params) {
- this._window.openUILinkIn(url, where, params);
- BrowserUITelemetry.countSyncedTabEvent("open", "sidebar");
- },
-
- onOpenTabs(urls, where) {
- if (!PlacesUIUtils.confirmOpenInTabs(urls.length, this._window)) {
- return;
- }
- if (where == "window") {
- this._window.openDialog(this._window.getBrowserURL(), "_blank",
- "chrome,dialog=no,all", urls.join("|"));
- } else {
- let loadInBackground = where == "tabshifted" ? true : false;
- this._getChromeWindow(this._window).gBrowser.loadTabs(urls, loadInBackground, false);
- }
- BrowserUITelemetry.countSyncedTabEvent("openmultiple", "sidebar");
- },
-
- onCopyTabLocation(url) {
- this._clipboardHelper.copyString(url);
- },
-
- onSyncRefresh() {
- this._SyncedTabs.syncTabs(true);
- }
-};