Bug 1342462 - UITour: Remove automatic reader view tour based on a URL regex. r=Gijs
MozReview-Commit-ID: 1GCx4tOtjXA
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -183,18 +183,16 @@ pref("browser.eme.ui.enabled", false);
#endif
// UI tour experience.
pref("browser.uitour.enabled", true);
pref("browser.uitour.loglevel", "Error");
pref("browser.uitour.requireSecure", true);
pref("browser.uitour.themeOrigin", "https://addons.mozilla.org/%LOCALE%/firefox/themes/");
pref("browser.uitour.url", "https://www.mozilla.org/%LOCALE%/firefox/%VERSION%/tour/");
-// This is used as a regexp match against the page's URL.
-pref("browser.uitour.readerViewTrigger", "^https:\\/\\/www\\.mozilla\\.org\\/[^\\/]+\\/firefox\\/reading\\/start");
// How long to show a Hearbeat survey (two hours, in seconds)
pref("browser.uitour.surveyDuration", 7200);
pref("browser.customizemode.tip0.shown", false);
pref("browser.customizemode.tip0.learnMoreUrl", "https://support.mozilla.org/1/firefox/%VERSION%/%OS%/%LOCALE%/customize");
pref("keyword.enabled", true);
pref("browser.fixup.domainwhitelist.localhost", true);
--- a/browser/base/content/browser.js
+++ b/browser/base/content/browser.js
@@ -4641,18 +4641,16 @@ var XULBrowserWindow = {
URLBarSetURI(aLocationURI);
BookmarkingUI.onLocationChange();
gIdentityHandler.onLocationChange();
SocialUI.updateState();
- UITour.onLocationChange(location);
-
gTabletModePageCounter.inc();
// Utility functions for disabling find
var shouldDisableFind = function(aDocument) {
let docElt = aDocument.documentElement;
return docElt && docElt.getAttribute("disablefastfind") == "true";
}
--- a/browser/components/uitour/UITour.jsm
+++ b/browser/components/uitour/UITour.jsm
@@ -27,25 +27,22 @@ XPCOMUtils.defineLazyModuleGetter(this,
XPCOMUtils.defineLazyModuleGetter(this, "CustomizableUI",
"resource:///modules/CustomizableUI.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "UITelemetry",
"resource://gre/modules/UITelemetry.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "BrowserUITelemetry",
"resource:///modules/BrowserUITelemetry.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "PrivateBrowsingUtils",
"resource://gre/modules/PrivateBrowsingUtils.jsm");
-XPCOMUtils.defineLazyModuleGetter(this, "ReaderMode",
- "resource://gre/modules/ReaderMode.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "ReaderParent",
"resource:///modules/ReaderParent.jsm");
// See LOG_LEVELS in Console.jsm. Common examples: "All", "Info", "Warn", & "Error".
const PREF_LOG_LEVEL = "browser.uitour.loglevel";
const PREF_SEENPAGEIDS = "browser.uitour.seenPageIDs";
-const PREF_READERVIEW_TRIGGER = "browser.uitour.readerViewTrigger";
const PREF_SURVEY_DURATION = "browser.uitour.surveyDuration";
const BACKGROUND_PAGE_ACTIONS_ALLOWED = new Set([
"forceShowReaderIcon",
"getConfiguration",
"getTreatmentTag",
"hideHighlight",
"hideInfo",
@@ -292,33 +289,16 @@ this.UITour = {
Services.prefs.clearUserPref(PREF_SEENPAGEIDS);
return;
}
Services.prefs.setCharPref(PREF_SEENPAGEIDS,
JSON.stringify([...this.seenPageIDs]));
},
- get _readerViewTriggerRegEx() {
- delete this._readerViewTriggerRegEx;
- let readerViewUITourTrigger = Services.prefs.getCharPref(PREF_READERVIEW_TRIGGER);
- return this._readerViewTriggerRegEx = new RegExp(readerViewUITourTrigger, "i");
- },
-
- onLocationChange(aLocation) {
- // The ReaderView tour page is expected to run in Reader View,
- // which disables JavaScript on the page. To get around that, we
- // automatically start a pre-defined tour on page load (for hysterical
- // raisins the ReaderView tour is known as "readinglist")
- let originalUrl = ReaderMode.getOriginalUrl(aLocation);
- if (this._readerViewTriggerRegEx.test(originalUrl)) {
- this.startSubTour("readinglist");
- }
- },
-
onPageEvent(aMessage, aEvent) {
let browser = aMessage.target;
let window = browser.ownerGlobal;
// Does the window have tabs? We need to make sure since windowless browsers do
// not have tabs.
if (!window.gBrowser) {
// When using windowless browsers we don't have a valid |window|. If that's the case,
@@ -1933,29 +1913,16 @@ this.UITour = {
}.bind(this)).catch(err => {
log.error(err);
this.sendPageCallback(aMessageManager, aCallbackID, {
targets: [],
});
});
},
- startSubTour(aFeature) {
- if (aFeature != "string") {
- log.error("startSubTour: No feature option specified");
- return;
- }
-
- if (aFeature == "readinglist") {
- ReaderParent.showReaderModeInfoPanel(browser);
- } else {
- log.error("startSubTour: Unknown feature option specified");
- }
- },
-
addNavBarWidget(aTarget, aMessageManager, aCallbackID) {
if (aTarget.node) {
log.error("addNavBarWidget: can't add a widget already present:", aTarget);
return;
}
if (!aTarget.allowAdd) {
log.error("addNavBarWidget: not allowed to add this widget:", aTarget);
return;