summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-12-01 23:40:09 +0100
committerwolfbeast <mcwerewolf@gmail.com>2018-12-01 23:40:09 +0100
commitcaba7e406d9bee4f454d4ff51140e821f09aac5d (patch)
tree8572565c3c188e4bcb5ad592236d5670923d6a6c
parent11d1af7af1799ca32216883862aa78e2e18b57c2 (diff)
downloadUXP-caba7e406d9bee4f454d4ff51140e821f09aac5d.tar
UXP-caba7e406d9bee4f454d4ff51140e821f09aac5d.tar.gz
UXP-caba7e406d9bee4f454d4ff51140e821f09aac5d.tar.lz
UXP-caba7e406d9bee4f454d4ff51140e821f09aac5d.tar.xz
UXP-caba7e406d9bee4f454d4ff51140e821f09aac5d.zip
[BASILISK] Make Basilisk front-end use Weave
-rw-r--r--application/basilisk/base/content/browser-syncui.js35
-rw-r--r--application/basilisk/base/content/browser.js2
-rw-r--r--application/basilisk/components/customizableui/CustomizableWidgets.jsm73
-rw-r--r--application/basilisk/components/customizableui/content/panelUI.inc.xul2
-rw-r--r--application/basilisk/locales/en-US/chrome/browser/browser.dtd2
-rw-r--r--application/basilisk/locales/en-US/chrome/browser/syncBrand.dtd2
-rw-r--r--application/basilisk/locales/en-US/chrome/browser/syncSetup.dtd2
7 files changed, 12 insertions, 106 deletions
diff --git a/application/basilisk/base/content/browser-syncui.js b/application/basilisk/base/content/browser-syncui.js
index 51bcb15d5..64290a2a9 100644
--- a/application/basilisk/base/content/browser-syncui.js
+++ b/application/basilisk/base/content/browser-syncui.js
@@ -293,17 +293,13 @@ var gSyncUI = {
*/
openSetup: function SUI_openSetup(wizardType, entryPoint = "syncbutton") {
- if (this.weaveService.fxAccountsEnabled) {
- this.openPrefs(entryPoint);
- } else {
- let win = Services.wm.getMostRecentWindow("Weave:AccountSetup");
- if (win)
- win.focus();
- else {
- window.openDialog("chrome://browser/content/sync/setup.xul",
- "weaveSetup", "centerscreen,chrome,resizable=no",
- wizardType);
- }
+ let win = Services.wm.getMostRecentWindow("Weave:AccountSetup");
+ if (win)
+ win.focus();
+ else {
+ window.openDialog("chrome://browser/content/sync/setup.xul",
+ "weaveSetup", "centerscreen,chrome,resizable=no",
+ wizardType);
}
},
@@ -328,23 +324,6 @@ var gSyncUI = {
gFxAccounts.openSignInAgainPage(entryPoint);
},
- openSyncedTabsPanel() {
- let placement = CustomizableUI.getPlacementOfWidget("sync-button");
- let area = placement ? placement.area : CustomizableUI.AREA_NAVBAR;
- let anchor = document.getElementById("sync-button") ||
- document.getElementById("PanelUI-menu-button");
- if (area == CustomizableUI.AREA_PANEL) {
- // The button is in the panel, so we need to show the panel UI, then our
- // subview.
- PanelUI.show().then(() => {
- PanelUI.showSubView("PanelUI-remotetabs", anchor, area);
- }).catch(Cu.reportError);
- } else {
- // It is placed somewhere else - just try and show it.
- PanelUI.showSubView("PanelUI-remotetabs", anchor, area);
- }
- },
-
/* After Sync is initialized we perform a once-only check for the sync
button being in "customize purgatory" and if so, move it to the panel.
This is done primarily for profiles created before SyncedTabs landed,
diff --git a/application/basilisk/base/content/browser.js b/application/basilisk/base/content/browser.js
index d45956191..9fb997a42 100644
--- a/application/basilisk/base/content/browser.js
+++ b/application/basilisk/base/content/browser.js
@@ -6347,7 +6347,7 @@ function checkEmptyPageOrigin(browser = gBrowser.selectedBrowser,
}
function BrowserOpenSyncTabs() {
- gSyncUI.openSyncedTabsPanel();
+ switchToTabHavingURI("about:sync-tabs", true);
}
/**
diff --git a/application/basilisk/components/customizableui/CustomizableWidgets.jsm b/application/basilisk/components/customizableui/CustomizableWidgets.jsm
index 642e06f0f..09b3f167e 100644
--- a/application/basilisk/components/customizableui/CustomizableWidgets.jsm
+++ b/application/basilisk/components/customizableui/CustomizableWidgets.jsm
@@ -23,8 +23,6 @@ XPCOMUtils.defineLazyModuleGetter(this, "CharsetMenu",
"resource://gre/modules/CharsetMenu.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "PrivateBrowsingUtils",
"resource://gre/modules/PrivateBrowsingUtils.jsm");
-XPCOMUtils.defineLazyModuleGetter(this, "SyncedTabs",
- "resource://services-sync/SyncedTabs.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "ContextualIdentityService",
"resource://gre/modules/ContextualIdentityService.jsm");
@@ -312,77 +310,6 @@ const CustomizableWidgets = [
obnode.setAttribute("element", "sync-status");
obnode.setAttribute("attribute", "syncstatus");
aNode.appendChild(obnode);
-
- // A somewhat complicated dance to format the mobilepromo label.
- let bundle = doc.getElementById("bundle_browser");
- let formatArgs = ["android", "ios"].map(os => {
- let link = doc.createElement("label");
- link.textContent = bundle.getString(`appMenuRemoteTabs.mobilePromo.${os}`);
- link.setAttribute("mobile-promo-os", os);
- link.className = "text-link remotetabs-promo-link";
- return link.outerHTML;
- });
- let promoParentElt = doc.getElementById("PanelUI-remotetabs-mobile-promo");
- // Put it all together...
- let contents = bundle.getFormattedString("appMenuRemoteTabs.mobilePromo.text2", formatArgs);
- promoParentElt.innerHTML = contents;
- // We manually manage the "click" event to open the promo links because
- // allowing the "text-link" widget handle it has 2 problems: (1) it only
- // supports button 0 and (2) it's tricky to intercept when it does the
- // open and auto-close the panel. (1) can probably be fixed, but (2) is
- // trickier without hard-coding here the knowledge of exactly what buttons
- // it does support.
- // So we allow left and middle clicks to open the link in a new tab and
- // close the panel; not setting a "href" attribute prevents the text-link
- // widget handling it, and we build the final URL in the click handler to
- // make testing easier (ie, so tests can change the pref after the links
- // were created and have the new pref value used.)
- promoParentElt.addEventListener("click", e => {
- let os = e.target.getAttribute("mobile-promo-os");
- if (!os || e.button > 1) {
- return;
- }
- let link = Services.prefs.getCharPref(`identity.mobilepromo.${os}`) + "synced-tabs";
- doc.defaultView.openUILinkIn(link, "tab");
- CustomizableUI.hidePanelForNode(e.target);
- });
- },
- onViewShowing(aEvent) {
- let doc = aEvent.target.ownerDocument;
- this._tabsList = doc.getElementById("PanelUI-remotetabs-tabslist");
- Services.obs.addObserver(this, SyncedTabs.TOPIC_TABS_CHANGED, false);
-
- if (SyncedTabs.isConfiguredToSyncTabs) {
- if (SyncedTabs.hasSyncedThisSession) {
- this.setDeckIndex(this.deckIndices.DECKINDEX_TABS);
- } else {
- // Sync hasn't synced tabs yet, so show the "fetching" panel.
- this.setDeckIndex(this.deckIndices.DECKINDEX_FETCHING);
- }
- // force a background sync.
- SyncedTabs.syncTabs().catch(ex => {
- Cu.reportError(ex);
- });
- // show the current list - it will be updated by our observer.
- this._showTabs();
- } else {
- // not configured to sync tabs, so no point updating the list.
- this.setDeckIndex(this.deckIndices.DECKINDEX_TABSDISABLED);
- }
- },
- onViewHiding() {
- Services.obs.removeObserver(this, SyncedTabs.TOPIC_TABS_CHANGED);
- this._tabsList = null;
- },
- _tabsList: null,
- observe(subject, topic, data) {
- switch (topic) {
- case SyncedTabs.TOPIC_TABS_CHANGED:
- this._showTabs();
- break;
- default:
- break;
- }
},
setDeckIndex(index) {
let deck = this._tabsList.ownerDocument.getElementById("PanelUI-remotetabs-deck");
diff --git a/application/basilisk/components/customizableui/content/panelUI.inc.xul b/application/basilisk/components/customizableui/content/panelUI.inc.xul
index e389b14bf..15fea435b 100644
--- a/application/basilisk/components/customizableui/content/panelUI.inc.xul
+++ b/application/basilisk/components/customizableui/content/panelUI.inc.xul
@@ -111,7 +111,7 @@
<vbox id="PanelUI-remotetabs-buttons">
<toolbarbutton id="PanelUI-remotetabs-view-sidebar"
class="subviewbutton"
- observes="viewTabsSidebar"
+ oncommand="BrowserOpenSyncTabs();"
label="&appMenuRemoteTabs.sidebar.label;"/>
<toolbarbutton id="PanelUI-remotetabs-syncnow"
observes="sync-status"
diff --git a/application/basilisk/locales/en-US/chrome/browser/browser.dtd b/application/basilisk/locales/en-US/chrome/browser/browser.dtd
index 09da91dee..02d66a5dc 100644
--- a/application/basilisk/locales/en-US/chrome/browser/browser.dtd
+++ b/application/basilisk/locales/en-US/chrome/browser/browser.dtd
@@ -349,7 +349,7 @@ These should match what Safari and other Apple applications use on OS X Lion. --
<!ENTITY appMenuRemoteTabs.openprefs.label "Sync Preferences">
<!ENTITY appMenuRemoteTabs.notsignedin.label "Sign in to view a list of tabs from your other devices.">
<!ENTITY appMenuRemoteTabs.signin.label "Sign in to Sync">
-<!ENTITY appMenuRemoteTabs.sidebar.label "View Synced Tabs Sidebar">
+<!ENTITY appMenuRemoteTabs.sidebar.label "View Synced Tabs">
<!ENTITY customizeMenu.addToToolbar.label "Add to Toolbar">
<!ENTITY customizeMenu.addToToolbar.accesskey "A">
diff --git a/application/basilisk/locales/en-US/chrome/browser/syncBrand.dtd b/application/basilisk/locales/en-US/chrome/browser/syncBrand.dtd
index 0c9e9201a..71a9f68af 100644
--- a/application/basilisk/locales/en-US/chrome/browser/syncBrand.dtd
+++ b/application/basilisk/locales/en-US/chrome/browser/syncBrand.dtd
@@ -3,5 +3,5 @@
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<!ENTITY syncBrand.shortName.label "Sync">
-<!ENTITY syncBrand.fullName.label "Firefox Sync">
+<!ENTITY syncBrand.fullName.label "Pale Moon Sync">
<!ENTITY syncBrand.fxAccount.label "Firefox Account">
diff --git a/application/basilisk/locales/en-US/chrome/browser/syncSetup.dtd b/application/basilisk/locales/en-US/chrome/browser/syncSetup.dtd
index 950a83553..2657156b7 100644
--- a/application/basilisk/locales/en-US/chrome/browser/syncSetup.dtd
+++ b/application/basilisk/locales/en-US/chrome/browser/syncSetup.dtd
@@ -16,7 +16,7 @@
<!-- New Account AND Existing Account -->
<!ENTITY server.label "Server">
-<!ENTITY serverType.default.label "Default: Mozilla &syncBrand.fullName.label; server">
+<!ENTITY serverType.default.label "Default: &syncBrand.fullName.label; server">
<!ENTITY serverType.custom2.label "Use a custom server…">
<!ENTITY signIn.account2.label "Account">
<!ENTITY signIn.account2.accesskey "A">