зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1672144 - Sponsored top sites: Make "Our sponsors & your privacy" a direct link to SUMO. r=mikedeboer
Differential Revision: https://phabricator.services.mozilla.com/D94098
This commit is contained in:
Родитель
61924ee957
Коммит
b0b180ea44
|
@ -26,6 +26,7 @@ this.globalImportContext = globalImportContext;
|
||||||
// }
|
// }
|
||||||
const actionTypes = {};
|
const actionTypes = {};
|
||||||
for (const type of [
|
for (const type of [
|
||||||
|
"ABOUT_SPONSORED_TOP_SITES",
|
||||||
"ADDONS_INFO_REQUEST",
|
"ADDONS_INFO_REQUEST",
|
||||||
"ADDONS_INFO_RESPONSE",
|
"ADDONS_INFO_RESPONSE",
|
||||||
"ARCHIVE_FROM_POCKET",
|
"ARCHIVE_FROM_POCKET",
|
||||||
|
|
|
@ -29,7 +29,7 @@ export const TOP_SITES_SPONSORED_POSITION_CONTEXT_MENU_OPTIONS = [
|
||||||
"OpenInPrivateWindow",
|
"OpenInPrivateWindow",
|
||||||
"Separator",
|
"Separator",
|
||||||
"BlockUrl",
|
"BlockUrl",
|
||||||
"ShowPrivacyInfo",
|
"AboutSponsored",
|
||||||
];
|
];
|
||||||
// the special top site for search shortcut experiment can only have the option to unpin (which removes) the topsite
|
// the special top site for search shortcut experiment can only have the option to unpin (which removes) the topsite
|
||||||
export const TOP_SITES_SEARCH_SHORTCUTS_CONTEXT_MENU_OPTIONS = [
|
export const TOP_SITES_SEARCH_SHORTCUTS_CONTEXT_MENU_OPTIONS = [
|
||||||
|
|
|
@ -30,6 +30,14 @@ export const LinkMenuOptions = {
|
||||||
},
|
},
|
||||||
userEvent: "SHOW_PRIVACY_INFO",
|
userEvent: "SHOW_PRIVACY_INFO",
|
||||||
}),
|
}),
|
||||||
|
AboutSponsored: site => ({
|
||||||
|
id: "newtab-menu-show-privacy-info",
|
||||||
|
icon: "info",
|
||||||
|
action: ac.AlsoToMain({
|
||||||
|
type: at.ABOUT_SPONSORED_TOP_SITES,
|
||||||
|
}),
|
||||||
|
userEvent: "TOPSITE_SPONSOR_INFO",
|
||||||
|
}),
|
||||||
RemoveBookmark: site => ({
|
RemoveBookmark: site => ({
|
||||||
id: "newtab-menu-remove-bookmark",
|
id: "newtab-menu-remove-bookmark",
|
||||||
icon: "bookmark-added",
|
icon: "bookmark-added",
|
||||||
|
|
|
@ -205,7 +205,7 @@ const globalImportContext = typeof Window === "undefined" ? BACKGROUND_PROCESS :
|
||||||
// }
|
// }
|
||||||
const actionTypes = {};
|
const actionTypes = {};
|
||||||
|
|
||||||
for (const type of ["ADDONS_INFO_REQUEST", "ADDONS_INFO_RESPONSE", "ARCHIVE_FROM_POCKET", "AS_ROUTER_INITIALIZED", "AS_ROUTER_PREF_CHANGED", "AS_ROUTER_TARGETING_UPDATE", "AS_ROUTER_TELEMETRY_USER_EVENT", "BLOCK_URL", "BOOKMARK_URL", "CLEAR_PREF", "COPY_DOWNLOAD_LINK", "DELETE_BOOKMARK_BY_ID", "DELETE_FROM_POCKET", "DELETE_HISTORY_URL", "DIALOG_CANCEL", "DIALOG_OPEN", "DISCOVERY_STREAM_COLLECTION_DISMISSIBLE_TOGGLE", "DISCOVERY_STREAM_CONFIG_CHANGE", "DISCOVERY_STREAM_CONFIG_RESET", "DISCOVERY_STREAM_CONFIG_RESET_DEFAULTS", "DISCOVERY_STREAM_CONFIG_SETUP", "DISCOVERY_STREAM_CONFIG_SET_VALUE", "DISCOVERY_STREAM_DEV_EXPIRE_CACHE", "DISCOVERY_STREAM_DEV_IDLE_DAILY", "DISCOVERY_STREAM_DEV_SYNC_RS", "DISCOVERY_STREAM_DEV_SYSTEM_TICK", "DISCOVERY_STREAM_FEEDS_UPDATE", "DISCOVERY_STREAM_FEED_UPDATE", "DISCOVERY_STREAM_IMPRESSION_STATS", "DISCOVERY_STREAM_LAYOUT_RESET", "DISCOVERY_STREAM_LAYOUT_UPDATE", "DISCOVERY_STREAM_LINK_BLOCKED", "DISCOVERY_STREAM_LOADED_CONTENT", "DISCOVERY_STREAM_PERSONALIZATION_INIT", "DISCOVERY_STREAM_PERSONALIZATION_LAST_UPDATED", "DISCOVERY_STREAM_PERSONALIZATION_VERSION", "DISCOVERY_STREAM_PERSONALIZATION_VERSION_TOGGLE", "DISCOVERY_STREAM_RETRY_FEED", "DISCOVERY_STREAM_SPOCS_CAPS", "DISCOVERY_STREAM_SPOCS_ENDPOINT", "DISCOVERY_STREAM_SPOCS_FILL", "DISCOVERY_STREAM_SPOCS_PLACEMENTS", "DISCOVERY_STREAM_SPOCS_UPDATE", "DISCOVERY_STREAM_SPOC_BLOCKED", "DISCOVERY_STREAM_SPOC_IMPRESSION", "DOWNLOAD_CHANGED", "FAKE_FOCUS_SEARCH", "FILL_SEARCH_TERM", "HANDOFF_SEARCH_TO_AWESOMEBAR", "HIDE_PRIVACY_INFO", "HIDE_SEARCH", "INIT", "NEW_TAB_INIT", "NEW_TAB_INITIAL_STATE", "NEW_TAB_LOAD", "NEW_TAB_REHYDRATED", "NEW_TAB_STATE_REQUEST", "NEW_TAB_UNLOAD", "OPEN_DOWNLOAD_FILE", "OPEN_LINK", "OPEN_NEW_WINDOW", "OPEN_PRIVATE_WINDOW", "OPEN_WEBEXT_SETTINGS", "PARTNER_LINK_ATTRIBUTION", "PLACES_BOOKMARK_ADDED", "PLACES_BOOKMARK_REMOVED", "PLACES_HISTORY_CLEARED", "PLACES_LINKS_CHANGED", "PLACES_LINK_BLOCKED", "PLACES_LINK_DELETED", "PLACES_SAVED_TO_POCKET", "POCKET_CTA", "POCKET_LINK_DELETED_OR_ARCHIVED", "POCKET_LOGGED_IN", "POCKET_WAITING_FOR_SPOC", "PREFS_INITIAL_VALUES", "PREF_CHANGED", "PREVIEW_REQUEST", "PREVIEW_REQUEST_CANCEL", "PREVIEW_RESPONSE", "REMOVE_DOWNLOAD_FILE", "RICH_ICON_MISSING", "SAVE_SESSION_PERF_DATA", "SAVE_TO_POCKET", "SCREENSHOT_UPDATED", "SECTION_DEREGISTER", "SECTION_DISABLE", "SECTION_ENABLE", "SECTION_MOVE", "SECTION_OPTIONS_CHANGED", "SECTION_REGISTER", "SECTION_UPDATE", "SECTION_UPDATE_CARD", "SETTINGS_CLOSE", "SETTINGS_OPEN", "SET_PREF", "SHOW_DOWNLOAD_FILE", "SHOW_FIREFOX_ACCOUNTS", "SHOW_PRIVACY_INFO", "SHOW_SEARCH", "SKIPPED_SIGNIN", "SNIPPETS_BLOCKLIST_CLEARED", "SNIPPETS_BLOCKLIST_UPDATED", "SNIPPETS_DATA", "SNIPPETS_PREVIEW_MODE", "SNIPPETS_RESET", "SNIPPET_BLOCKED", "SUBMIT_EMAIL", "SUBMIT_SIGNIN", "SYSTEM_TICK", "TELEMETRY_IMPRESSION_STATS", "TELEMETRY_PERFORMANCE_EVENT", "TELEMETRY_UNDESIRED_EVENT", "TELEMETRY_USER_EVENT", "TOP_SITES_CANCEL_EDIT", "TOP_SITES_CLOSE_SEARCH_SHORTCUTS_MODAL", "TOP_SITES_EDIT", "TOP_SITES_INSERT", "TOP_SITES_OPEN_SEARCH_SHORTCUTS_MODAL", "TOP_SITES_PIN", "TOP_SITES_PREFS_UPDATED", "TOP_SITES_UNPIN", "TOP_SITES_UPDATED", "TOTAL_BOOKMARKS_REQUEST", "TOTAL_BOOKMARKS_RESPONSE", "UNINIT", "UPDATE_PINNED_SEARCH_SHORTCUTS", "UPDATE_SEARCH_SHORTCUTS", "UPDATE_SECTION_PREFS", "WEBEXT_CLICK", "WEBEXT_DISMISS"]) {
|
for (const type of ["ABOUT_SPONSORED_TOP_SITES", "ADDONS_INFO_REQUEST", "ADDONS_INFO_RESPONSE", "ARCHIVE_FROM_POCKET", "AS_ROUTER_INITIALIZED", "AS_ROUTER_PREF_CHANGED", "AS_ROUTER_TARGETING_UPDATE", "AS_ROUTER_TELEMETRY_USER_EVENT", "BLOCK_URL", "BOOKMARK_URL", "CLEAR_PREF", "COPY_DOWNLOAD_LINK", "DELETE_BOOKMARK_BY_ID", "DELETE_FROM_POCKET", "DELETE_HISTORY_URL", "DIALOG_CANCEL", "DIALOG_OPEN", "DISCOVERY_STREAM_COLLECTION_DISMISSIBLE_TOGGLE", "DISCOVERY_STREAM_CONFIG_CHANGE", "DISCOVERY_STREAM_CONFIG_RESET", "DISCOVERY_STREAM_CONFIG_RESET_DEFAULTS", "DISCOVERY_STREAM_CONFIG_SETUP", "DISCOVERY_STREAM_CONFIG_SET_VALUE", "DISCOVERY_STREAM_DEV_EXPIRE_CACHE", "DISCOVERY_STREAM_DEV_IDLE_DAILY", "DISCOVERY_STREAM_DEV_SYNC_RS", "DISCOVERY_STREAM_DEV_SYSTEM_TICK", "DISCOVERY_STREAM_FEEDS_UPDATE", "DISCOVERY_STREAM_FEED_UPDATE", "DISCOVERY_STREAM_IMPRESSION_STATS", "DISCOVERY_STREAM_LAYOUT_RESET", "DISCOVERY_STREAM_LAYOUT_UPDATE", "DISCOVERY_STREAM_LINK_BLOCKED", "DISCOVERY_STREAM_LOADED_CONTENT", "DISCOVERY_STREAM_PERSONALIZATION_INIT", "DISCOVERY_STREAM_PERSONALIZATION_LAST_UPDATED", "DISCOVERY_STREAM_PERSONALIZATION_VERSION", "DISCOVERY_STREAM_PERSONALIZATION_VERSION_TOGGLE", "DISCOVERY_STREAM_RETRY_FEED", "DISCOVERY_STREAM_SPOCS_CAPS", "DISCOVERY_STREAM_SPOCS_ENDPOINT", "DISCOVERY_STREAM_SPOCS_FILL", "DISCOVERY_STREAM_SPOCS_PLACEMENTS", "DISCOVERY_STREAM_SPOCS_UPDATE", "DISCOVERY_STREAM_SPOC_BLOCKED", "DISCOVERY_STREAM_SPOC_IMPRESSION", "DOWNLOAD_CHANGED", "FAKE_FOCUS_SEARCH", "FILL_SEARCH_TERM", "HANDOFF_SEARCH_TO_AWESOMEBAR", "HIDE_PRIVACY_INFO", "HIDE_SEARCH", "INIT", "NEW_TAB_INIT", "NEW_TAB_INITIAL_STATE", "NEW_TAB_LOAD", "NEW_TAB_REHYDRATED", "NEW_TAB_STATE_REQUEST", "NEW_TAB_UNLOAD", "OPEN_DOWNLOAD_FILE", "OPEN_LINK", "OPEN_NEW_WINDOW", "OPEN_PRIVATE_WINDOW", "OPEN_WEBEXT_SETTINGS", "PARTNER_LINK_ATTRIBUTION", "PLACES_BOOKMARK_ADDED", "PLACES_BOOKMARK_REMOVED", "PLACES_HISTORY_CLEARED", "PLACES_LINKS_CHANGED", "PLACES_LINK_BLOCKED", "PLACES_LINK_DELETED", "PLACES_SAVED_TO_POCKET", "POCKET_CTA", "POCKET_LINK_DELETED_OR_ARCHIVED", "POCKET_LOGGED_IN", "POCKET_WAITING_FOR_SPOC", "PREFS_INITIAL_VALUES", "PREF_CHANGED", "PREVIEW_REQUEST", "PREVIEW_REQUEST_CANCEL", "PREVIEW_RESPONSE", "REMOVE_DOWNLOAD_FILE", "RICH_ICON_MISSING", "SAVE_SESSION_PERF_DATA", "SAVE_TO_POCKET", "SCREENSHOT_UPDATED", "SECTION_DEREGISTER", "SECTION_DISABLE", "SECTION_ENABLE", "SECTION_MOVE", "SECTION_OPTIONS_CHANGED", "SECTION_REGISTER", "SECTION_UPDATE", "SECTION_UPDATE_CARD", "SETTINGS_CLOSE", "SETTINGS_OPEN", "SET_PREF", "SHOW_DOWNLOAD_FILE", "SHOW_FIREFOX_ACCOUNTS", "SHOW_PRIVACY_INFO", "SHOW_SEARCH", "SKIPPED_SIGNIN", "SNIPPETS_BLOCKLIST_CLEARED", "SNIPPETS_BLOCKLIST_UPDATED", "SNIPPETS_DATA", "SNIPPETS_PREVIEW_MODE", "SNIPPETS_RESET", "SNIPPET_BLOCKED", "SUBMIT_EMAIL", "SUBMIT_SIGNIN", "SYSTEM_TICK", "TELEMETRY_IMPRESSION_STATS", "TELEMETRY_PERFORMANCE_EVENT", "TELEMETRY_UNDESIRED_EVENT", "TELEMETRY_USER_EVENT", "TOP_SITES_CANCEL_EDIT", "TOP_SITES_CLOSE_SEARCH_SHORTCUTS_MODAL", "TOP_SITES_EDIT", "TOP_SITES_INSERT", "TOP_SITES_OPEN_SEARCH_SHORTCUTS_MODAL", "TOP_SITES_PIN", "TOP_SITES_PREFS_UPDATED", "TOP_SITES_UNPIN", "TOP_SITES_UPDATED", "TOTAL_BOOKMARKS_REQUEST", "TOTAL_BOOKMARKS_RESPONSE", "UNINIT", "UPDATE_PINNED_SEARCH_SHORTCUTS", "UPDATE_SEARCH_SHORTCUTS", "UPDATE_SECTION_PREFS", "WEBEXT_CLICK", "WEBEXT_DISMISS"]) {
|
||||||
actionTypes[type] = type;
|
actionTypes[type] = type;
|
||||||
} // Helper function for creating routed actions between content and main
|
} // Helper function for creating routed actions between content and main
|
||||||
// Not intended to be used by consumers
|
// Not intended to be used by consumers
|
||||||
|
@ -4874,6 +4874,14 @@ const LinkMenuOptions = {
|
||||||
},
|
},
|
||||||
userEvent: "SHOW_PRIVACY_INFO"
|
userEvent: "SHOW_PRIVACY_INFO"
|
||||||
}),
|
}),
|
||||||
|
AboutSponsored: site => ({
|
||||||
|
id: "newtab-menu-show-privacy-info",
|
||||||
|
icon: "info",
|
||||||
|
action: common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__["actionCreators"].AlsoToMain({
|
||||||
|
type: common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__["actionTypes"].ABOUT_SPONSORED_TOP_SITES
|
||||||
|
}),
|
||||||
|
userEvent: "TOPSITE_SPONSOR_INFO"
|
||||||
|
}),
|
||||||
RemoveBookmark: site => ({
|
RemoveBookmark: site => ({
|
||||||
id: "newtab-menu-remove-bookmark",
|
id: "newtab-menu-remove-bookmark",
|
||||||
icon: "bookmark-added",
|
icon: "bookmark-added",
|
||||||
|
@ -9023,7 +9031,7 @@ __webpack_require__.r(__webpack_exports__);
|
||||||
const TOP_SITES_SOURCE = "TOP_SITES";
|
const TOP_SITES_SOURCE = "TOP_SITES";
|
||||||
const TOP_SITES_CONTEXT_MENU_OPTIONS = ["CheckPinTopSite", "EditTopSite", "Separator", "OpenInNewWindow", "OpenInPrivateWindow", "Separator", "BlockUrl", "DeleteUrl"];
|
const TOP_SITES_CONTEXT_MENU_OPTIONS = ["CheckPinTopSite", "EditTopSite", "Separator", "OpenInNewWindow", "OpenInPrivateWindow", "Separator", "BlockUrl", "DeleteUrl"];
|
||||||
const TOP_SITES_SPOC_CONTEXT_MENU_OPTIONS = ["PinSpocTopSite", "Separator", "OpenInNewWindow", "OpenInPrivateWindow", "Separator", "BlockUrl", "ShowPrivacyInfo"];
|
const TOP_SITES_SPOC_CONTEXT_MENU_OPTIONS = ["PinSpocTopSite", "Separator", "OpenInNewWindow", "OpenInPrivateWindow", "Separator", "BlockUrl", "ShowPrivacyInfo"];
|
||||||
const TOP_SITES_SPONSORED_POSITION_CONTEXT_MENU_OPTIONS = ["PinSpocTopSite", "Separator", "OpenInNewWindow", "OpenInPrivateWindow", "Separator", "BlockUrl", "ShowPrivacyInfo"]; // the special top site for search shortcut experiment can only have the option to unpin (which removes) the topsite
|
const TOP_SITES_SPONSORED_POSITION_CONTEXT_MENU_OPTIONS = ["PinSpocTopSite", "Separator", "OpenInNewWindow", "OpenInPrivateWindow", "Separator", "BlockUrl", "AboutSponsored"]; // the special top site for search shortcut experiment can only have the option to unpin (which removes) the topsite
|
||||||
|
|
||||||
const TOP_SITES_SEARCH_SHORTCUTS_CONTEXT_MENU_OPTIONS = ["CheckPinTopSite", "Separator", "BlockUrl"]; // minimum size necessary to show a rich icon instead of a screenshot
|
const TOP_SITES_SEARCH_SHORTCUTS_CONTEXT_MENU_OPTIONS = ["CheckPinTopSite", "Separator", "BlockUrl"]; // minimum size necessary to show a rich icon instead of a screenshot
|
||||||
|
|
||||||
|
|
|
@ -164,6 +164,12 @@ module.exports = function(config) {
|
||||||
functions: 100,
|
functions: 100,
|
||||||
branches: 0,
|
branches: 0,
|
||||||
},
|
},
|
||||||
|
"content-src/lib/link-menu-options.js": {
|
||||||
|
statements: 96,
|
||||||
|
lines: 96,
|
||||||
|
functions: 96,
|
||||||
|
branches: 70,
|
||||||
|
},
|
||||||
"content-src/aboutwelcome/**/*.jsx": {
|
"content-src/aboutwelcome/**/*.jsx": {
|
||||||
statements: 50,
|
statements: 50,
|
||||||
lines: 50,
|
lines: 50,
|
||||||
|
|
|
@ -479,6 +479,14 @@ class PlacesFeed {
|
||||||
case at.UNINIT:
|
case at.UNINIT:
|
||||||
this.removeObservers();
|
this.removeObservers();
|
||||||
break;
|
break;
|
||||||
|
case at.ABOUT_SPONSORED_TOP_SITES: {
|
||||||
|
const url = `${Services.urlFormatter.formatURLPref(
|
||||||
|
"app.support.baseURL"
|
||||||
|
)}sponsor-privacy`;
|
||||||
|
const win = action._target.browser.ownerGlobal;
|
||||||
|
win.openTrustedLinkIn(url, "tab");
|
||||||
|
break;
|
||||||
|
}
|
||||||
case at.BLOCK_URL: {
|
case at.BLOCK_URL: {
|
||||||
if (action.data) {
|
if (action.data) {
|
||||||
action.data.forEach(site => {
|
action.data.forEach(site => {
|
||||||
|
|
|
@ -378,6 +378,24 @@ describe("PlacesFeed", () => {
|
||||||
|
|
||||||
assert.calledOnce(feed.fillSearchTopSiteTerm);
|
assert.calledOnce(feed.fillSearchTopSiteTerm);
|
||||||
});
|
});
|
||||||
|
it("should call openTrustedLinkIn with the correct SUMO url on ABOUT_SPONSORED_TOP_SITES", () => {
|
||||||
|
const openTrustedLinkIn = sinon.stub();
|
||||||
|
const openLinkAction = {
|
||||||
|
type: at.ABOUT_SPONSORED_TOP_SITES,
|
||||||
|
_target: {
|
||||||
|
browser: {
|
||||||
|
ownerGlobal: { openTrustedLinkIn },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
feed.onAction(openLinkAction);
|
||||||
|
|
||||||
|
assert.calledOnce(openTrustedLinkIn);
|
||||||
|
const [url, where] = openTrustedLinkIn.firstCall.args;
|
||||||
|
assert.equal(url.endsWith("sponsor-privacy"), true);
|
||||||
|
assert.equal(where, "tab");
|
||||||
|
});
|
||||||
it("should set the URL bar value to the label value", () => {
|
it("should set the URL bar value to the label value", () => {
|
||||||
const locationBar = { search: sandbox.stub() };
|
const locationBar = { search: sandbox.stub() };
|
||||||
const action = {
|
const action = {
|
||||||
|
|
|
@ -64,6 +64,7 @@ activity_stream:
|
||||||
"MENU_REMOVE",
|
"MENU_REMOVE",
|
||||||
"TOP_SITES_EDIT",
|
"TOP_SITES_EDIT",
|
||||||
"TOP_SITES_EDIT_CLOSE",
|
"TOP_SITES_EDIT_CLOSE",
|
||||||
|
"TOPSITE_SPONSOR_INFO",
|
||||||
"UNPIN"]
|
"UNPIN"]
|
||||||
release_channel_collection: opt-out
|
release_channel_collection: opt-out
|
||||||
products:
|
products:
|
||||||
|
|
Загрузка…
Ссылка в новой задаче