diff options
author | w | 2016-03-15 10:39:54 +0100 |
---|---|---|
committer | w | 2016-03-15 10:39:54 +0100 |
commit | 8ad9f2719abf04936135c55474e8c3b0277b1eb6 (patch) | |
tree | acafb8da929fd004126a7c8c0652d75b32e74093 | |
parent | 827bc9a8ade3a4161ad6b6fecb464b3706d7b670 (diff) | |
download | aur-8ad9f2719abf04936135c55474e8c3b0277b1eb6.tar.gz |
Update to FF 45 ESR
-rw-r--r-- | .SRCINFO | 29 | ||||
-rw-r--r-- | PKGBUILD | 49 | ||||
-rw-r--r-- | firefox-38-disable-location.services.mozilla.com.patch | 25 | ||||
-rw-r--r-- | firefox-38-disable-loop.patch | 757 | ||||
-rw-r--r-- | firefox-45-disable-location.services.mozilla.com.patch | 24 | ||||
-rw-r--r-- | firefox-45-disable-loop-pocket.patch | 1075 | ||||
-rw-r--r-- | firefox-45-disable-sponsored-tiles.patch (renamed from firefox-38-disable-sponsored-tiles.patch) | 65 | ||||
-rw-r--r-- | firefox-45-disable-telemetry.patch | 24 | ||||
-rw-r--r-- | firefox-45-prefs.patch (renamed from firefox-38-prefs.patch) | 122 | ||||
-rw-r--r-- | mozconfig | 1 |
10 files changed, 1273 insertions, 898 deletions
@@ -1,8 +1,8 @@ # Generated by makepkg 5.0.0 -# Wed Mar 9 09:01:22 UTC 2016 +# Tue Mar 15 09:38:13 UTC 2016 pkgbase = firefox-esr-privacy pkgdesc = Standalone web browser from mozilla.org - pkgver = 38.6.1 + pkgver = 45.0 pkgrel = 1 url = https://www.mozilla.org/firefox/ install = firefox.install @@ -33,26 +33,29 @@ pkgbase = firefox-esr-privacy depends = nss depends = hunspell depends = sqlite + conflicts = firefox options = !emptydirs - source = https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/38.6.1esr/source/firefox-38.6.1esr.source.tar.bz2 + source = https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/45.0esr/source/firefox-45.0esr.source.tar.xz source = firefox-install-dir.patch - source = firefox-38-disable-location.services.mozilla.com.patch - source = firefox-38-disable-loop.patch - source = firefox-38-disable-sponsored-tiles.patch - source = firefox-38-prefs.patch + source = firefox-45-disable-location.services.mozilla.com.patch + source = firefox-45-disable-loop-pocket.patch + source = firefox-45-disable-sponsored-tiles.patch + source = firefox-45-prefs.patch + source = firefox-45-disable-telemetry.patch source = firefox.desktop source = firefox-fixed-loading-icon.png source = mozconfig validpgpkeys = 2B90598A745E992F315E22C58AB132963A06537A - sha256sums = 91174d0118ac7178b5902bd6e82743b4eab5d567ec6431abebf4da093ffbd0ff + sha256sums = 0f46f6c2e6b4f7efea2cd688c27b154a2f000cf5a7e5cb676def8a6dbf3839a0 sha256sums = d86e41d87363656ee62e12543e2f5181aadcff448e406ef3218e91865ae775cd - sha256sums = 67a3aa79643837965902118927a37cecd098a83696d7e1b58e2040ce82b823df - sha256sums = 1579b3221638ab012782d898c26014024ccae02363b7be674c3192e1b8031608 - sha256sums = 6e0dcac677bf2e47df6a56b30c153e8bbd712fab7d4f7c05fc27c83bf60afbd9 - sha256sums = c618470c7cc8e42fd8b582980d94a132efad8a3533093703cbfc10169f036f70 + sha256sums = 8d9afa1f940a9dac689ead40a57990d1491f34a1787b2222f8f5b5e485d54103 + sha256sums = 4ffefee2f47e2de114df0d8a0c9a7b964d6e6959ce691e274e259ad8fd85682e + sha256sums = 1926a3d3b8996cdbdd8b970a12d9880e3272181fd4b07c2c9277ca7290b159c3 + sha256sums = 23e76c382612ef694a4d62cc91996c063266ebb2620cab8149cd22a59ca11293 + sha256sums = 5f97739f5962c98c94c0cf7a7361d9dac01be1366773cb2b45d2bd5938569fde sha256sums = 0bcfe168964338ec9c6e781479f2f8d06aa44f2262d6405ff8fa42983be89630 sha256sums = 68e3a5b47c6d175cc95b98b069a15205f027cab83af9e075818d38610feb6213 - sha256sums = 7b6729423fba99e45c022c1d5638554c0e6f19ff5ef79c466861a9418062ce4c + sha256sums = 28b56c316c2f3a4072f1f9bb773eb355b204f66805654cb96d5dcda6d2a9a73e pkgname = firefox-esr-privacy @@ -1,7 +1,6 @@ pkgname=firefox-esr-privacy -_basever=38 -_pkgdir=mozilla-esr${_basever} -pkgver=38.7.0 +_basever=45 +pkgver=45.0 pkgrel=1 pkgdesc="Standalone web browser from mozilla.org" arch=('i686' 'x86_64') @@ -13,49 +12,67 @@ depends=('gtk3' 'gtk2' 'libxt' 'startup-notification' makedepends=('unzip' 'zip' 'diffutils' 'python2' 'yasm' 'mesa' 'xorg-server' 'inetutils') install=firefox.install options=('!emptydirs') -source=(https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${pkgver}esr/source/firefox-${pkgver}esr.source.tar.bz2 +conflicts=('firefox') +source=(https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${pkgver}esr/source/firefox-${pkgver}esr.source.tar.xz firefox-install-dir.patch firefox-${_basever}-disable-location.services.mozilla.com.patch - firefox-${_basever}-disable-loop.patch + firefox-${_basever}-disable-loop-pocket.patch firefox-${_basever}-disable-sponsored-tiles.patch firefox-${_basever}-prefs.patch + firefox-${_basever}-disable-telemetry.patch firefox.desktop firefox-fixed-loading-icon.png mozconfig) -sha256sums=('91174d0118ac7178b5902bd6e82743b4eab5d567ec6431abebf4da093ffbd0ff' +sha256sums=('0f46f6c2e6b4f7efea2cd688c27b154a2f000cf5a7e5cb676def8a6dbf3839a0' 'd86e41d87363656ee62e12543e2f5181aadcff448e406ef3218e91865ae775cd' - '67a3aa79643837965902118927a37cecd098a83696d7e1b58e2040ce82b823df' - '1579b3221638ab012782d898c26014024ccae02363b7be674c3192e1b8031608' - '6e0dcac677bf2e47df6a56b30c153e8bbd712fab7d4f7c05fc27c83bf60afbd9' - 'c618470c7cc8e42fd8b582980d94a132efad8a3533093703cbfc10169f036f70' + '8d9afa1f940a9dac689ead40a57990d1491f34a1787b2222f8f5b5e485d54103' + '4ffefee2f47e2de114df0d8a0c9a7b964d6e6959ce691e274e259ad8fd85682e' + '1926a3d3b8996cdbdd8b970a12d9880e3272181fd4b07c2c9277ca7290b159c3' + '23e76c382612ef694a4d62cc91996c063266ebb2620cab8149cd22a59ca11293' + '5f97739f5962c98c94c0cf7a7361d9dac01be1366773cb2b45d2bd5938569fde' '0bcfe168964338ec9c6e781479f2f8d06aa44f2262d6405ff8fa42983be89630' '68e3a5b47c6d175cc95b98b069a15205f027cab83af9e075818d38610feb6213' - '7b6729423fba99e45c022c1d5638554c0e6f19ff5ef79c466861a9418062ce4c') + '28b56c316c2f3a4072f1f9bb773eb355b204f66805654cb96d5dcda6d2a9a73e') validpgpkeys=('2B90598A745E992F315E22C58AB132963A06537A') prepare() { - cd ${_pkgdir} + cd firefox-${pkgver}esr cp ${srcdir}/mozconfig mozconfig # Disable sponsored tiles patch -Np1 -i ${srcdir}/firefox-${_basever}-disable-sponsored-tiles.patch - # Disable Loop (Firefox Hello) - patch -Np1 -i ${srcdir}/firefox-${_basever}-disable-loop.patch + + # Disable Loop (Firefox Hello) and Pocket integration + patch -Np1 -i ${srcdir}/firefox-${_basever}-disable-loop-pocket.patch + # Remove loop and pocket source directories + rm -fr browser/extensions/loop/ browser/components/pocket/ + # Disable geo IP lookup on first run patch -Np1 -i ${srcdir}/firefox-${_basever}-disable-location.services.mozilla.com.patch + # Set some sensible defaults patch -Np1 -i ${srcdir}/firefox-${_basever}-prefs.patch + + # Disable telemetry options + patch -Np1 -i ${srcdir}/firefox-${_basever}-disable-telemetry.patch + # Fix build with Fontconfig 2.6 sed -i '/^ftcache.h/a ftfntfmt.h' config/system-headers + # Fix tab loading icon not working with libpng 1.6 cp ${srcdir}/firefox-fixed-loading-icon.png browser/themes/linux/tabbrowser/loading.png + # Install in /usr/lib/firefox without version number patch -Np1 -i ${srcdir}/firefox-install-dir.patch + + # Don't install files from the browser/features directory + # This directory only contains the loop program, which is not built + sed -i 's#@RESPATH@/browser/features/*#; @RESPATH@/browser/features/*#' browser/installer/package-manifest.in } build() { - cd ${_pkgdir} + cd firefox-${pkgver}esr # Fix configure: error: Your toolchain does not support C++0x/C++11 mode properly. Please upgrade your toolchain unset CPPFLAGS @@ -64,7 +81,7 @@ build() { } package() { - cd ${_pkgdir} + cd firefox-${pkgver}esr make -f client.mk DESTDIR="$pkgdir" INSTALL_SDK= install install -Dm644 ${srcdir}/firefox.desktop "$pkgdir/usr/share/applications/firefox.desktop" diff --git a/firefox-38-disable-location.services.mozilla.com.patch b/firefox-38-disable-location.services.mozilla.com.patch deleted file mode 100644 index 241df5b52b91..000000000000 --- a/firefox-38-disable-location.services.mozilla.com.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- mozilla-esr38.bak/toolkit/components/search/nsSearchService.js 2015-11-05 -+++ mozilla-esr38/toolkit/components/search/nsSearchService.js 2015-11-05 -@@ -442,6 +442,10 @@ - if (Services.prefs.prefHasUserValue("browser.search.region")) { - return; - } -+ -+ // Prevent Firefox from contacting location.services.mozilla.com on a new profile -+ Services.prefs.setCharPref("browser.search.region", "US"); -+ return; - - // If we have 'isUS' but no 'countryCode' then we are almost certainly - // a profile from Fx 34/35 that set 'isUS' based purely on a timezone -@@ -528,6 +532,11 @@ - Services.prefs.getCharPref("browser.search.countryCode"); - return; // pref exists, so we've done this before. - } catch(e) {} -+ -+ // No countryCode set, use US as default, don't contact location.services.mozilla.com -+ Services.prefs.setCharPref("browser.search.countryCode", "US"); -+ return; -+ - // We don't have it cached, so fetch it. fetchCountryCode() will call - // storeCountryCode if it gets a result (even if that happens after the - // promise resolves) diff --git a/firefox-38-disable-loop.patch b/firefox-38-disable-loop.patch deleted file mode 100644 index 3ef2fbd3b92e..000000000000 --- a/firefox-38-disable-loop.patch +++ /dev/null @@ -1,757 +0,0 @@ -diff -Naur mozilla-esr38.bak/browser/app/profile/firefox.js mozilla-esr38/browser/app/profile/firefox.js ---- mozilla-esr38.bak/browser/app/profile/firefox.js 2015-09-16 18:44:17.000000000 +0200 -+++ mozilla-esr38/browser/app/profile/firefox.js 2015-10-01 23:03:06.769052088 +0200 -@@ -1687,43 +1687,6 @@ - // (This is intentionally on the high side; see bug 746055.) - pref("image.mem.max_decoded_image_kb", 256000); - --pref("loop.enabled", false); --pref("loop.screenshare.enabled", false); --pref("loop.server", "https://loop.services.mozilla.com/v0"); --pref("loop.seenToS", "unseen"); --pref("loop.showPartnerLogo", true); --pref("loop.gettingStarted.seen", false); --pref("loop.gettingStarted.url", "https://www.mozilla.org/%LOCALE%/firefox/%VERSION%/hello/start/"); --pref("loop.gettingStarted.resumeOnFirstJoin", false); --pref("loop.learnMoreUrl", "https://www.firefox.com/hello/"); --pref("loop.legal.ToS_url", "https://www.mozilla.org/about/legal/terms/firefox-hello/"); --pref("loop.legal.privacy_url", "https://www.mozilla.org/privacy/firefox-hello/"); --pref("loop.do_not_disturb", false); --pref("loop.ringtone", "chrome://browser/content/loop/shared/sounds/ringtone.ogg"); --pref("loop.retry_delay.start", 60000); --pref("loop.retry_delay.limit", 300000); --pref("loop.ping.interval", 1800000); --pref("loop.ping.timeout", 10000); --pref("loop.feedback.baseUrl", "https://input.mozilla.org/api/v1/feedback"); --pref("loop.feedback.product", "Loop"); --pref("loop.debug.loglevel", "Error"); --pref("loop.debug.dispatcher", false); --pref("loop.debug.websocket", false); --pref("loop.debug.sdk", false); --#ifdef DEBUG --pref("loop.CSP", "default-src 'self' about: file: chrome: http://localhost:*; img-src 'self' data: https://www.gravatar.com/ about: file: chrome:; font-src 'none'; connect-src wss://*.tokbox.com https://*.opentok.com https://*.tokbox.com wss://*.mozilla.com https://*.mozilla.org wss://*.mozaws.net http://localhost:* ws://localhost:*; media-src blob:"); --#else --pref("loop.CSP", "default-src 'self' about: file: chrome:; img-src 'self' data: https://www.gravatar.com/ about: file: chrome:; font-src 'none'; connect-src wss://*.tokbox.com https://*.opentok.com https://*.tokbox.com wss://*.mozilla.com https://*.mozilla.org wss://*.mozaws.net; media-src blob:"); --#endif --pref("loop.oauth.google.redirect_uri", "urn:ietf:wg:oauth:2.0:oob:auto"); --pref("loop.oauth.google.scope", "https://www.google.com/m8/feeds"); --pref("loop.fxa_oauth.tokendata", ""); --pref("loop.fxa_oauth.profile", ""); --pref("loop.support_url", "https://support.mozilla.org/kb/group-conversations-firefox-hello-webrtc"); --pref("loop.contacts.gravatars.show", false); --pref("loop.contacts.gravatars.promo", true); --pref("loop.browserSharing.showInfoBar", true); -- - // serverURL to be assigned by services team - pref("services.push.serverURL", "wss://push.services.mozilla.com/"); - -diff -Naur mozilla-esr38.bak/browser/base/content/browser.css mozilla-esr38/browser/base/content/browser.css ---- mozilla-esr38.bak/browser/base/content/browser.css 2015-09-16 18:44:17.000000000 +0200 -+++ mozilla-esr38/browser/base/content/browser.css 2015-10-01 23:04:52.384053457 +0200 -@@ -14,30 +14,6 @@ - %endif - } - --/* These values are chosen to keep the Loop detached chat window from -- * getting too small. When it's too small, three bad things happen: -- * -- * - It looks terrible -- * - It's not really usable -- * - It's possible for the user to be transmitting video that's cropped by the -- * the edge of the window, so that they're not aware of it, which is a -- * privacy problem -- * -- * Note that if the chat window grows more users than Loop who want this -- * ability, we'll need to generalize. A partial patch for this is in -- * bug 1112264. -- */ -- --#chat-window { -- /* -- * In some ideal world, we'd have a simple way to express "block resizing -- * along any dimension beyond the point at which an overflow event would -- * occur". But none of -moz-{fit,max,min}-content do what we want here. So.. -- */ -- min-width: 320px; -- min-height: 280px; --} -- - #main-window[customize-entered] { - min-width: -moz-fit-content; - } -@@ -899,11 +875,6 @@ - -moz-binding: url("chrome://browser/content/translation-infobar.xml#translationbar"); - } - --/* Loop/ Hello */ --notification[value="loop-sharing-notification"] .close-icon { -- display: none; --} -- - /* Social */ - /* Note the chatbox 'width' values are duplicated in socialchat.xml */ - chatbox { ---- mozilla-esr38.bak/browser/base/content/browser.js 2015-10-02 10:25:01.208060687 +0200 -+++ mozilla-esr38/browser/base/content/browser.js 2015-10-02 10:30:54.430065264 +0200 -@@ -232,7 +232,6 @@ - #include browser-fullScreen.js - #include browser-fullZoom.js - #include browser-gestureSupport.js --#include browser-loop.js - #include browser-places.js - #include browser-plugins.js - #include browser-readinglist.js -@@ -1356,8 +1355,6 @@ - gDataNotificationInfoBar.init(); - #endif - -- LoopUI.init(); -- - gBrowserThumbnails.init(); - - // Add Devtools menuitems and listeners -@@ -1530,7 +1527,6 @@ - TabView.uninit(); - SocialUI.uninit(); - gBrowserThumbnails.uninit(); -- LoopUI.uninit(); - FullZoom.destroy(); - - Services.obs.removeObserver(gSessionHistoryObserver, "browser:purge-session-history"); -diff -Naur mozilla-esr38.bak/browser/base/content/browser.xul mozilla-esr38/browser/base/content/browser.xul ---- mozilla-esr38.bak/browser/base/content/browser.xul 2015-09-16 18:44:17.000000000 +0200 -+++ mozilla-esr38/browser/base/content/browser.xul 2015-10-01 23:06:27.242054686 +0200 -@@ -292,18 +292,6 @@ - noautofocus="true" - position="topcenter topright"/> - -- <panel id="loop-notification-panel" -- class="loop-panel social-panel" -- type="arrow" -- hidden="true" -- noautofocus="true"/> -- -- <panel id="loop-panel" -- class="loop-panel social-panel" -- type="arrow" -- orient="horizontal" -- hidden="true"/> -- - <menupopup id="processHangOptions" - onpopupshowing="ProcessHangMonitor.refreshMenu(window);"> - <menuitem id="processHangTerminateScript" -@@ -730,9 +718,9 @@ - fullscreentoolbar="true" mode="icons" customizable="true" - iconsize="small" - #ifdef MOZ_DEV_EDITION -- defaultset="urlbar-container,search-container,developer-button,bookmarks-menu-button,downloads-button,home-button,loop-button" -+ defaultset="urlbar-container,search-container,developer-button,bookmarks-menu-button,downloads-button,home-button" - #else -- defaultset="urlbar-container,search-container,bookmarks-menu-button,downloads-button,home-button,loop-button" -+ defaultset="urlbar-container,search-container,bookmarks-menu-button,downloads-button,home-button" - #endif - customizationtarget="nav-bar-customization-target" - overflowable="true" -diff -Naur mozilla-esr38.bak/browser/components/customizableui/content/panelUI.inc.xul mozilla-esr38/browser/components/customizableui/content/panelUI.inc.xul ---- mozilla-esr38.bak/browser/components/customizableui/content/panelUI.inc.xul 2015-09-16 18:44:18.000000000 +0200 -+++ mozilla-esr38/browser/components/customizableui/content/panelUI.inc.xul 2015-10-01 23:07:14.215055294 +0200 -@@ -157,8 +157,6 @@ - - <panelview id="PanelUI-socialapi" flex="1"/> - -- <panelview id="PanelUI-loopapi" flex="1"/> -- - <panelview id="PanelUI-feeds" flex="1" oncommand="FeedHandler.subscribeToFeed(null, event);"> - <label value="&feedsMenu.label;" class="panel-subview-header"/> - </panelview> -diff -Naur mozilla-esr38.bak/browser/components/customizableui/CustomizableUI.jsm mozilla-esr38/browser/components/customizableui/CustomizableUI.jsm ---- mozilla-esr38.bak/browser/components/customizableui/CustomizableUI.jsm 2015-09-16 18:44:18.000000000 +0200 -+++ mozilla-esr38/browser/components/customizableui/CustomizableUI.jsm 2015-10-01 23:07:47.877055731 +0200 -@@ -210,7 +210,6 @@ - "bookmarks-menu-button", - "downloads-button", - "home-button", -- "loop-button", - ]; - - if (Services.prefs.getBoolPref(kPrefWebIDEInNavbar)) { -@@ -308,15 +307,6 @@ - } - } - } -- -- if (currentVersion < 2) { -- // Nuke the old 'loop-call-button' out of orbit. -- CustomizableUI.removeWidgetFromArea("loop-call-button"); -- } -- -- if (currentVersion < 4) { -- CustomizableUI.removeWidgetFromArea("loop-button-throttled"); -- } - }, - - wrapWidget: function(aWidgetId) { -diff -Naur mozilla-esr38.bak/browser/components/customizableui/CustomizableWidgets.jsm mozilla-esr38/browser/components/customizableui/CustomizableWidgets.jsm ---- mozilla-esr38.bak/browser/components/customizableui/CustomizableWidgets.jsm 2015-09-16 18:44:18.000000000 +0200 -+++ mozilla-esr38/browser/components/customizableui/CustomizableWidgets.jsm 2015-10-01 23:08:18.342056125 +0200 -@@ -925,35 +925,6 @@ - win.MailIntegration.sendLinkForBrowser(win.gBrowser.selectedBrowser) - } - }, { -- id: "loop-button", -- type: "custom", -- label: "loop-call-button3.label", -- tooltiptext: "loop-call-button3.tooltiptext", -- defaultArea: CustomizableUI.AREA_NAVBAR, -- // Not in private browsing, see bug 1108187. -- showInPrivateBrowsing: false, -- introducedInVersion: 4, -- onBuild: function(aDocument) { -- // If we're not supposed to see the button, return zip. -- if (!Services.prefs.getBoolPref("loop.enabled")) { -- return null; -- } -- -- let node = aDocument.createElementNS(kNSXUL, "toolbarbutton"); -- node.setAttribute("id", this.id); -- node.classList.add("toolbarbutton-1"); -- node.classList.add("chromeclass-toolbar-additional"); -- node.classList.add("badged-button"); -- node.setAttribute("label", CustomizableUI.getLocalizedProperty(this, "label")); -- node.setAttribute("tooltiptext", CustomizableUI.getLocalizedProperty(this, "tooltiptext")); -- node.setAttribute("removable", "true"); -- node.addEventListener("command", function(event) { -- aDocument.defaultView.LoopUI.togglePanel(event); -- }); -- -- return node; -- } -- }, { - id: "web-apps-button", - label: "web-apps-button.label", - tooltiptext: "web-apps-button.tooltiptext", -diff -Naur mozilla-esr38.bak/browser/components/moz.build mozilla-esr38/browser/components/moz.build ---- mozilla-esr38.bak/browser/components/moz.build 2015-09-16 18:44:18.000000000 +0200 -+++ mozilla-esr38/browser/components/moz.build 2015-10-01 23:08:39.447056399 +0200 -@@ -10,7 +10,6 @@ - 'dirprovider', - 'downloads', - 'feeds', -- 'loop', - 'migration', - 'places', - 'preferences', -diff -Naur mozilla-esr38.bak/browser/components/uitour/UITour.jsm mozilla-esr38/browser/components/uitour/UITour.jsm ---- mozilla-esr38.bak/browser/components/uitour/UITour.jsm 2015-09-16 18:44:19.000000000 +0200 -+++ mozilla-esr38/browser/components/uitour/UITour.jsm 2015-10-01 23:11:24.277058535 +0200 -@@ -134,60 +134,6 @@ - query: "#panic-button", - widgetName: "panic-button", - }], -- ["loop", { -- allowAdd: true, -- query: "#loop-button", -- widgetName: "loop-button", -- }], -- ["loop-newRoom", { -- infoPanelPosition: "leftcenter topright", -- query: (aDocument) => { -- let loopUI = aDocument.defaultView.LoopUI; -- if (loopUI.selectedTab != "rooms") { -- return null; -- } -- // Use the parentElement full-width container of the button so our arrow -- // doesn't overlap the panel contents much. -- return loopUI.browser.contentDocument.querySelector(".new-room-button").parentElement; -- }, -- }], -- ["loop-roomList", { -- infoPanelPosition: "leftcenter topright", -- query: (aDocument) => { -- let loopUI = aDocument.defaultView.LoopUI; -- if (loopUI.selectedTab != "rooms") { -- return null; -- } -- return loopUI.browser.contentDocument.querySelector(".room-list"); -- }, -- }], -- ["loop-selectedRoomButtons", { -- infoPanelOffsetY: -20, -- infoPanelPosition: "start_after", -- query: (aDocument) => { -- let chatbox = aDocument.querySelector("chatbox[src^='about\:loopconversation'][selected]"); -- -- // Check that the real target actually exists -- if (!chatbox || !chatbox.contentDocument || -- !chatbox.contentDocument.querySelector(".call-action-group")) { -- return null; -- } -- -- // But anchor on the <browser> in the chatbox so the panel doesn't jump to undefined -- // positions when the copy/email buttons disappear e.g. when the feedback form opens or -- // somebody else joins the room. -- return chatbox.content; -- }, -- }], -- ["loop-signInUpLink", { -- query: (aDocument) => { -- let loopBrowser = aDocument.defaultView.LoopUI.browser; -- if (!loopBrowser) { -- return null; -- } -- return loopBrowser.contentDocument.querySelector(".signin-link"); -- }, -- }], - ["privateWindow", {query: "#privatebrowsing-button"}], - ["quit", {query: "#PanelUI-quit"}], - ["readerMode-urlBar", {query: "#reader-mode-button"}], -@@ -830,15 +776,11 @@ - this.hideInfo(aWindow); - // Ensure the menu panel is hidden before calling recreatePopup so popup events occur. - this.hideMenu(aWindow, "appMenu"); -- this.hideMenu(aWindow, "loop"); - - // Clean up panel listeners after calling hideMenu above. - aWindow.PanelUI.panel.removeEventListener("popuphiding", this.hideAppMenuAnnotations); - aWindow.PanelUI.panel.removeEventListener("ViewShowing", this.hideAppMenuAnnotations); - aWindow.PanelUI.panel.removeEventListener("popuphidden", this.onPanelHidden); -- let loopPanel = aWindow.document.getElementById("loop-notification-panel"); -- loopPanel.removeEventListener("popuphidden", this.onPanelHidden); -- loopPanel.removeEventListener("popuphiding", this.hideLoopPanelAnnotations); - - this.endUrlbarCapture(aWindow); - this.resetTheme(); -@@ -1506,31 +1448,6 @@ - } else if (aMenuName == "bookmarks") { - let menuBtn = aWindow.document.getElementById("bookmarks-menu-button"); - openMenuButton(menuBtn); -- } else if (aMenuName == "loop") { -- let toolbarButton = aWindow.LoopUI.toolbarButton; -- // It's possible to have a node that isn't placed anywhere -- if (!toolbarButton || !toolbarButton.node || -- !CustomizableUI.getPlacementOfWidget(toolbarButton.node.id)) { -- log.debug("Can't show the Loop menu since the toolbarButton isn't placed"); -- return; -- } -- -- let panel = aWindow.document.getElementById("loop-notification-panel"); -- panel.setAttribute("noautohide", true); -- if (panel.state != "open") { -- this.recreatePopup(panel); -- this.availableTargetsCache.clear(); -- } -- -- // An event object is expected but we don't want to toggle the panel with a click if the panel -- // is already open. -- aWindow.LoopUI.openCallPanel({ target: toolbarButton.node, }, "rooms").then(() => { -- if (aOpenCallback) { -- aOpenCallback(); -- } -- }); -- panel.addEventListener("popuphidden", this.onPanelHidden); -- panel.addEventListener("popuphiding", this.hideLoopPanelAnnotations); - } else if (aMenuName == "searchEngines") { - this.getTarget(aWindow, "searchProvider").then(target => { - openMenuButton(target.node); -@@ -1550,9 +1467,6 @@ - } else if (aMenuName == "bookmarks") { - let menuBtn = aWindow.document.getElementById("bookmarks-menu-button"); - closeMenuButton(menuBtn); -- } else if (aMenuName == "loop") { -- let panel = aWindow.document.getElementById("loop-notification-panel"); -- panel.hidePopup(); - } else if (aMenuName == "searchEngines") { - let menuBtn = this.targets.get("searchProvider").query(aWindow.document); - closeMenuButton(menuBtn); -@@ -1588,12 +1502,6 @@ - UITour.hideAnnotationsForPanel(aEvent, UITour.targetIsInAppMenu); - }, - -- hideLoopPanelAnnotations: function(aEvent) { -- UITour.hideAnnotationsForPanel(aEvent, (aTarget) => { -- return aTarget.targetName.startsWith("loop-") && aTarget.targetName != "loop-selectedRoomButtons"; -- }); -- }, -- - onPanelHidden: function(aEvent) { - aEvent.target.removeAttribute("noautohide"); - UITour.recreatePopup(aEvent.target); -@@ -1659,11 +1567,6 @@ - case "availableTargets": - this.getAvailableTargets(aMessageManager, aWindow, aCallbackID); - break; -- case "loop": -- this.sendPageCallback(aMessageManager, aCallbackID, { -- gettingStartedSeen: Services.prefs.getBoolPref("loop.gettingStarted.seen"), -- }); -- break; - case "selectedSearchEngine": - Services.search.init(rv => { - let engine; -@@ -1690,10 +1593,6 @@ - - setConfiguration: function(aConfiguration, aValue) { - switch (aConfiguration) { -- case "Loop:ResumeTourOnFirstJoin": -- // Ignore aValue in this case to avoid accidentally setting it to false. -- Services.prefs.setBoolPref("loop.gettingStarted.resumeOnFirstJoin", true); -- break; - default: - log.error("setConfiguration: Unknown configuration requested: " + aConfiguration); - break; -diff -Naur mozilla-esr38.bak/browser/locales/jar.mn mozilla-esr38/browser/locales/jar.mn ---- mozilla-esr38.bak/browser/locales/jar.mn 2015-09-16 18:44:21.000000000 +0200 -+++ mozilla-esr38/browser/locales/jar.mn 2015-10-01 23:11:56.637058954 +0200 -@@ -77,7 +77,6 @@ - locale/browser/devtools/webide.dtd (%chrome/browser/devtools/webide.dtd) - locale/browser/devtools/webide.properties (%chrome/browser/devtools/webide.properties) - locale/browser/lightweightThemes.properties (%chrome/browser/lightweightThemes.properties) -- locale/browser/loop/loop.properties (%chrome/browser/loop/loop.properties) - locale/browser/newTab.dtd (%chrome/browser/newTab.dtd) - locale/browser/newTab.properties (%chrome/browser/newTab.properties) - locale/browser/pageInfo.dtd (%chrome/browser/pageInfo.dtd) -diff -Naur mozilla-esr38.bak/browser/themes/linux/browser.css mozilla-esr38/browser/themes/linux/browser.css ---- mozilla-esr38.bak/browser/themes/linux/browser.css 2015-09-16 18:44:21.000000000 +0200 -+++ mozilla-esr38/browser/themes/linux/browser.css 2015-10-01 23:12:11.744059150 +0200 -@@ -1485,16 +1485,6 @@ - -moz-image-region: rect(0px, 32px, 16px, 16px); - } - --/* Loop/ Hello browser styles */ -- --notification[value="loop-sharing-notification"] .button-menubutton-button { -- min-width: 0; --} -- --notification[value="loop-sharing-notification"] .messageImage { -- list-style-image: url(chrome://browser/skin/webRTC-shareScreen-16.png); --} -- - #treecolAutoCompleteImage { - max-width : 36px; - } -diff -Naur mozilla-esr38.bak/browser/themes/linux/jar.mn mozilla-esr38/browser/themes/linux/jar.mn ---- mozilla-esr38.bak/browser/themes/linux/jar.mn 2015-09-16 18:44:21.000000000 +0200 -+++ mozilla-esr38/browser/themes/linux/jar.mn 2015-10-01 23:12:39.757059513 +0200 -@@ -109,9 +109,6 @@ - skin/classic/browser/webRTC-camera-white-16.png (../shared/webrtc/camera-white-16.png) - skin/classic/browser/webRTC-microphone-white-16.png (../shared/webrtc/microphone-white-16.png) - skin/classic/browser/webRTC-screen-white-16.png (../shared/webrtc/screen-white-16.png) -- skin/classic/browser/loop/menuPanel.png (loop/menuPanel.png) -- skin/classic/browser/loop/toolbar.png (loop/toolbar.png) -- skin/classic/browser/loop/toolbar-inverted.png (loop/toolbar-inverted.png) - skin/classic/browser/customizableui/background-noise-toolbar.png (customizableui/background-noise-toolbar.png) - skin/classic/browser/customizableui/customize-illustration.png (../shared/customizableui/customize-illustration.png) - skin/classic/browser/customizableui/customize-illustration-rtl.png (../shared/customizableui/customize-illustration-rtl.png) -diff -Naur mozilla-esr38.bak/browser/themes/osx/browser.css mozilla-esr38/browser/themes/osx/browser.css ---- mozilla-esr38.bak/browser/themes/osx/browser.css 2015-09-16 18:44:21.000000000 +0200 -+++ mozilla-esr38/browser/themes/osx/browser.css 2015-10-01 23:13:36.994060255 +0200 -@@ -1441,76 +1441,6 @@ - list-style-image: url(chrome://browser/skin/menuPanel-small@2x.png); - -moz-image-region: rect(0px, 192px, 32px, 160px); - } -- -- #loop-button > .toolbarbutton-badge-container { -- list-style-image: url("chrome://browser/skin/loop/toolbar@2x.png"); -- -moz-image-region: rect(0, 36px, 36px, 0); -- } -- -- toolbar[brighttext] #loop-button > .toolbarbutton-badge-container { -- list-style-image: url("chrome://browser/skin/loop/toolbar-inverted@2x.png"); -- } -- -- #loop-button[state="disabled"] > .toolbarbutton-badge-container, -- #loop-button[disabled="true"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 72px, 36px, 36px); -- } -- -- #loop-button:not([disabled="true"])[state="error"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 108px, 36px, 72px); -- } -- -- #loop-button:not([disabled="true"])[state="action"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 144px, 36px, 108px); -- } -- -- #loop-button:not([disabled="true"])[state="action"]:-moz-any(:hover,:hover:active,[open]) > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 180px, 36px, 144px); -- } -- -- #loop-button:not([disabled="true"])[state="active"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 216px, 36px, 180px); -- } -- -- #loop-button:not([disabled="true"])[state="active"]:-moz-any(:hover,:hover:active,[open]) > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 252px, 36px, 216px); -- } -- -- #loop-button[cui-areatype="menu-panel"] > .toolbarbutton-badge-container, -- toolbarpaletteitem[place="palette"] > #loop-button > .toolbarbutton-badge-container { -- list-style-image: url(chrome://browser/skin/loop/menuPanel@2x.png); -- -moz-image-region: rect(0, 64px, 64px, 0); -- } -- -- /* Make sure that the state icons are not shown in the customization palette. */ -- toolbarpaletteitem[place="palette"] > #loop-button > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 64px, 64px, 0) !important; -- } -- -- #loop-button[cui-areatype="menu-panel"][state="disabled"] > .toolbarbutton-badge-container, -- #loop-button[cui-areatype="menu-panel"][disabled="true"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 128px, 64px, 64px); -- } -- -- #loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="error"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 192px, 64px, 128px); -- } -- -- #loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="action"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 256px, 64px, 192px); -- } -- -- #loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="action"]:-moz-any(:hover,:hover:active,[open]) > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 320px, 64px, 256px); -- } -- -- #loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="active"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 384px, 64px, 320px); -- } -- -- #loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="active"]:-moz-any(:hover,:hover:active,[open]) > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 448px, 64px, 384px); -- } - } - - toolbar .toolbarbutton-1:not([type="menu-button"]), -@@ -4098,28 +4028,6 @@ - } - } - --/* Loop/ Hello browser styles */ -- --notification[value="loop-sharing-notification"] .notification-button { -- padding: 1px 5px; --} -- --notification[value="loop-sharing-notification"] .button-menubutton-button { -- -moz-appearance: none; -- min-width: 0; -- margin: 0; --} -- --notification[value="loop-sharing-notification"] .messageImage { -- list-style-image: url(chrome://browser/skin/webRTC-sharingScreen-menubar.png); --} --@media (min-resolution: 2dppx) { -- notification[value="loop-sharing-notification"] .messageImage { -- list-style-image: url(chrome://browser/skin/webRTC-sharingScreen-menubar@2x.png); -- } --} -- -- - .popup-notification-icon { - width: 64px; - height: 64px; -diff -Naur mozilla-esr38.bak/browser/themes/osx/jar.mn mozilla-esr38/browser/themes/osx/jar.mn ---- mozilla-esr38.bak/browser/themes/osx/jar.mn 2015-09-16 18:44:21.000000000 +0200 -+++ mozilla-esr38/browser/themes/osx/jar.mn 2015-10-01 23:13:56.447060507 +0200 -@@ -171,16 +171,6 @@ - skin/classic/browser/webRTC-sharingScreen-menubar.png - skin/classic/browser/webRTC-sharingScreen-menubar@2x.png - skin/classic/browser/webRTC-indicator.css -- skin/classic/browser/loop/menuPanel.png (loop/menuPanel.png) -- skin/classic/browser/loop/menuPanel@2x.png (loop/menuPanel@2x.png) -- skin/classic/browser/loop/toolbar.png (loop/toolbar.png) -- skin/classic/browser/loop/toolbar@2x.png (loop/toolbar@2x.png) -- skin/classic/browser/loop/toolbar-inverted.png (loop/toolbar-inverted.png) -- skin/classic/browser/loop/toolbar-inverted@2x.png (loop/toolbar-inverted@2x.png) -- skin/classic/browser/yosemite/loop/menuPanel.png (loop/menuPanel-yosemite.png) -- skin/classic/browser/yosemite/loop/menuPanel@2x.png (loop/menuPanel-yosemite@2x.png) -- skin/classic/browser/yosemite/loop/toolbar.png (loop/toolbar-yosemite.png) -- skin/classic/browser/yosemite/loop/toolbar@2x.png (loop/toolbar-yosemite@2x.png) - skin/classic/browser/customizableui/background-noise-toolbar.png (customizableui/background-noise-toolbar.png) - skin/classic/browser/customizableui/customize-titleBar-toggle.png (customizableui/customize-titleBar-toggle.png) - skin/classic/browser/customizableui/customize-titleBar-toggle@2x.png (customizableui/customize-titleBar-toggle@2x.png) -@@ -602,10 +592,6 @@ - % override chrome://browser/skin/Toolbar@2x.png chrome://browser/skin/yosemite/Toolbar@2x.png os=Darwin osversion>=10.10 - % override chrome://browser/skin/menuPanel.png chrome://browser/skin/yosemite/menuPanel.png os=Darwin osversion>=10.10 - % override chrome://browser/skin/menuPanel@2x.png chrome://browser/skin/yosemite/menuPanel@2x.png os=Darwin osversion>=10.10 --% override chrome://browser/skin/loop/menuPanel.png chrome://browser/skin/yosemite/loop/menuPanel.png os=Darwin osversion>=10.10 --% override chrome://browser/skin/loop/menuPanel@2x.png chrome://browser/skin/yosemite/loop/menuPanel@2x.png os=Darwin osversion>=10.10 --% override chrome://browser/skin/loop/toolbar.png chrome://browser/skin/yosemite/loop/toolbar.png os=Darwin osversion>=10.10 --% override chrome://browser/skin/loop/toolbar@2x.png chrome://browser/skin/yosemite/loop/toolbar@2x.png os=Darwin osversion>=10.10 - % override chrome://browser/skin/menuPanel-customize.png chrome://browser/skin/yosemite/menuPanel-customize.png os=Darwin osversion>=10.10 - % override chrome://browser/skin/menuPanel-customize@2x.png chrome://browser/skin/yosemite/menuPanel-customize@2x.png os=Darwin osversion>=10.10 - % override chrome://browser/skin/menuPanel-exit.png chrome://browser/skin/yosemite/menuPanel-exit.png os=Darwin osversion>=10.10 -diff -Naur mozilla-esr38.bak/browser/themes/shared/browser.inc mozilla-esr38/browser/themes/shared/browser.inc ---- mozilla-esr38.bak/browser/themes/shared/browser.inc 2015-09-16 18:44:21.000000000 +0200 -+++ mozilla-esr38/browser/themes/shared/browser.inc 2015-10-01 23:14:24.276060867 +0200 -@@ -2,7 +2,7 @@ - - % Note that zoom-reset-button is a bit different since it doesn't use an image and thus has the image with display: none. - %define nestedButtons #zoom-out-button, #zoom-reset-button, #zoom-in-button, #cut-button, #copy-button, #paste-button --%define primaryToolbarButtons #back-button, #forward-button, #home-button, #print-button, #downloads-button, #bookmarks-menu-button, #new-tab-button, #new-window-button, #fullscreen-button, #sync-button, #feed-button, #tabview-button, #social-share-button, #open-file-button, #find-button, #developer-button, #preferences-button, #privatebrowsing-button, #save-page-button, #switch-to-metro-button, #add-ons-button, #history-panelmenu, #nav-bar-overflow-button, #PanelUI-menu-button, #characterencoding-button, #email-link-button, #sidebar-button, @nestedButtons@, #e10s-button, #panic-button, #web-apps-button, #webide-button, #loop-button -+%define primaryToolbarButtons #back-button, #forward-button, #home-button, #print-button, #downloads-button, #bookmarks-menu-button, #new-tab-button, #new-window-button, #fullscreen-button, #sync-button, #feed-button, #tabview-button, #social-share-button, #open-file-button, #find-button, #developer-button, #preferences-button, #privatebrowsing-button, #save-page-button, #switch-to-metro-button, #add-ons-button, #history-panelmenu, #nav-bar-overflow-button, #PanelUI-menu-button, #characterencoding-button, #email-link-button, #sidebar-button, @nestedButtons@, #e10s-button, #panic-button, #web-apps-button, #webide-button - - %ifdef XP_MACOSX - % Prior to 10.7 there wasn't a native fullscreen button so we use #restore-button to exit fullscreen -diff -Naur mozilla-esr38.bak/browser/themes/shared/menupanel.inc.css mozilla-esr38/browser/themes/shared/menupanel.inc.css ---- mozilla-esr38.bak/browser/themes/shared/menupanel.inc.css 2015-09-16 18:44:22.000000000 +0200 -+++ mozilla-esr38/browser/themes/shared/menupanel.inc.css 2015-10-01 23:14:43.060061111 +0200 -@@ -175,42 +175,6 @@ - -moz-image-region: rect(0, 832px, 32px, 800px); - } - --#loop-button[cui-areatype="menu-panel"] > .toolbarbutton-badge-container, --toolbarpaletteitem[place="palette"] > #loop-button > .toolbarbutton-badge-container { -- list-style-image: url(chrome://browser/skin/loop/menuPanel.png); -- -moz-image-region: rect(0, 32px, 32px, 0); --} -- --/* Make sure that the state icons are not shown in the customization palette. */ --toolbarpaletteitem[place="palette"] > #loop-button > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 32px, 32px, 0) !important; --} -- --#loop-button[cui-areatype="menu-panel"][state="disabled"] > .toolbarbutton-badge-container, --#loop-button[cui-areatype="menu-panel"][disabled="true"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 64px, 32px, 32px); --} -- --#loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="error"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 96px, 32px, 64px); --} -- --#loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="action"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 128px, 32px, 96px); --} -- --#loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="action"]:-moz-any(:hover,:hover:active,[open]) > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 160px, 32px, 128px); --} -- --#loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="active"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 192px, 32px, 160px); --} -- --#loop-button[cui-areatype="menu-panel"]:not([disabled="true"])[state="active"]:-moz-any(:hover,:hover:active,[open]) > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 224px, 32px, 192px); --} -- - /* Wide panel control icons */ - - #edit-controls@inAnyPanel@ > toolbarbutton, -diff -Naur mozilla-esr38.bak/browser/themes/shared/toolbarbuttons.inc.css mozilla-esr38/browser/themes/shared/toolbarbuttons.inc.css ---- mozilla-esr38.bak/browser/themes/shared/toolbarbuttons.inc.css 2015-09-16 18:44:22.000000000 +0200 -+++ mozilla-esr38/browser/themes/shared/toolbarbuttons.inc.css 2015-10-01 23:15:01.476061349 +0200 -@@ -200,40 +200,6 @@ - } - %endif - --#loop-button > .toolbarbutton-badge-container { -- list-style-image: url(chrome://browser/skin/loop/toolbar.png); -- -moz-image-region: rect(0, 18px, 18px, 0); --} -- --toolbar[brighttext] #loop-button > .toolbarbutton-badge-container { -- list-style-image: url(chrome://browser/skin/loop/toolbar-inverted.png); --} -- --#loop-button[state="disabled"] > .toolbarbutton-badge-container, --#loop-button[disabled="true"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 36px, 18px, 18px); --} -- --#loop-button:not([disabled="true"])[state="error"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 54px, 18px, 36px); --} -- --#loop-button:not([disabled="true"])[state="action"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 72px, 18px, 54px); --} -- --#loop-button:not([disabled="true"])[state="action"]:-moz-any(:hover,:hover:active,[open]) > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 90px, 18px, 72px); --} -- --#loop-button:not([disabled="true"])[state="active"] > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 108px, 18px, 90px); --} -- --#loop-button:not([disabled="true"])[state="active"]:-moz-any(:hover,:hover:active,[open]) > .toolbarbutton-badge-container { -- -moz-image-region: rect(0, 126px, 18px, 108px); --} -- - #webide-button[cui-areatype="toolbar"] { - -moz-image-region: rect(0, 738px, 18px, 720px); - } -diff -Naur mozilla-esr38.bak/browser/themes/windows/browser.css mozilla-esr38/browser/themes/windows/browser.css ---- mozilla-esr38.bak/browser/themes/windows/browser.css 2015-09-16 18:44:22.000000000 +0200 -+++ mozilla-esr38/browser/themes/windows/browser.css 2015-10-01 23:15:21.836061613 +0200 -@@ -595,10 +595,6 @@ - #bookmarks-menu-button.toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon { - list-style-image: url("chrome://browser/skin/Toolbar-lunaSilver.png"); - } -- -- #loop-button > .toolbarbutton-badge-container { -- list-style-image: url(chrome://browser/skin/loop/toolbar-lunaSilver.png) -- } - } - %endif - -@@ -2503,19 +2499,6 @@ - -moz-appearance: none; - } - --/* Loop/ Hello browser styles */ -- --notification[value="loop-sharing-notification"] .button-menubutton-button { -- -moz-appearance: none; -- min-width: 0; -- border: 0; -- margin: 0; --} -- --notification[value="loop-sharing-notification"] .messageImage { -- list-style-image: url(chrome://browser/skin/webRTC-shareScreen-16.png); --} -- - /* Bookmarks roots menu-items */ - #subscribeToPageMenuitem:not([disabled]), - #subscribeToPageMenupopup, -diff -Naur mozilla-esr38.bak/browser/themes/windows/jar.mn mozilla-esr38/browser/themes/windows/jar.mn ---- mozilla-esr38.bak/browser/themes/windows/jar.mn 2015-09-16 18:44:22.000000000 +0200 -+++ mozilla-esr38/browser/themes/windows/jar.mn 2015-10-01 23:15:51.276061995 +0200 -@@ -131,10 +131,6 @@ - skin/classic/browser/webRTC-camera-white-16.png (../shared/webrtc/camera-white-16.png) - skin/classic/browser/webRTC-microphone-white-16.png (../shared/webrtc/microphone-white-16.png) - skin/classic/browser/webRTC-screen-white-16.png (../shared/webrtc/screen-white-16.png) -- skin/classic/browser/loop/menuPanel.png (loop/menuPanel.png) -- skin/classic/browser/loop/toolbar.png (loop/toolbar-XP.png) -- skin/classic/browser/loop/toolbar-inverted.png (loop/toolbar-inverted.png) -- skin/classic/browser/loop/toolbar-lunaSilver.png (loop/toolbar-lunaSilver.png) - skin/classic/browser/customizableui/background-noise-toolbar.png (customizableui/background-noise-toolbar.png) - skin/classic/browser/customizableui/customizeFavicon.ico (../shared/customizableui/customizeFavicon.ico) - skin/classic/browser/customizableui/customize-illustration.png (../shared/customizableui/customize-illustration.png) -@@ -600,11 +596,6 @@ - skin/classic/aero/browser/webRTC-camera-white-16.png (../shared/webrtc/camera-white-16.png) - skin/classic/aero/browser/webRTC-microphone-white-16.png (../shared/webrtc/microphone-white-16.png) - skin/classic/aero/browser/webRTC-screen-white-16.png (../shared/webrtc/screen-white-16.png) -- skin/classic/aero/browser/loop/menuPanel.png (loop/menuPanel.png) -- skin/classic/aero/browser/loop/menuPanel-aero.png (loop/menuPanel-aero.png) -- skin/classic/aero/browser/loop/toolbar.png (loop/toolbar.png) -- skin/classic/aero/browser/loop/toolbar-aero.png (loop/toolbar-aero.png) -- skin/classic/aero/browser/loop/toolbar-inverted.png (loop/toolbar-inverted.png) - skin/classic/aero/browser/customizableui/background-noise-toolbar.png (customizableui/background-noise-toolbar.png) - skin/classic/aero/browser/customizableui/customize-illustration.png (../shared/customizableui/customize-illustration.png) - skin/classic/aero/browser/customizableui/customize-illustration-rtl.png (../shared/customizableui/customize-illustration-rtl.png) -@@ -968,9 +959,3 @@ - - % override chrome://browser/skin/tabbrowser/tab-arrow-left.png chrome://browser/skin/tabbrowser/tab-arrow-left-XPVista7.png os=WINNT osversion=6 - % override chrome://browser/skin/tabbrowser/tab-arrow-left.png chrome://browser/skin/tabbrowser/tab-arrow-left-XPVista7.png os=WINNT osversion=6.1 -- --% override chrome://browser/skin/loop/toolbar.png chrome://browser/skin/loop/toolbar-aero.png os=WINNT osversion=6 --% override chrome://browser/skin/loop/toolbar.png chrome://browser/skin/loop/toolbar-aero.png os=WINNT osversion=6.1 -- --% override chrome://browser/skin/loop/menuPanel.png chrome://browser/skin/loop/menuPanel-aero.png os=WINNT osversion=6 --% override chrome://browser/skin/loop/menuPanel.png chrome://browser/skin/loop/menuPanel-aero.png os=WINNT osversion=6.1 diff --git a/firefox-45-disable-location.services.mozilla.com.patch b/firefox-45-disable-location.services.mozilla.com.patch new file mode 100644 index 000000000000..42f25557ec75 --- /dev/null +++ b/firefox-45-disable-location.services.mozilla.com.patch @@ -0,0 +1,24 @@ +--- firefox-45.0esr.bak/toolkit/components/search/nsSearchService.js 2016-03-13 ++++ firefox-45.0esr/toolkit/components/search/nsSearchService.js 2016-03-13 +@@ -436,6 +436,10 @@ + return; + } + ++ // Prevent Firefox from contacting location.services.mozilla.com on a new profile ++ Services.prefs.setCharPref("browser.search.region", "US"); ++ return; ++ + // If we have 'isUS' but no 'countryCode' then we are almost certainly + // a profile from Fx 34/35 that set 'isUS' based purely on a timezone + // check. If this said they were US, we force region to be US. +@@ -522,6 +526,10 @@ + countryCode = Services.prefs.getCharPref("browser.search.countryCode"); + } catch(e) {} + ++ // No countryCode set, use US as default, don't contact location.services.mozilla.com ++ Services.prefs.setCharPref("browser.search.countryCode", "US"); ++ return; ++ + if (!countryCode) { + // We don't have it cached, so fetch it. fetchCountryCode() will call + // storeCountryCode if it gets a result (even if that happens after the diff --git a/firefox-45-disable-loop-pocket.patch b/firefox-45-disable-loop-pocket.patch new file mode 100644 index 000000000000..0dfae178ba27 --- /dev/null +++ b/firefox-45-disable-loop-pocket.patch @@ -0,0 +1,1075 @@ +diff -Naur firefox-45.0esr.bak/browser/app/profile/firefox.js firefox-45.0esr/browser/app/profile/firefox.js +--- firefox-45.0esr.bak/browser/app/profile/firefox.js 2016-03-13 ++++ firefox-45.0esr/browser/app/profile/firefox.js 2016-03-13 +@@ -1617,13 +1617,6 @@ + // and because (normally) these errors are not persisted anywhere. + pref("reader.errors.includeURLs", true); + +-pref("browser.pocket.enabled", true); +-pref("browser.pocket.api", "api.getpocket.com"); +-pref("browser.pocket.site", "getpocket.com"); +-pref("browser.pocket.oAuthConsumerKey", "40249-e88c401e1b1f2242d9e441c4"); +-pref("browser.pocket.useLocaleList", true); +-pref("browser.pocket.enabledLocales", "cs de en-GB en-US en-ZA es-ES es-MX fr hu it ja ja-JP-mac ko nl pl pt-BR pt-PT ru zh-CN zh-TW"); +- + pref("view_source.tab", true); + + pref("dom.webnotifications.serviceworker.enabled", true); +diff -Naur firefox-45.0esr.bak/browser/base/content/browser-context.inc firefox-45.0esr/browser/base/content/browser-context.inc +--- firefox-45.0esr.bak/browser/base/content/browser-context.inc 2016-03-13 ++++ firefox-45.0esr/browser/base/content/browser-context.inc 2016-03-13 +@@ -79,10 +79,6 @@ + label="&saveLinkCmd.label;" + accesskey="&saveLinkCmd.accesskey;" + oncommand="gContextMenu.saveLink();"/> +- <menuitem id="context-savelinktopocket" +- label="&saveLinkToPocketCmd.label;" +- accesskey="&saveLinkToPocketCmd.accesskey;" +- oncommand="gContextMenu.saveLinkToPocket();"/> + <menu id="context-marklinkMenu" label="&social.marklinkMenu.label;" + accesskey="&social.marklinkMenu.accesskey;"> + <menupopup/> +@@ -270,10 +266,6 @@ + label="&savePageCmd.label;" + accesskey="&savePageCmd.accesskey2;" + oncommand="gContextMenu.savePageAs();"/> +- <menuitem id="context-pocket" +- label="&saveToPocketCmd.label;" +- accesskey="&saveToPocketCmd.accesskey;" +- oncommand="gContextMenu.savePageToPocket();"/> + <menu id="context-markpageMenu" label="&social.markpageMenu.label;" + accesskey="&social.markpageMenu.accesskey;"> + <menupopup/> +diff -Naur firefox-45.0esr.bak/browser/base/content/browser.css firefox-45.0esr/browser/base/content/browser.css +--- firefox-45.0esr.bak/browser/base/content/browser.css 2016-03-13 ++++ firefox-45.0esr/browser/base/content/browser.css 2016-03-13 +@@ -18,30 +18,6 @@ + %endif + } + +-/* These values are chosen to keep the Loop detached chat window from +- * getting too small. When it's too small, three bad things happen: +- * +- * - It looks terrible +- * - It's not really usable +- * - It's possible for the user to be transmitting video that's cropped by the +- * the edge of the window, so that they're not aware of it, which is a +- * privacy problem +- * +- * Note that if the chat window grows more users than Loop who want this +- * ability, we'll need to generalize. A partial patch for this is in +- * bug 1112264. +- */ +- +-#chat-window { +- /* +- * In some ideal world, we'd have a simple way to express "block resizing +- * along any dimension beyond the point at which an overflow event would +- * occur". But none of -moz-{fit,max,min}-content do what we want here. So.. +- */ +- min-width: 260px; +- min-height: 315px; +-} +- + #main-window[customize-entered] { + min-width: -moz-fit-content; + } +@@ -897,68 +873,6 @@ + -moz-binding: url("chrome://browser/content/translation-infobar.xml#translationbar"); + } + +-/* Social */ +-/* Note the chatbox 'width' values are duplicated in socialchat.xml */ +-chatbox { +- -moz-binding: url("chrome://browser/content/socialchat.xml#chatbox"); +- transition: height 150ms ease-out, width 150ms ease-out; +- height: 290px; +- width: 300px; /* CHAT_WIDTH_OPEN in socialchat.xml */ +-} +- +-chatbox[customSize] { +- width: 350px; /* CHAT_WIDTH_OPEN_ALT in socialchat.xml */ +-} +- +-#chat-window[customSize] { +- min-width: 350px; +-} +- +-chatbox[customSize="loopChatEnabled"] { +- /* 430px as defined per UX */ +- height: 430px; +-} +- +-#chat-window[customSize="loopChatEnabled"] { +- /* 325px + 30px top bar height. */ +- min-height: calc(325px + 30px); +-} +- +-chatbox[customSize="loopChatMessageAppended"] { +- /* 430px as defined per UX */ +- height: 430px; +-} +- +-chatbox[customSize="loopChatDisabledMessageAppended"] { +- /* 388px as defined per UX */ +- height: 388px; +-} +- +-#chat-window[customSize="loopChatMessageAppended"] { +- /* 445px + 30px top bar height. */ +- min-height: calc(400px + 30px); +-} +- +-chatbox[minimized="true"] { +- width: 160px; +- height: 20px; /* CHAT_WIDTH_MINIMIZED in socialchat.xml */ +-} +- +-chatbar { +- -moz-binding: url("chrome://browser/content/socialchat.xml#chatbar"); +- height: 0; +- max-height: 0; +-} +- +-.chatbar-innerbox { +- margin: -285px 0 0; +-} +- +-chatbar[customSize] > .chatbar-innerbox { +- /* 450px to make room for the maximum custom-size chatbox; currently 'loopChatMessageAppended'. */ +- margin-top: -450px; +-} +- + /* Apply crisp rendering for favicons at exactly 2dppx resolution */ + @media (resolution: 2dppx) { + #social-sidebar-favico, +diff -Naur firefox-45.0esr.bak/browser/base/content/browser.js firefox-45.0esr/browser/base/content/browser.js +--- firefox-45.0esr.bak/browser/base/content/browser.js 2016-03-13 ++++ firefox-45.0esr/browser/base/content/browser.js 2016-03-13 +@@ -53,37 +53,6 @@ + "@mozilla.org/windows-ui-utils;1", "nsIWindowsUIUtils"); + XPCOMUtils.defineLazyModuleGetter(this, "LightweightThemeManager", + "resource://gre/modules/LightweightThemeManager.jsm"); +-XPCOMUtils.defineLazyModuleGetter(this, "Pocket", +- "resource:///modules/Pocket.jsm"); +- +-// Can't use XPCOMUtils for these because the scripts try to define the variables +-// on window, and so the defineProperty inside defineLazyGetter fails. +-Object.defineProperty(window, "pktApi", { +- get: function() { +- // Avoid this getter running again: +- delete window.pktApi; +- Services.scriptloader.loadSubScript("chrome://browser/content/pocket/pktApi.js", window); +- return window.pktApi; +- }, +- configurable: true, +- enumerable: true +-}); +- +-function pktUIGetter(prop) { +- return { +- get: function() { +- // Avoid either of these getters running again: +- delete window.pktUI; +- delete window.pktUIMessaging; +- Services.scriptloader.loadSubScript("chrome://browser/content/pocket/main.js", window); +- return window[prop]; +- }, +- configurable: true, +- enumerable: true +- }; +-} +-Object.defineProperty(window, "pktUI", pktUIGetter("pktUI")); +-Object.defineProperty(window, "pktUIMessaging", pktUIGetter("pktUIMessaging")); + + XPCOMUtils.defineLazyGetter(this, "gBrowserBundle", function() { + return Services.strings.createBundle('chrome://browser/locale/browser.properties'); +diff -Naur firefox-45.0esr.bak/browser/base/content/browser-menubar.inc firefox-45.0esr/browser/base/content/browser-menubar.inc +--- firefox-45.0esr.bak/browser/base/content/browser-menubar.inc 2016-03-13 ++++ firefox-45.0esr/browser/base/content/browser-menubar.inc 2016-03-13 +@@ -413,7 +413,6 @@ + oncommand="BookmarksEventHandler.onCommand(event, this.parentNode._placesView);" + onclick="BookmarksEventHandler.onClick(event, this.parentNode._placesView);" + onpopupshowing="BookmarkingUI.onMainMenuPopupShowing(event); +- BookmarkingUI.updatePocketItemVisibility('menu_'); + if (!this.parentNode._placesView) + new PlacesMenu(event, 'place:folder=BOOKMARKS_MENU');" + tooltip="bhTooltip" popupsinherittooltip="true"> +@@ -422,12 +421,6 @@ + command="Browser:ShowAllBookmarks" + key="manBookmarkKb"/> + <menuseparator id="organizeBookmarksSeparator"/> +- <menuitem id="menu_pocket" label="&pocketMenuitem.label;" +-#ifndef XP_MACOSX +- class="menuitem-iconic" +-#endif +- oncommand="openUILink(Pocket.listURL, event);"/> +- <menuseparator id="menu_pocketSeparator"/> + <menuitem id="menu_bookmarkThisPage" + command="Browser:AddBookmarkAs" + observes="bookmarkThisPageBroadcaster" +@@ -500,11 +493,6 @@ + key="key_openAddons" + command="Tools:Addons"/> + +- <menuitem id="menu_openLoop" +- label="&loopMenuItem.label;" +- accesskey = "&loopMenuItem.accesskey;" +- oncommand="LoopUI.togglePanel();"/> +- + <!-- only one of sync-setup, sync-syncnowitem or sync-reauthitem will be showing at once --> + <menuitem id="sync-setup" + label="&syncSignIn.label;" +diff -Naur firefox-45.0esr.bak/browser/base/content/browser-places.js firefox-45.0esr/browser/base/content/browser-places.js +--- firefox-45.0esr.bak/browser/base/content/browser-places.js 2016-03-13 ++++ firefox-45.0esr/browser/base/content/browser-places.js 2016-03-13 +@@ -1552,12 +1552,6 @@ + PlacesCommandHook.updateBookmarkAllTabsCommand(); + }, + +- updatePocketItemVisibility: function BUI_updatePocketItemVisibility(prefix) { +- let hidden = !CustomizableUI.getPlacementOfWidget("pocket-button"); +- document.getElementById(prefix + "pocket").hidden = hidden; +- document.getElementById(prefix + "pocketSeparator").hidden = hidden; +- }, +- + _showBookmarkedNotification: function BUI_showBookmarkedNotification() { + function getCenteringTransformForRects(rectToPosition, referenceRect) { + let topDiff = referenceRect.top - rectToPosition.top; +@@ -1679,7 +1673,6 @@ + + onPanelMenuViewShowing: function BUI_onViewShowing(aEvent) { + this._updateBookmarkPageMenuItem(); +- this.updatePocketItemVisibility("panelMenu_"); + // Update checked status of the toolbar toggle. + let viewToolbar = document.getElementById("panelMenu_viewBookmarksToolbar"); + let personalToolbar = document.getElementById("PersonalToolbar"); +diff -Naur firefox-45.0esr.bak/browser/base/content/browser.xul firefox-45.0esr/browser/base/content/browser.xul +--- firefox-45.0esr.bak/browser/base/content/browser.xul 2016-03-13 ++++ firefox-45.0esr/browser/base/content/browser.xul 2016-03-13 +@@ -290,18 +290,6 @@ + noautofocus="true" + position="topcenter topright"/> + +- <panel id="loop-notification-panel" +- class="loop-panel social-panel" +- type="arrow" +- hidden="true" +- noautofocus="true"/> +- +- <panel id="loop-panel" +- class="loop-panel social-panel" +- type="arrow" +- orient="horizontal" +- hidden="true"/> +- + <menupopup id="toolbar-context-menu" + onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));"> + <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)" +@@ -609,9 +597,9 @@ + fullscreentoolbar="true" mode="icons" customizable="true" + iconsize="small" + #ifdef MOZ_DEV_EDITION +- defaultset="urlbar-container,search-container,developer-button,bookmarks-menu-button,pocket-button,downloads-button,home-button,loop-button" ++ defaultset="urlbar-container,search-container,developer-button,bookmarks-menu-button,downloads-button,home-button" + #else +- defaultset="urlbar-container,search-container,bookmarks-menu-button,pocket-button,downloads-button,home-button,loop-button" ++ defaultset="urlbar-container,search-container,bookmarks-menu-button,downloads-button,home-button" + #endif + customizationtarget="nav-bar-customization-target" + overflowable="true" +@@ -787,7 +775,6 @@ + oncommand="BookmarksEventHandler.onCommand(event, this.parentNode._placesView);" + onclick="BookmarksEventHandler.onClick(event, this.parentNode._placesView);" + onpopupshowing="BookmarkingUI.onPopupShowing(event); +- BookmarkingUI.updatePocketItemVisibility('BMB_'); + BookmarkingUI.attachPlacesView(event, this);" + tooltip="bhTooltip" popupsinherittooltip="true"> + <menuitem id="BMB_viewBookmarksSidebar" +@@ -804,11 +791,6 @@ + command="Browser:ShowAllBookmarks" + key="manBookmarkKb"/> + <menuseparator/> +- <menuitem id="BMB_pocket" +- class="menuitem-iconic bookmark-item subviewbutton" +- label="&pocketMenuitem.label;" +- oncommand="openUILink(Pocket.listURL, event);"/> +- <menuseparator id="BMB_pocketSeparator"/> + <menuitem id="BMB_subscribeToPageMenuitem" + #ifndef XP_MACOSX + class="menuitem-iconic subviewbutton" +diff -Naur firefox-45.0esr.bak/browser/base/content/nsContextMenu.js firefox-45.0esr/browser/base/content/nsContextMenu.js +--- firefox-45.0esr.bak/browser/base/content/nsContextMenu.js 2016-03-13 ++++ firefox-45.0esr/browser/base/content/nsContextMenu.js 2016-03-13 +@@ -13,8 +13,6 @@ + + XPCOMUtils.defineLazyModuleGetter(this, "CustomizableUI", + "resource:///modules/CustomizableUI.jsm"); +-XPCOMUtils.defineLazyModuleGetter(this, "Pocket", +- "resource:///modules/Pocket.jsm"); + XPCOMUtils.defineLazyModuleGetter(this, "LoginHelper", + "resource://gre/modules/LoginHelper.jsm"); + +@@ -216,25 +214,6 @@ + SimpleServiceDiscovery.services.length > 0 && + CastingApps.getServicesForVideo(this.target).length > 0; + this.setItemAttr("context-castvideo", "disabled", !shouldShowCast); +- +- this.initPocketItems(); +- }, +- +- initPocketItems: function CM_initPocketItems() { +- var showSaveCurrentPageToPocket = !(this.onTextInput || this.onLink || +- this.isContentSelected || this.onImage || +- this.onCanvas || this.onVideo || this.onAudio); +- let targetURI = (this.onSaveableLink || this.onPlainTextLink) ? this.linkURI : this.browser.currentURI; +- let canPocket = CustomizableUI.getPlacementOfWidget("pocket-button") && +- window.pktApi && window.pktApi.isUserLoggedIn(); +- canPocket = canPocket && (targetURI.schemeIs("http") || targetURI.schemeIs("https") || +- (targetURI.schemeIs("about") && ReaderMode.getOriginalUrl(targetURI.spec))); +- canPocket = canPocket && window.gBrowser && this.browser.getTabBrowser() == window.gBrowser; +- +- this.showItem("context-pocket", canPocket && showSaveCurrentPageToPocket); +- let showSaveLinkToPocket = canPocket && !showSaveCurrentPageToPocket && +- (this.onSaveableLink || this.onPlainTextLink); +- this.showItem("context-savelinktopocket", showSaveLinkToPocket); + }, + + initViewItems: function CM_initViewItems() { +@@ -1723,14 +1702,6 @@ + saveBrowser(this.browser); + }, + +- saveLinkToPocket: function CM_saveLinkToPocket() { +- Pocket.savePage(this.browser, this.linkURL); +- }, +- +- savePageToPocket: function CM_saveToPocket() { +- Pocket.savePage(this.browser, this.browser.currentURI.spec, this.browser.contentTitle); +- }, +- + printFrame: function CM_printFrame() { + PrintUtils.printWindow(this.frameOuterWindowID, this.browser); + }, +diff -Naur firefox-45.0esr.bak/browser/components/customizableui/content/panelUI.inc.xul firefox-45.0esr/browser/components/customizableui/content/panelUI.inc.xul +--- firefox-45.0esr.bak/browser/components/customizableui/content/panelUI.inc.xul 2016-03-13 ++++ firefox-45.0esr/browser/components/customizableui/content/panelUI.inc.xul 2016-03-13 +@@ -196,10 +196,6 @@ + observes="bookmarkThisPageBroadcaster" + command="Browser:AddBookmarkAs" + onclick="PanelUI.hide();"/> +- <toolbarseparator id="panelMenu_pocketSeparator"/> +- <toolbarbutton id="panelMenu_pocket" label="&pocketMenuitem.label;" +- class="subviewbutton cui-withicon" +- oncommand="openUILink(Pocket.listURL, event);"/> + <toolbarseparator/> + <toolbarbutton id="panelMenu_viewBookmarksSidebar" + label="&viewBookmarksSidebar2.label;" +@@ -243,8 +239,6 @@ + + <panelview id="PanelUI-socialapi" flex="1"/> + +- <panelview id="PanelUI-loopapi" flex="1"/> +- + <panelview id="PanelUI-feeds" flex="1" oncommand="FeedHandler.subscribeToFeed(null, event);"> + <label value="&feedsMenu.label;" class="panel-subview-header"/> + </panelview> +@@ -315,11 +309,6 @@ + </vbox> + </panelview> + +- <panelview id="PanelUI-pocketView" flex="1"> +- <vbox class="panel-subview-body"> +- </vbox> +- </panelview> +- + + </panelmultiview> + <!-- These menupopups are located here to prevent flickering, +diff -Naur firefox-45.0esr.bak/browser/components/customizableui/CustomizableUI.jsm firefox-45.0esr/browser/components/customizableui/CustomizableUI.jsm +--- firefox-45.0esr.bak/browser/components/customizableui/CustomizableUI.jsm 2016-03-13 ++++ firefox-45.0esr/browser/components/customizableui/CustomizableUI.jsm 2016-03-13 +@@ -64,7 +64,6 @@ + * version the button is removed in as the value. e.g. "pocket-button": 5 + */ + var ObsoleteBuiltinButtons = { +- "loop-button": 5 + }; + + /** +@@ -219,18 +218,8 @@ + "bookmarks-menu-button", + "downloads-button", + "home-button", +- "loop-button", + ]; + +- // Insert the Pocket button after the bookmarks button if it's present. +- for (let widgetDefinition of CustomizableWidgets) { +- if (widgetDefinition.id == "pocket-button") { +- let idx = navbarPlacements.indexOf("bookmarks-menu-button") + 1; +- navbarPlacements.splice(idx, 0, widgetDefinition.id); +- break; +- } +- } +- + if (Services.prefs.getBoolPref(kPrefWebIDEInNavbar)) { + navbarPlacements.push("webide-button"); + } +@@ -355,15 +344,6 @@ + } + } + } +- +- if (currentVersion < 2) { +- // Nuke the old 'loop-call-button' out of orbit. +- CustomizableUI.removeWidgetFromArea("loop-call-button"); +- } +- +- if (currentVersion < 4) { +- CustomizableUI.removeWidgetFromArea("loop-button-throttled"); +- } + }, + + /** +diff -Naur firefox-45.0esr.bak/browser/components/customizableui/CustomizableWidgets.jsm firefox-45.0esr/browser/components/customizableui/CustomizableWidgets.jsm +--- firefox-45.0esr.bak/browser/components/customizableui/CustomizableWidgets.jsm 2016-03-13 ++++ firefox-45.0esr/browser/components/customizableui/CustomizableWidgets.jsm 2016-03-13 +@@ -18,8 +18,6 @@ + "resource:///modules/PlacesUIUtils.jsm"); + XPCOMUtils.defineLazyModuleGetter(this, "RecentlyClosedTabsAndWindowsMenuUtils", + "resource:///modules/sessionstore/RecentlyClosedTabsAndWindowsMenuUtils.jsm"); +-XPCOMUtils.defineLazyModuleGetter(this, "Pocket", +- "resource:///modules/Pocket.jsm"); + XPCOMUtils.defineLazyModuleGetter(this, "ShortcutUtils", + "resource://gre/modules/ShortcutUtils.jsm"); + XPCOMUtils.defineLazyModuleGetter(this, "CharsetMenu", +@@ -1219,68 +1217,6 @@ + }); + } + +-if (Services.prefs.getBoolPref("browser.pocket.enabled")) { +- let isEnabledForLocale = true; +- if (Services.prefs.getBoolPref("browser.pocket.useLocaleList")) { +- let chromeRegistry = Cc["@mozilla.org/chrome/chrome-registry;1"] +- .getService(Ci.nsIXULChromeRegistry); +- let browserLocale = chromeRegistry.getSelectedLocale("browser"); +- let enabledLocales = []; +- try { +- enabledLocales = Services.prefs.getCharPref("browser.pocket.enabledLocales").split(' '); +- } catch (ex) { +- Cu.reportError(ex); +- } +- isEnabledForLocale = enabledLocales.indexOf(browserLocale) != -1; +- } +- +- if (isEnabledForLocale) { +- let pocketButton = { +- id: "pocket-button", +- defaultArea: CustomizableUI.AREA_NAVBAR, +- introducedInVersion: "pref", +- type: "view", +- viewId: "PanelUI-pocketView", +- // Use forwarding functions here to avoid loading Pocket.jsm on startup: +- onViewShowing: function() { +- return Pocket.onPanelViewShowing.apply(this, arguments); +- }, +- onViewHiding: function() { +- return Pocket.onPanelViewHiding.apply(this, arguments); +- }, +- +- // If the user has the "classic" Pocket add-on installed, use that instead +- // and destroy the widget. +- conditionalDestroyPromise: new Promise(resolve => { +- AddonManager.getAddonByID("isreaditlater@ideashower.com", addon => { +- resolve(addon && addon.isActive); +- }); +- }), +- }; +- +- CustomizableWidgets.push(pocketButton); +- CustomizableUI.addListener(pocketButton); +- +- // Uninstall the Pocket social provider if it exists, but only if we haven't +- // already uninstalled it in this manner. That way the user can reinstall +- // it if they prefer it without its being uninstalled every time they start +- // the browser. +- let origin = "https://getpocket.com"; +- SocialService.getProvider(origin, provider => { +- if (provider) { +- let pref = "social.backup.getpocket-com"; +- if (!Services.prefs.prefHasUserValue(pref)) { +- let str = Cc["@mozilla.org/supports-string;1"]. +- createInstance(Ci.nsISupportsString); +- str.data = JSON.stringify(provider.manifest); +- Services.prefs.setComplexValue(pref, Ci.nsISupportsString, str); +- SocialService.uninstallProvider(origin, () => {}); +- } +- } +- }); +- } +-} +- + #ifdef E10S_TESTING_ONLY + var e10sDisabled = false; + #ifdef XP_MACOSX +diff -Naur firefox-45.0esr.bak/browser/components/moz.build firefox-45.0esr/browser/components/moz.build +--- firefox-45.0esr.bak/browser/components/moz.build 2016-03-13 ++++ firefox-45.0esr/browser/components/moz.build 2016-03-13 +@@ -15,7 +15,6 @@ + 'migration', + 'newtab', + 'places', +- 'pocket', + 'preferences', + 'privatebrowsing', + 'search', +diff -Naur firefox-45.0esr.bak/browser/components/pocket/moz.build firefox-45.0esr/browser/components/pocket/moz.build +--- firefox-45.0esr.bak/browser/components/pocket/moz.build 2016-03-13 ++++ firefox-45.0esr/browser/components/pocket/moz.build 2016-03-13 +@@ -3,5 +3,3 @@ + # file, You can obtain one at http://mozilla.org/MPL/2.0/. + + JAR_MANIFESTS += ['jar.mn'] +- +-EXTRA_JS_MODULES += ['Pocket.jsm'] +diff -Naur firefox-45.0esr.bak/browser/components/uitour/UITour.jsm firefox-45.0esr/browser/components/uitour/UITour.jsm +--- firefox-45.0esr.bak/browser/components/uitour/UITour.jsm 2016-03-13 ++++ firefox-45.0esr/browser/components/uitour/UITour.jsm 2016-03-13 +@@ -152,59 +152,6 @@ + query: "#panic-button", + widgetName: "panic-button", + }], +- ["loop", { +- allowAdd: true, +- query: "#loop-button", +- widgetName: "loop-button", +- }], +- ["loop-newRoom", { +- infoPanelPosition: "leftcenter topright", +- query: (aDocument) => { +- let loopUI = aDocument.defaultView.LoopUI; +- // Use the parentElement full-width container of the button so our arrow +- // doesn't overlap the panel contents much. +- return loopUI.browser.contentDocument.querySelector(".new-room-button").parentElement; +- }, +- }], +- ["loop-roomList", { +- infoPanelPosition: "leftcenter topright", +- query: (aDocument) => { +- let loopUI = aDocument.defaultView.LoopUI; +- return loopUI.browser.contentDocument.querySelector(".room-list"); +- }, +- }], +- ["loop-selectedRoomButtons", { +- infoPanelOffsetY: -20, +- infoPanelPosition: "start_after", +- query: (aDocument) => { +- let chatbox = aDocument.querySelector("chatbox[src^='about\:loopconversation'][selected]"); +- +- // Check that the real target actually exists +- if (!chatbox || !chatbox.contentDocument || +- !chatbox.contentDocument.querySelector(".call-action-group")) { +- return null; +- } +- +- // But anchor on the <browser> in the chatbox so the panel doesn't jump to undefined +- // positions when the copy/email buttons disappear e.g. when the feedback form opens or +- // somebody else joins the room. +- return chatbox.content; +- }, +- }], +- ["loop-signInUpLink", { +- query: (aDocument) => { +- let loopBrowser = aDocument.defaultView.LoopUI.browser; +- if (!loopBrowser) { +- return null; +- } +- return loopBrowser.contentDocument.querySelector(".signin-link"); +- }, +- }], +- ["pocket", { +- allowAdd: true, +- query: "#pocket-button", +- widgetName: "pocket-button", +- }], + ["privateWindow", {query: "#privatebrowsing-button"}], + ["quit", {query: "#PanelUI-quit"}], + ["readerMode-urlBar", {query: "#reader-mode-button"}], +@@ -869,16 +816,12 @@ + this.hideInfo(aWindow); + // Ensure the menu panel is hidden before calling recreatePopup so popup events occur. + this.hideMenu(aWindow, "appMenu"); +- this.hideMenu(aWindow, "loop"); + this.hideMenu(aWindow, "controlCenter"); + + // Clean up panel listeners after calling hideMenu above. + aWindow.PanelUI.panel.removeEventListener("popuphiding", this.hideAppMenuAnnotations); + aWindow.PanelUI.panel.removeEventListener("ViewShowing", this.hideAppMenuAnnotations); + aWindow.PanelUI.panel.removeEventListener("popuphidden", this.onPanelHidden); +- let loopPanel = aWindow.document.getElementById("loop-notification-panel"); +- loopPanel.removeEventListener("popuphidden", this.onPanelHidden); +- loopPanel.removeEventListener("popuphiding", this.hideLoopPanelAnnotations); + let controlCenterPanel = aWindow.gIdentityHandler._identityPopup; + controlCenterPanel.removeEventListener("popuphidden", this.onPanelHidden); + controlCenterPanel.removeEventListener("popuphiding", this.hideControlCenterAnnotations); +@@ -1592,71 +1535,6 @@ + popup.addEventListener("popupshown", onPopupShown); + } + aWindow.document.getElementById("identity-box").click(); +- } else if (aMenuName == "loop") { +- let toolbarButton = aWindow.LoopUI.toolbarButton; +- // It's possible to have a node that isn't placed anywhere +- if (!toolbarButton || !toolbarButton.node || +- !CustomizableUI.getPlacementOfWidget(toolbarButton.node.id)) { +- log.debug("Can't show the Loop menu since the toolbarButton isn't placed"); +- return; +- } +- +- let panel = aWindow.document.getElementById("loop-notification-panel"); +- panel.setAttribute("noautohide", true); +- if (panel.state != "open") { +- this.recreatePopup(panel); +- this.availableTargetsCache.clear(); +- } +- +- // An event object is expected but we don't want to toggle the panel with a click if the panel +- // is already open. +- aWindow.LoopUI.openCallPanel({ target: toolbarButton.node, }, "rooms").then(() => { +- if (aOpenCallback) { +- aOpenCallback(); +- } +- }); +- panel.addEventListener("popuphidden", this.onPanelHidden); +- panel.addEventListener("popuphiding", this.hideLoopPanelAnnotations); +- } else if (aMenuName == "pocket") { +- this.getTarget(aWindow, "pocket").then(Task.async(function* onPocketTarget(target) { +- let widgetGroupWrapper = CustomizableUI.getWidget(target.widgetName); +- if (widgetGroupWrapper.type != "view" || !widgetGroupWrapper.viewId) { +- log.error("Can't open the pocket menu without a view"); +- return; +- } +- let placement = CustomizableUI.getPlacementOfWidget(target.widgetName); +- if (!placement || !placement.area) { +- log.error("Can't open the pocket menu without a placement"); +- return; +- } +- +- if (placement.area == CustomizableUI.AREA_PANEL) { +- // Open the appMenu and wait for it if it's not already opened or showing a subview. +- yield new Promise((resolve, reject) => { +- if (aWindow.PanelUI.panel.state != "closed") { +- if (aWindow.PanelUI.multiView.showingSubView) { +- reject("A subview is already showing"); +- return; +- } +- +- resolve(); +- return; +- } +- +- aWindow.PanelUI.panel.addEventListener("popupshown", function onShown() { +- aWindow.PanelUI.panel.removeEventListener("popupshown", onShown); +- resolve(); +- }); +- +- aWindow.PanelUI.show(); +- }); +- } +- +- let widgetWrapper = widgetGroupWrapper.forWindow(aWindow); +- aWindow.PanelUI.showSubView(widgetGroupWrapper.viewId, +- widgetWrapper.anchor, +- placement.area); +- })).catch(log.error); + } + }, + +@@ -1675,9 +1553,6 @@ + } else if (aMenuName == "controlCenter") { + let panel = aWindow.gIdentityHandler._identityPopup; + panel.hidePopup(); +- } else if (aMenuName == "loop") { +- let panel = aWindow.document.getElementById("loop-notification-panel"); +- panel.hidePopup(); + } + }, + +@@ -1710,12 +1585,6 @@ + UITour.hideAnnotationsForPanel(aEvent, UITour.targetIsInAppMenu); + }, + +- hideLoopPanelAnnotations: function(aEvent) { +- UITour.hideAnnotationsForPanel(aEvent, (aTarget) => { +- return aTarget.targetName.startsWith("loop-") && aTarget.targetName != "loop-selectedRoomButtons"; +- }); +- }, +- + hideControlCenterAnnotations(aEvent) { + UITour.hideAnnotationsForPanel(aEvent, (aTarget) => { + return aTarget.targetName.startsWith("controlCenter-"); +@@ -1813,11 +1682,6 @@ + case "availableTargets": + this.getAvailableTargets(aMessageManager, aWindow, aCallbackID); + break; +- case "loop": +- this.sendPageCallback(aMessageManager, aCallbackID, { +- gettingStartedSeen: Services.prefs.getBoolPref("loop.gettingStarted.seen"), +- }); +- break; + case "search": + case "selectedSearchEngine": + Services.search.init(rv => { +@@ -1859,10 +1723,6 @@ + } + } catch (e) {} + break; +- case "Loop:ResumeTourOnFirstJoin": +- // Ignore aValue in this case to avoid accidentally setting it to false. +- Services.prefs.setBoolPref("loop.gettingStarted.resumeOnFirstJoin", true); +- break; + default: + log.error("setConfiguration: Unknown configuration requested: " + aConfiguration); + break; +diff -Naur firefox-45.0esr.bak/browser/extensions/moz.build firefox-45.0esr/browser/extensions/moz.build +--- firefox-45.0esr.bak/browser/extensions/moz.build 2016-03-13 ++++ firefox-45.0esr/browser/extensions/moz.build 2016-03-13 +@@ -5,7 +5,6 @@ + # file, You can obtain one at http://mozilla.org/MPL/2.0/. + + DIRS += [ +- 'loop', + 'pdfjs', + 'shumway', + ] +diff -Naur firefox-45.0esr.bak/browser/locales/en-US/chrome/browser/browser.dtd firefox-45.0esr/browser/locales/en-US/chrome/browser/browser.dtd +--- firefox-45.0esr.bak/browser/locales/en-US/chrome/browser/browser.dtd 2016-03-13 ++++ firefox-45.0esr/browser/locales/en-US/chrome/browser/browser.dtd 2016-03-13 +@@ -252,8 +252,6 @@ + <!ENTITY addons.commandkey "A"> + <!ENTITY webapps.label "Apps"> + <!ENTITY webapps.accesskey "p"> +-<!ENTITY loopMenuItem.label "Start a conversation…"> +-<!ENTITY loopMenuItem.accesskey "t"> + + <!ENTITY webDeveloperMenu.label "Web Developer"> + <!ENTITY webDeveloperMenu.accesskey "W"> +@@ -936,10 +934,3 @@ + <!ENTITY emeNotificationsNotNow.accesskey "N"> + <!ENTITY emeNotificationsDontAskAgain.label "Don't ask me again"> + <!ENTITY emeNotificationsDontAskAgain.accesskey "D"> +- +-<!-- LOCALIZATION NOTE (saveToPocketCmd.label, saveLinkToPocketCmd.label, pocketMenuitem.label): Pocket is a brand name --> +-<!ENTITY saveToPocketCmd.label "Save Page to Pocket"> +-<!ENTITY saveToPocketCmd.accesskey "k"> +-<!ENTITY saveLinkToPocketCmd.label "Save Link to Pocket"> +-<!ENTITY saveLinkToPocketCmd.accesskey "o"> +-<!ENTITY pocketMenuitem.label "View Pocket List"> +diff -Naur firefox-45.0esr.bak/browser/locales/en-US/chrome/browser/customizableui/customizableWidgets.properties firefox-45.0esr/browser/locales/en-US/chrome/browser/customizableui/customizableWidgets.properties +--- firefox-45.0esr.bak/browser/locales/en-US/chrome/browser/customizableui/customizableWidgets.properties 2016-03-13 ++++ firefox-45.0esr/browser/locales/en-US/chrome/browser/customizableui/customizableWidgets.properties 2016-03-13 +@@ -96,19 +96,6 @@ + # %2$S is the keyboard shortcut + quit-button.tooltiptext.mac = Quit %1$S (%2$S) + +-# LOCALIZATION NOTE(loop-call-button3.label): This is a brand name, request +-# approval before you change it. +-loop-call-button3.label = Hello +-loop-call-button3.tooltiptext2 = Browse this page with a friend +-loop-call-button3-error.tooltiptext = Error! +-loop-call-button3-donotdisturb.tooltiptext = Do not disturb +-loop-call-button3-screensharing.tooltiptext = You are sharing your screen +-loop-call-button3-active.tooltiptext2 = You are sharing your tabs +-loop-call-button3-participantswaiting.tooltiptext2 = Someone is waiting for you +-# LOCALIZATION NOTE(loop-call-button3-pb.tooltiptext): Shown when the button is +-# placed inside a Private Browsing window. %S is the value of loop-call-button3.label. +-loop-call-button3-pb.tooltiptext = %S is not available in Private Browsing +- + social-share-button.label = Share This Page + social-share-button.tooltiptext = Share this page + +@@ -124,10 +111,5 @@ + devtools-webide-button2.label = WebIDE + devtools-webide-button2.tooltiptext = Open WebIDE (%S) + +-# LOCALIZATION NOTE(pocket-button.label, pocket-button.tooltiptext): "Pocket" +-# is a brand name. +-pocket-button.label = Pocket +-pocket-button.tooltiptext = Save to Pocket +- + e10s-button.label = New Non-e10s Window + e10s-button.tooltiptext = Open a new Non-e10s Window +diff -Naur firefox-45.0esr.bak/browser/locales/jar.mn firefox-45.0esr/browser/locales/jar.mn +--- firefox-45.0esr.bak/browser/locales/jar.mn 2016-03-13 ++++ firefox-45.0esr/browser/locales/jar.mn 2016-03-13 +@@ -24,10 +24,8 @@ + locale/browser/browser.dtd (%chrome/browser/browser.dtd) + locale/browser/baseMenuOverlay.dtd (%chrome/browser/baseMenuOverlay.dtd) + locale/browser/browser.properties (%chrome/browser/browser.properties) +- locale/browser/browser-pocket.properties (%chrome/browser/browser-pocket.properties) + locale/browser/customizableui/customizableWidgets.properties (%chrome/browser/customizableui/customizableWidgets.properties) + locale/browser/lightweightThemes.properties (%chrome/browser/lightweightThemes.properties) +- locale/browser/loop/loop.properties (%chrome/browser/loop/loop.properties) + locale/browser/newTab.dtd (%chrome/browser/newTab.dtd) + locale/browser/newTab.properties (%chrome/browser/newTab.properties) + locale/browser/pageInfo.dtd (%chrome/browser/pageInfo.dtd) +diff -Naur firefox-45.0esr.bak/browser/modules/BrowserUITelemetry.jsm firefox-45.0esr/browser/modules/BrowserUITelemetry.jsm +--- firefox-45.0esr.bak/browser/modules/BrowserUITelemetry.jsm 2016-03-13 ++++ firefox-45.0esr/browser/modules/BrowserUITelemetry.jsm 2016-03-13 +@@ -49,7 +49,6 @@ + "urlbar-container", + "search-container", + "bookmarks-menu-button", +- "pocket-button", + "downloads-button", + "home-button", + "social-share-button", +@@ -668,7 +667,7 @@ + "copyvideourl", "copyaudiourl", "saveimage", "shareimage", "sendimage", + "setDesktopBackground", "viewimageinfo", "viewimagedesc", "savevideo", + "sharevideo", "saveaudio", "video-saveimage", "sendvideo", "sendaudio", +- "ctp-play", "ctp-hide", "sharepage", "savepage", "pocket", "markpageMenu", ++ "ctp-play", "ctp-hide", "sharepage", "savepage", "markpageMenu", + "viewbgimage", "undo", "cut", "copy", "paste", "delete", "selectall", + "keywordfield", "searchselect", "shareselect", "frame", "showonlythisframe", + "openframeintab", "openframe", "reloadframe", "bookmarkframe", "saveframe", +diff -Naur firefox-45.0esr.bak/browser/modules/ReaderParent.jsm firefox-45.0esr/browser/modules/ReaderParent.jsm +--- firefox-45.0esr.bak/browser/modules/ReaderParent.jsm 2016-03-13 ++++ firefox-45.0esr/browser/modules/ReaderParent.jsm 2016-03-13 +@@ -25,11 +25,9 @@ + + MESSAGES: [ + "Reader:AddToList", +- "Reader:AddToPocket", + "Reader:ArticleGet", + "Reader:FaviconRequest", + "Reader:ListStatusRequest", +- "Reader:PocketEnabledGet", + "Reader:RemoveFromList", + "Reader:Share", + "Reader:SystemUIVisibility", +@@ -47,24 +45,6 @@ + + receiveMessage: function(message) { + switch (message.name) { +- case "Reader:AddToPocket": { +- let doc = message.target.ownerDocument; +- let pocketWidget = doc.getElementById("pocket-button"); +- let placement = CustomizableUI.getPlacementOfWidget("pocket-button"); +- if (placement) { +- if (placement.area == CustomizableUI.AREA_PANEL) { +- doc.defaultView.PanelUI.show().then(function() { +- // The DOM node might not exist yet if the panel wasn't opened before. +- pocketWidget = doc.getElementById("pocket-button"); +- pocketWidget.doCommand(); +- }); +- } else { +- pocketWidget.doCommand(); +- } +- } +- break; +- } +- + case "Reader:ArticleGet": + this._getArticle(message.data.url, message.target).then((article) => { + // Make sure the target browser is still alive before trying to send data back. +@@ -78,13 +58,6 @@ + }); + break; + +- case "Reader:PocketEnabledGet": { +- let pocketPlacement = CustomizableUI.getPlacementOfWidget("pocket-button"); +- let isPocketEnabled = pocketPlacement && pocketPlacement.area; +- message.target.messageManager.sendAsyncMessage("Reader:PocketEnabledData", { enabled: !!isPocketEnabled}); +- break; +- } +- + case "Reader:FaviconRequest": { + if (message.target.messageManager) { + let faviconUrl = PlacesUtils.promiseFaviconLinkUrl(message.data.url); +diff -Naur firefox-45.0esr.bak/browser/themes/linux/browser.css firefox-45.0esr/browser/themes/linux/browser.css +--- firefox-45.0esr.bak/browser/themes/linux/browser.css 2016-03-13 ++++ firefox-45.0esr/browser/themes/linux/browser.css 2016-03-13 +@@ -525,12 +525,6 @@ + list-style-image: url("chrome://browser/skin/places/unsortedBookmarks.png"); + } + +-#panelMenu_pocket, +-#menu_pocket, +-#BMB_pocket { +- list-style-image: url("chrome://browser/content/pocket/panels/img/pocketmenuitem16.png"); +-} +- + #menu_openDownloads { + list-style-image: url("chrome://browser/skin/Toolbar-small.png"); + -moz-image-region: rect(0px 16px 16px 0px); +diff -Naur firefox-45.0esr.bak/browser/themes/osx/browser.css firefox-45.0esr/browser/themes/osx/browser.css +--- firefox-45.0esr.bak/browser/themes/osx/browser.css 2016-03-13 ++++ firefox-45.0esr/browser/themes/osx/browser.css 2016-03-13 +@@ -576,24 +576,6 @@ + } + } + +-#panelMenu_pocket, +-#menu_pocket, +-#BMB_pocket { +- list-style-image: url("chrome://browser/content/pocket/panels/img/pocketmenuitem16.png"); +-} +- +-@media (min-resolution: 2dppx) { +- #panelMenu_pocket, +- #menu_pocket, +- #BMB_pocket { +- list-style-image: url("chrome://browser/content/pocket/panels/img/pocketmenuitem16@2x.png"); +- } +- +- #panelMenu_pocket > .toolbarbutton-icon { +- width: 16px; +- } +-} +- + /* ----- PRIMARY TOOLBAR BUTTONS ----- */ + + :-moz-any(toolbar, .widget-overflow-list) .toolbarbutton-1 > .toolbarbutton-icon, +@@ -822,10 +804,6 @@ + -moz-image-region: rect(18px, 738px, 36px, 720px); + } + +- #pocket-button@toolbarButtonPressed@ { +- -moz-image-region: rect(18px, 774px, 36px, 756px); +- } +- + #new-tab-button@toolbarButtonPressed@ { + -moz-image-region: rect(18px, 360px, 36px, 342px); + } +@@ -985,10 +963,6 @@ + -moz-image-region: rect(36px, 1476px, 72px, 1440px); + } + +- #pocket-button@toolbarButtonPressed@ { +- -moz-image-region: rect(36px, 1548px, 72px, 1512px); +- } +- + #new-tab-button@toolbarButtonPressed@ { + -moz-image-region: rect(36px, 720px, 72px, 684px); + } +diff -Naur firefox-45.0esr.bak/browser/themes/shared/browser.inc firefox-45.0esr/browser/themes/shared/browser.inc +--- firefox-45.0esr.bak/browser/themes/shared/browser.inc 2016-03-13 ++++ firefox-45.0esr/browser/themes/shared/browser.inc 2016-03-13 +@@ -2,7 +2,7 @@ + + % Note that zoom-reset-button is a bit different since it doesn't use an image and thus has the image with display: none. + %define nestedButtons #zoom-out-button, #zoom-reset-button, #zoom-in-button, #cut-button, #copy-button, #paste-button +-%define primaryToolbarButtons #back-button, #forward-button, #home-button, #print-button, #downloads-button, #bookmarks-menu-button, #new-tab-button, #new-window-button, #fullscreen-button, #sync-button, #feed-button, #social-share-button, #open-file-button, #find-button, #developer-button, #preferences-button, #privatebrowsing-button, #save-page-button, #add-ons-button, #history-panelmenu, #nav-bar-overflow-button, #PanelUI-menu-button, #characterencoding-button, #email-link-button, #sidebar-button, @nestedButtons@, #e10s-button, #panic-button, #webide-button, #pocket-button ++%define primaryToolbarButtons #back-button, #forward-button, #home-button, #print-button, #downloads-button, #bookmarks-menu-button, #new-tab-button, #new-window-button, #fullscreen-button, #sync-button, #feed-button, #social-share-button, #open-file-button, #find-button, #developer-button, #preferences-button, #privatebrowsing-button, #save-page-button, #add-ons-button, #history-panelmenu, #nav-bar-overflow-button, #PanelUI-menu-button, #characterencoding-button, #email-link-button, #sidebar-button, @nestedButtons@, #e10s-button, #panic-button, #webide-button + + %ifdef XP_MACOSX + % Prior to 10.7 there wasn't a native fullscreen button so we use #restore-button to exit fullscreen +diff -Naur firefox-45.0esr.bak/browser/themes/shared/menupanel.inc.css firefox-45.0esr/browser/themes/shared/menupanel.inc.css +--- firefox-45.0esr.bak/browser/themes/shared/menupanel.inc.css 2016-03-13 ++++ firefox-45.0esr/browser/themes/shared/menupanel.inc.css 2016-03-13 +@@ -163,15 +163,6 @@ + -moz-image-region: rect(0px, 960px, 32px, 928px); + } + +- #pocket-button[cui-areatype="menu-panel"], +- toolbarpaletteitem[place="palette"] > #pocket-button { +- -moz-image-region: rect(0px, 992px, 32px, 960px); +- } +- +- #pocket-button[cui-areatype="menu-panel"][panel-multiview-anchor=true] { +- -moz-image-region: rect(32px, 992px, 64px, 960px); +- } +- + toolbaritem[sdkstylewidget="true"] > toolbarbutton { + -moz-image-region: rect(0, 832px, 32px, 800px); + } +@@ -310,15 +301,6 @@ + -moz-image-region: rect(0px, 1920px, 64px, 1856px); + } + +- #pocket-button[cui-areatype="menu-panel"], +- toolbarpaletteitem[place="palette"] > #pocket-button { +- -moz-image-region: rect(0px, 1984px, 64px, 1920px); +- } +- +- #pocket-button[cui-areatype="menu-panel"][panel-multiview-anchor=true] { +- -moz-image-region: rect(64px, 1984px, 128px, 1920px); +- } +- + #new-tab-button[cui-areatype="menu-panel"], + toolbarpaletteitem[place="palette"] > #new-tab-button { + -moz-image-region: rect(0px, 1088px, 64px, 1024px); +diff -Naur firefox-45.0esr.bak/browser/themes/shared/toolbarbuttons.inc.css firefox-45.0esr/browser/themes/shared/toolbarbuttons.inc.css +--- firefox-45.0esr.bak/browser/themes/shared/toolbarbuttons.inc.css 2016-03-13 ++++ firefox-45.0esr/browser/themes/shared/toolbarbuttons.inc.css 2016-03-13 +@@ -171,18 +171,6 @@ + -moz-image-region: rect(0, 738px, 18px, 720px); + } + +-#pocket-button[cui-areatype="toolbar"] { +- -moz-image-region: rect(0, 774px, 18px, 756px); +-} +- +-#pocket-button[cui-areatype="toolbar"][open] { +-%ifdef XP_MACOSX +- -moz-image-region: rect(36px, 774px, 54px, 756px); +-%else +- -moz-image-region: rect(18px, 774px, 36px, 756px); +-%endif +-} +- + %if defined(XP_WIN) || defined(XP_MACOSX) + @media (min-resolution: 1.1dppx) { + :-moz-any(@primaryToolbarButtons@), +@@ -350,16 +338,4 @@ + -moz-image-region: rect(0, 1476px, 36px, 1440px); + } + +- #pocket-button[cui-areatype="toolbar"] { +- -moz-image-region: rect(0, 1548px, 36px, 1512px); +- } +- +- #pocket-button[cui-areatype="toolbar"][open] { +-%ifdef XP_MACOSX +- -moz-image-region: rect(72px, 1548px, 108px, 1512px); +-%else +- -moz-image-region: rect(36px, 1548px, 72px, 1512px); +-%endif +- } +-} + %endif +diff -Naur firefox-45.0esr.bak/browser/themes/windows/browser.css firefox-45.0esr/browser/themes/windows/browser.css +--- firefox-45.0esr.bak/browser/themes/windows/browser.css 2016-03-13 ++++ firefox-45.0esr/browser/themes/windows/browser.css 2016-03-13 +@@ -2305,12 +2305,6 @@ + -moz-image-region: auto; + } + +-#panelMenu_pocket, +-#menu_pocket, +-#BMB_pocket { +- list-style-image: url("chrome://browser/content/pocket/panels/img/pocketmenuitem16.png"); +-} +- + /* ::::: Keyboard UI Panel ::::: */ + + .KUI-panel { +diff -Naur firefox-45.0esr.bak/toolkit/themes/shared/aboutReaderControls.css firefox-45.0esr/toolkit/themes/shared/aboutReaderControls.css +--- firefox-45.0esr.bak/toolkit/themes/shared/aboutReaderControls.css 2016-03-13 ++++ firefox-45.0esr/toolkit/themes/shared/aboutReaderControls.css 2016-03-13 +@@ -379,14 +379,6 @@ + background-image: url("chrome://global/skin/reader/RM-Plus-24x24.svg"); + } + +-#pocket-button { +- background-image: url("chrome://global/skin/reader/pocket.svg#pocket-mark"); +-} +- +-#pocket-button:hover:active { +- background-image: url("chrome://global/skin/reader/pocket.svg#pocket-mark-added"); +-} +- + @media print { + .toolbar { + display: none !important; diff --git a/firefox-38-disable-sponsored-tiles.patch b/firefox-45-disable-sponsored-tiles.patch index d83365fc4ab0..caf5aa1814e8 100644 --- a/firefox-38-disable-sponsored-tiles.patch +++ b/firefox-45-disable-sponsored-tiles.patch @@ -1,6 +1,6 @@ ---- mozilla-esr38.bak/browser/modules/DirectoryLinksProvider.jsm 2015-10-01 22:55:45.276046367 +0200 -+++ mozilla-esr38/browser/modules/DirectoryLinksProvider.jsm 2015-10-01 22:57:17.964047568 +0200 -@@ -33,16 +33,16 @@ +--- firefox-45.0esr.bak/browser/modules/DirectoryLinksProvider.jsm 2016-03-13 ++++ firefox-45.0esr/browser/modules/DirectoryLinksProvider.jsm 2016-03-13 +@@ -58,16 +58,16 @@ const DIRECTORY_LINKS_TYPE = "application/json"; // The preference that tells whether to match the OS locale @@ -21,7 +21,7 @@ // The preference that tells if newtab is enhanced const PREF_NEWTAB_ENHANCED = "browser.newtabpage.enhanced"; -@@ -108,30 +108,6 @@ +@@ -200,30 +200,6 @@ * @return the selected locale or "en-US" if none is selected */ get locale() { @@ -52,29 +52,33 @@ return "en-US"; }, -@@ -188,43 +164,6 @@ +@@ -294,13 +270,6 @@ }, _fetchAndCacheLinks: function DirectoryLinksProvider_fetchAndCacheLinks(uri) { - // Replace with the same display locale used for selecting links data - uri = uri.replace("%LOCALE%", this.locale); +- uri = uri.replace("%CHANNEL%", UpdateUtils.UpdateChannel); - +- return this._downloadJsonData(uri).then(json => { +- return OS.File.writeAtomic(this._directoryFilePath, json, {tmpPath: this._directoryFilePath + ".tmp"}); +- }); + }, + + /** +@@ -309,33 +278,6 @@ + * @return promise resolved to json string, "{}" returned if status != 200 + */ + _downloadJsonData: function DirectoryLinksProvider__downloadJsonData(uri) { - let deferred = Promise.defer(); -- let xmlHttp = new XMLHttpRequest(); +- let xmlHttp = this._newXHR(); - -- let self = this; - xmlHttp.onload = function(aResponse) { - let json = this.responseText; - if (this.status && this.status != 200) { - json = "{}"; - } -- OS.File.writeAtomic(self._directoryFilePath, json, {tmpPath: self._directoryFilePath + ".tmp"}) -- .then(() => { -- deferred.resolve(); -- }, -- () => { -- deferred.reject("Error writing uri data in profD."); -- }); +- deferred.resolve(json); - }; - - xmlHttp.onerror = function(e) { @@ -96,7 +100,7 @@ }, /** -@@ -232,30 +171,6 @@ +@@ -343,30 +285,6 @@ * @return promise resolved immediately if no download needed, or upon completion */ _fetchAndCacheLinksIfNecessary: function DirectoryLinksProvider_fetchAndCacheLinksIfNecessary(forceDownload=false) { @@ -127,7 +131,7 @@ }, /** -@@ -309,51 +224,6 @@ +@@ -574,40 +492,6 @@ } catch (ex) {} @@ -156,6 +160,7 @@ - id: id || site.enhancedId, - pin: site.isPinned() ? 1 : undefined, - pos: pos != tilesIndex ? pos : undefined, +- past_impressions: pos == triggeringSiteIndex ? pastImpressions : undefined, - score: Math.round(link.frecency / PING_SCORE_DIVISOR) || undefined, - url: site.enhancedId && "", - }); @@ -164,18 +169,24 @@ - }, []), - }; - -- // Provide a direct index to the tile triggering the action -- if (actionIndex !== undefined) { -- data[action] = actionIndex; -- } -- -- // Package the data to be sent with the ping -- let ping = new XMLHttpRequest(); -- ping.open("POST", pingEndPoint + (action == "view" ? "view" : "click")); -- ping.send(JSON.stringify(data)); + // Provide a direct index to the tile triggering the action + if (actionIndex !== undefined) { + data[action] = actionIndex; +@@ -1021,17 +905,6 @@ + * @return a promise resolved when lookup Set for sites is built + */ + _loadInadjacentSites: function DirectoryLinksProvider_loadInadjacentSites() { +- return this._downloadJsonData(this._inadjacentSitesUrl).then(jsonString => { +- let jsonObject = {}; +- try { +- jsonObject = JSON.parse(jsonString); +- } +- catch (e) { +- Cu.reportError(e); +- } - -- // Use this as an opportunity to potentially fetch new links -- return this._fetchAndCacheLinksIfNecessary(); +- this._inadjacentSites = new Set(jsonObject.domains); +- }); }, /** diff --git a/firefox-45-disable-telemetry.patch b/firefox-45-disable-telemetry.patch new file mode 100644 index 000000000000..b988fe004633 --- /dev/null +++ b/firefox-45-disable-telemetry.patch @@ -0,0 +1,24 @@ +--- firefox-45.0esr.bak/browser/confvars.sh 2016-03-13 ++++ firefox-45.0esr/browser/confvars.sh 2016-03-13 +@@ -30,8 +30,8 @@ + MOZ_SAFE_BROWSING=1 + MOZ_SERVICES_COMMON=1 + MOZ_SERVICES_CRYPTO=1 +-MOZ_SERVICES_HEALTHREPORT=1 +-MOZ_SERVICES_METRICS=1 ++MOZ_SERVICES_HEALTHREPORT=0 ++MOZ_SERVICES_METRICS=0 + MOZ_SERVICES_SYNC=1 + MOZ_SERVICES_CLOUDSYNC=1 + MOZ_APP_VERSION=$FIREFOX_VERSION +@@ -70,3 +70,10 @@ + + # Include the DevTools client, not just the server (which is the default) + MOZ_DEVTOOLS=all ++ ++# Reduce data sharing with Mozilla ++MOZ_SOCIAL=0 ++MOZ_DATA_REPORTING=0 ++MOZ_TELEMETRY_REPORTING=0 ++MOZ_CRASHREPORTER=0 ++ diff --git a/firefox-38-prefs.patch b/firefox-45-prefs.patch index 0d1dd3bed6ee..4b123253b0d5 100644 --- a/firefox-38-prefs.patch +++ b/firefox-45-prefs.patch @@ -1,37 +1,16 @@ ---- mozilla-esr38.bak/browser/branding/official/pref/firefox-branding.js 2015-10-27 10:35:06.279469072 +0100 -+++ mozilla-esr38/browser/branding/official/pref/firefox-branding.js 2015-10-27 11:45:37.837884736 +0100 -@@ -3,7 +3,7 @@ - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - - pref("startup.homepage_override_url",""); --pref("startup.homepage_welcome_url",""); -+pref("startup.homepage_welcome_url","about:blank"); - // Interval: Time between checks for a new version (in seconds) - pref("app.update.interval", 43200); // 12 hours - // The time interval between the downloading of mar file chunks in the ---- mozilla-esr38.bak/services/healthreport/healthreport-prefs.js 2015-10-27 10:35:06.443469088 +0100 -+++ mozilla-esr38/services/healthreport/healthreport-prefs.js 2015-10-27 11:57:35.057955188 +0100 -@@ -18,9 +18,9 @@ - pref("datareporting.healthreport.pendingDeleteRemoteData", false); - - // Health Report is enabled by default on all channels. --pref("datareporting.healthreport.uploadEnabled", true); -+pref("datareporting.healthreport.uploadEnabled", false); - --pref("datareporting.healthreport.service.enabled", true); -+pref("datareporting.healthreport.service.enabled", false); - pref("datareporting.healthreport.service.loadDelayMsec", 10000); - pref("datareporting.healthreport.service.loadDelayFirstRunMsec", 60000); - ---- mozilla-esr38.bak/browser/app/profile/firefox.js 2015-10-27 10:35:06.353469080 +0100 -+++ mozilla-esr38/browser/app/profile/firefox.js 2015-10-27 11:51:27.217919055 +0100 -@@ -267,12 +267,12 @@ +diff -Naur firefox-45.0esr.bak/browser/app/profile/firefox.js firefox-45.0esr/browser/app/profile/firefox.js +--- firefox-45.0esr.bak/browser/app/profile/firefox.js 2016-03-13 ++++ firefox-45.0esr/browser/app/profile/firefox.js 2016-03-13 +@@ -230,7 +230,7 @@ #endif // At startup, check if we're the default browser and prompt user if not. -pref("browser.shell.checkDefaultBrowser", true); +pref("browser.shell.checkDefaultBrowser", false); pref("browser.shell.shortcutFavicons",true); + pref("browser.shell.mostRecentDateSetAsDefault", ""); + pref("browser.shell.skipDefaultBrowserCheck", true); +@@ -238,7 +238,7 @@ // 0 = blank, 1 = home (browser.startup.homepage), 2 = last visited page, 3 = resume previous browser session // The behavior of option 3 is detailed at: http://wiki.mozilla.org/Session_Restore @@ -40,7 +19,16 @@ pref("browser.startup.homepage", "chrome://branding/locale/browserconfig.properties"); pref("browser.slowStartup.notificationDisabled", false); -@@ -442,7 +442,7 @@ +@@ -312,7 +312,7 @@ + pref("browser.urlbar.suggest.bookmark", true); + pref("browser.urlbar.suggest.openpage", true); + pref("browser.urlbar.suggest.searches", false); +-pref("browser.urlbar.userMadeSearchSuggestionsChoice", false); ++pref("browser.urlbar.userMadeSearchSuggestionsChoice", true); + + // Limit the number of characters sent to the current search engine to fetch + // suggestions. +@@ -426,7 +426,7 @@ // Tabbed browser pref("browser.tabs.closeWindowWithLastTab", true); pref("browser.tabs.insertRelatedAfterCurrent", true); @@ -49,7 +37,7 @@ pref("browser.tabs.warnOnCloseOtherTabs", true); pref("browser.tabs.warnOnOpen", true); pref("browser.tabs.maxOpenBeforeWarn", 15); -@@ -1629,7 +1629,7 @@ +@@ -1335,7 +1335,7 @@ pref("browser.newtab.preload", true); // Remembers if the about:newtab intro has been shown @@ -58,8 +46,34 @@ // Toggles the content of 'about:newtab'. Shows the grid when enabled. pref("browser.newtabpage.enabled", true); ---- mozilla-esr38.bak/modules/libpref/init/all.js 2015-10-27 10:35:06.654469109 +0100 -+++ mozilla-esr38/modules/libpref/init/all.js 2015-10-27 11:57:53.203956970 +0100 +diff -Naur firefox-45.0esr.bak/browser/branding/official/pref/firefox-branding.js firefox-45.0esr/browser/branding/official/pref/firefox-branding.js +--- firefox-45.0esr.bak/browser/branding/official/pref/firefox-branding.js 2016-03-13 ++++ firefox-45.0esr/browser/branding/official/pref/firefox-branding.js 2016-03-13 +@@ -3,8 +3,7 @@ + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + + pref("startup.homepage_override_url", ""); +-pref("startup.homepage_welcome_url", "https://www.mozilla.org/%LOCALE%/firefox/%VERSION%/firstrun/"); +-pref("startup.homepage_welcome_url.additional", "https://www.mozilla.org/%LOCALE%/firefox/%VERSION%/firstrun/learnmore/"); ++pref("startup.homepage_welcome_url", "about:blank"); + // Interval: Time between checks for a new version (in seconds) + pref("app.update.interval", 43200); // 12 hours + // The time interval between the downloading of mar file chunks in the +diff -Naur firefox-45.0esr.bak/build/application.ini firefox-45.0esr/build/application.ini +--- firefox-45.0esr.bak/build/application.ini 2016-03-13 ++++ firefox-45.0esr/build/application.ini 2016-03-13 +@@ -41,7 +41,7 @@ + + [XRE] + #ifdef MOZ_PROFILE_MIGRATOR +-EnableProfileMigrator=1 ++EnableProfileMigrator=0 + #endif + + #if MOZ_CRASHREPORTER +diff -Naur firefox-45.0esr.bak/modules/libpref/init/all.js firefox-45.0esr/modules/libpref/init/all.js +--- firefox-45.0esr.bak/modules/libpref/init/all.js 2016-03-13 ++++ firefox-45.0esr/modules/libpref/init/all.js 2016-03-13 @@ -29,7 +29,7 @@ pref("general.config.obscure_value", 13); // for MCD .cfg files @@ -69,34 +83,7 @@ // maximum number of dated backups to keep at any time pref("browser.bookmarks.max_backups", 5); -@@ -449,7 +449,7 @@ - #if defined(XP_WIN) || defined(XP_MACOSX) - pref("media.mediasource.enabled", true); - #else --pref("media.mediasource.enabled", false); -+pref("media.mediasource.enabled", true); - #endif - - #ifdef RELEASE_BUILD -@@ -2312,7 +2312,7 @@ - // Player ("Shockwave for Director"). To hide all plugins from enumeration, use - // the empty string "" to match no plugin names. To allow all plugins to be - // enumerated, use the string "*" to match all plugin names. --pref("plugins.enumerable_names", "*"); -+pref("plugins.enumerable_names", ""); - - // The default value for nsIPluginTag.enabledState (STATE_ENABLED = 2) - pref("plugin.default.state", 2); -@@ -3400,7 +3400,7 @@ - - // Middle-mouse handling - pref("middlemouse.paste", true); --pref("middlemouse.contentLoadURL", true); -+pref("middlemouse.contentLoadURL", false); - pref("middlemouse.openNewWindow", true); - pref("middlemouse.scrollbarPosition", true); - -@@ -3712,7 +3712,7 @@ +@@ -4096,7 +4096,7 @@ // Satchel (Form Manager) prefs pref("browser.formfill.debug", false); @@ -105,3 +92,18 @@ pref("browser.formfill.expire_days", 180); pref("browser.formfill.saveHttpsForms", true); pref("browser.formfill.agedWeight", 2); +diff -Naur firefox-45.0esr.bak/services/healthreport/healthreport-prefs.js firefox-45.0esr/services/healthreport/healthreport-prefs.js +--- firefox-45.0esr.bak/services/healthreport/healthreport-prefs.js 2016-03-13 ++++ firefox-45.0esr/services/healthreport/healthreport-prefs.js 2016-03-13 +@@ -18,9 +18,9 @@ + pref("datareporting.healthreport.pendingDeleteRemoteData", false); + + // Health Report is enabled by default on all channels. +-pref("datareporting.healthreport.uploadEnabled", true); ++pref("datareporting.healthreport.uploadEnabled", false); + +-pref("datareporting.healthreport.service.enabled", true); ++pref("datareporting.healthreport.service.enabled", false); + pref("datareporting.healthreport.service.loadDelayMsec", 10000); + pref("datareporting.healthreport.service.loadDelayFirstRunMsec", 60000); + diff --git a/mozconfig b/mozconfig index 947067e1f571..198eb53a94a8 100644 --- a/mozconfig +++ b/mozconfig @@ -39,5 +39,6 @@ ac_add_options --with-system-libvpx ac_add_options --with-system-nspr ac_add_options --with-system-nss ac_add_options --with-system-icu +ac_add_options --disable-gconf mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-build-dir |