mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-03-04 07:40:42 +00:00
Bug 1441018 - Add snippets data, lazy menus and bug fixes to Activity Stream. r=k88hudson
MozReview-Commit-ID: 6CilV8vrqwY --HG-- extra : rebase_source : 438c0250cc9a96b20e94ec53a0b43eae1b02e6d5
This commit is contained in:
parent
101d7d588a
commit
d96c554c26
@ -3,11 +3,11 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
"use strict";
|
||||
|
||||
var MAIN_MESSAGE_TYPE = "ActivityStream:Main";
|
||||
var CONTENT_MESSAGE_TYPE = "ActivityStream:Content";
|
||||
var PRELOAD_MESSAGE_TYPE = "ActivityStream:PreloadedBrowser";
|
||||
var UI_CODE = 1;
|
||||
var BACKGROUND_PROCESS = 2;
|
||||
this.MAIN_MESSAGE_TYPE = "ActivityStream:Main";
|
||||
this.CONTENT_MESSAGE_TYPE = "ActivityStream:Content";
|
||||
this.PRELOAD_MESSAGE_TYPE = "ActivityStream:PreloadedBrowser";
|
||||
this.UI_CODE = 1;
|
||||
this.BACKGROUND_PROCESS = 2;
|
||||
|
||||
/**
|
||||
* globalImportContext - Are we in UI code (i.e. react, a dom) or some kind of background process?
|
||||
@ -88,6 +88,8 @@ for (const type of [
|
||||
"TOP_SITES_PIN",
|
||||
"TOP_SITES_UNPIN",
|
||||
"TOP_SITES_UPDATED",
|
||||
"TOTAL_BOOKMARKS_REQUEST",
|
||||
"TOTAL_BOOKMARKS_RESPONSE",
|
||||
"UNINIT",
|
||||
"WEBEXT_CLICK",
|
||||
"WEBEXT_DISMISS"
|
||||
@ -277,7 +279,7 @@ function WebExtEvent(type, data, importContext = globalImportContext) {
|
||||
|
||||
this.actionTypes = actionTypes;
|
||||
|
||||
var actionCreators = {
|
||||
this.actionCreators = {
|
||||
BroadcastToContent,
|
||||
UserEvent,
|
||||
UndesiredEvent,
|
||||
@ -293,7 +295,7 @@ var actionCreators = {
|
||||
};
|
||||
|
||||
// These are helpers to test for certain kinds of actions
|
||||
var actionUtils = {
|
||||
this.actionUtils = {
|
||||
isSendToMain(action) {
|
||||
if (!action.meta) {
|
||||
return false;
|
||||
@ -338,7 +340,7 @@ var actionUtils = {
|
||||
_RouteMessage
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = [
|
||||
const EXPORTED_SYMBOLS = [
|
||||
"actionTypes",
|
||||
"actionCreators",
|
||||
"actionUtils",
|
||||
|
@ -1,4 +1,4 @@
|
||||
var Dedupe = class Dedupe {
|
||||
this.Dedupe = class Dedupe {
|
||||
constructor(createKey) {
|
||||
this.createKey = createKey || this.defaultCreateKey;
|
||||
}
|
||||
@ -31,4 +31,4 @@ var Dedupe = class Dedupe {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["Dedupe"];
|
||||
const EXPORTED_SYMBOLS = ["Dedupe"];
|
||||
|
@ -121,5 +121,5 @@ _PerfService.prototype = {
|
||||
}
|
||||
};
|
||||
|
||||
var perfService = new _PerfService();
|
||||
var EXPORTED_SYMBOLS = ["_PerfService", "perfService"];
|
||||
this.perfService = new _PerfService();
|
||||
const EXPORTED_SYMBOLS = ["_PerfService", "perfService"];
|
||||
|
@ -46,7 +46,7 @@ class _PrerenderData {
|
||||
}
|
||||
}
|
||||
|
||||
var PrerenderData = new _PrerenderData({
|
||||
this.PrerenderData = new _PrerenderData({
|
||||
initialPrefs: {
|
||||
"migrationExpired": true,
|
||||
"showTopSites": true,
|
||||
@ -96,4 +96,4 @@ var PrerenderData = new _PrerenderData({
|
||||
});
|
||||
|
||||
this._PrerenderData = _PrerenderData;
|
||||
var EXPORTED_SYMBOLS = ["PrerenderData", "_PrerenderData"];
|
||||
const EXPORTED_SYMBOLS = ["PrerenderData", "_PrerenderData"];
|
||||
|
@ -207,6 +207,19 @@ function Sections(prevState = INITIAL_STATE.Sections, action) {
|
||||
// If the action is updating rows, we should consider initialized to be true.
|
||||
// This can be overridden if initialized is defined in the action.data
|
||||
const initialized = action.data.rows ? {initialized: true} : {};
|
||||
|
||||
// Make sure pinned cards stay at their current position when rows are updated.
|
||||
// Disabling a section (SECTION_UPDATE with empty rows) does not retain pinned cards.
|
||||
if (action.data.rows && action.data.rows.length > 0 && section.rows.find(card => card.pinned)) {
|
||||
const rows = Array.from(action.data.rows);
|
||||
section.rows.forEach((card, index) => {
|
||||
if (card.pinned) {
|
||||
rows.splice(index, 0, card);
|
||||
}
|
||||
});
|
||||
return Object.assign({}, section, initialized, Object.assign({}, action.data, {rows}));
|
||||
}
|
||||
|
||||
return Object.assign({}, section, initialized, action.data);
|
||||
}
|
||||
return section;
|
||||
@ -273,6 +286,7 @@ function Sections(prevState = INITIAL_STATE.Sections, action) {
|
||||
rows: section.rows.map(item => {
|
||||
if (item.url === action.data.url) {
|
||||
return Object.assign({}, item, {
|
||||
open_url: action.data.open_url,
|
||||
pocket_id: action.data.pocket_id,
|
||||
title: action.data.title,
|
||||
type: "pocket"
|
||||
@ -342,6 +356,6 @@ this.INITIAL_STATE = INITIAL_STATE;
|
||||
this.TOP_SITES_DEFAULT_ROWS = TOP_SITES_DEFAULT_ROWS;
|
||||
this.TOP_SITES_MAX_SITES_PER_ROW = TOP_SITES_MAX_SITES_PER_ROW;
|
||||
|
||||
var reducers = {TopSites, App, Snippets, Prefs, Dialog, Sections, PreferencesPane};
|
||||
this.reducers = {TopSites, App, Snippets, Prefs, Dialog, Sections, PreferencesPane};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["reducers", "INITIAL_STATE", "insertPinned", "TOP_SITES_DEFAULT_ROWS", "TOP_SITES_MAX_SITES_PER_ROW"];
|
||||
const EXPORTED_SYMBOLS = ["reducers", "INITIAL_STATE", "insertPinned", "TOP_SITES_DEFAULT_ROWS", "TOP_SITES_MAX_SITES_PER_ROW"];
|
||||
|
@ -1196,7 +1196,7 @@ main {
|
||||
background: url("chrome://browser/skin/page-action.svg") no-repeat right center;
|
||||
border: 0;
|
||||
cursor: pointer;
|
||||
fill: #D7D7DB;
|
||||
fill: #737373;
|
||||
height: 27px;
|
||||
offset-inline-end: 0;
|
||||
opacity: 0;
|
||||
@ -1206,21 +1206,22 @@ main {
|
||||
transition-property: opacity;
|
||||
width: 27px; }
|
||||
.collapsible-section .section-top-bar .context-menu-button:-moz-any(:active, :focus, :hover) {
|
||||
fill: rgba(12, 12, 13, 0.8); }
|
||||
fill: #0C0C0D; }
|
||||
.collapsible-section .section-top-bar .context-menu {
|
||||
top: 16px; }
|
||||
@media (max-width: 1458px) {
|
||||
.collapsible-section .section-top-bar .context-menu {
|
||||
margin-inline-end: 5px;
|
||||
margin-inline-start: auto;
|
||||
offset-inline-end: 0;
|
||||
offset-inline-start: auto; } }
|
||||
.collapsible-section:hover .section-top-bar .context-menu-button, .collapsible-section.active .section-top-bar .context-menu-button {
|
||||
opacity: 1; }
|
||||
.collapsible-section.active {
|
||||
background: rgba(237, 237, 240, 0.2); }
|
||||
background: rgba(237, 237, 240, 0.6);
|
||||
border-radius: 4px; }
|
||||
.collapsible-section.active .section-top-bar .context-menu-button {
|
||||
fill: rgba(12, 12, 13, 0.8); }
|
||||
@media (max-width: 1458px) {
|
||||
.collapsible-section .context-menu {
|
||||
margin-inline-end: 5px;
|
||||
margin-inline-start: auto;
|
||||
offset-inline-end: 0;
|
||||
offset-inline-start: auto; } }
|
||||
fill: #0C0C0D; }
|
||||
.collapsible-section .section-disclaimer {
|
||||
color: #4A4A4F;
|
||||
font-size: 13px;
|
||||
|
File diff suppressed because one or more lines are too long
@ -1196,7 +1196,7 @@ main {
|
||||
background: url("chrome://browser/skin/page-action.svg") no-repeat right center;
|
||||
border: 0;
|
||||
cursor: pointer;
|
||||
fill: #D7D7DB;
|
||||
fill: #737373;
|
||||
height: 27px;
|
||||
offset-inline-end: 0;
|
||||
opacity: 0;
|
||||
@ -1206,21 +1206,22 @@ main {
|
||||
transition-property: opacity;
|
||||
width: 27px; }
|
||||
.collapsible-section .section-top-bar .context-menu-button:-moz-any(:active, :focus, :hover) {
|
||||
fill: rgba(12, 12, 13, 0.8); }
|
||||
fill: #0C0C0D; }
|
||||
.collapsible-section .section-top-bar .context-menu {
|
||||
top: 16px; }
|
||||
@media (max-width: 1458px) {
|
||||
.collapsible-section .section-top-bar .context-menu {
|
||||
margin-inline-end: 5px;
|
||||
margin-inline-start: auto;
|
||||
offset-inline-end: 0;
|
||||
offset-inline-start: auto; } }
|
||||
.collapsible-section:hover .section-top-bar .context-menu-button, .collapsible-section.active .section-top-bar .context-menu-button {
|
||||
opacity: 1; }
|
||||
.collapsible-section.active {
|
||||
background: rgba(237, 237, 240, 0.2); }
|
||||
background: rgba(237, 237, 240, 0.6);
|
||||
border-radius: 4px; }
|
||||
.collapsible-section.active .section-top-bar .context-menu-button {
|
||||
fill: rgba(12, 12, 13, 0.8); }
|
||||
@media (max-width: 1458px) {
|
||||
.collapsible-section .context-menu {
|
||||
margin-inline-end: 5px;
|
||||
margin-inline-start: auto;
|
||||
offset-inline-end: 0;
|
||||
offset-inline-start: auto; } }
|
||||
fill: #0C0C0D; }
|
||||
.collapsible-section .section-disclaimer {
|
||||
color: #4A4A4F;
|
||||
font-size: 13px;
|
||||
|
File diff suppressed because one or more lines are too long
@ -1196,7 +1196,7 @@ main {
|
||||
background: url("chrome://browser/skin/page-action.svg") no-repeat right center;
|
||||
border: 0;
|
||||
cursor: pointer;
|
||||
fill: #D7D7DB;
|
||||
fill: #737373;
|
||||
height: 27px;
|
||||
offset-inline-end: 0;
|
||||
opacity: 0;
|
||||
@ -1206,21 +1206,22 @@ main {
|
||||
transition-property: opacity;
|
||||
width: 27px; }
|
||||
.collapsible-section .section-top-bar .context-menu-button:-moz-any(:active, :focus, :hover) {
|
||||
fill: rgba(12, 12, 13, 0.8); }
|
||||
fill: #0C0C0D; }
|
||||
.collapsible-section .section-top-bar .context-menu {
|
||||
top: 16px; }
|
||||
@media (max-width: 1458px) {
|
||||
.collapsible-section .section-top-bar .context-menu {
|
||||
margin-inline-end: 5px;
|
||||
margin-inline-start: auto;
|
||||
offset-inline-end: 0;
|
||||
offset-inline-start: auto; } }
|
||||
.collapsible-section:hover .section-top-bar .context-menu-button, .collapsible-section.active .section-top-bar .context-menu-button {
|
||||
opacity: 1; }
|
||||
.collapsible-section.active {
|
||||
background: rgba(237, 237, 240, 0.2); }
|
||||
background: rgba(237, 237, 240, 0.6);
|
||||
border-radius: 4px; }
|
||||
.collapsible-section.active .section-top-bar .context-menu-button {
|
||||
fill: rgba(12, 12, 13, 0.8); }
|
||||
@media (max-width: 1458px) {
|
||||
.collapsible-section .context-menu {
|
||||
margin-inline-end: 5px;
|
||||
margin-inline-start: auto;
|
||||
offset-inline-end: 0;
|
||||
offset-inline-start: auto; } }
|
||||
fill: #0C0C0D; }
|
||||
.collapsible-section .section-disclaimer {
|
||||
color: #4A4A4F;
|
||||
font-size: 13px;
|
||||
|
File diff suppressed because one or more lines are too long
@ -106,7 +106,7 @@ const actionTypes = {};
|
||||
/* harmony export (immutable) */ __webpack_exports__["b"] = actionTypes;
|
||||
|
||||
|
||||
for (const type of ["ARCHIVE_FROM_POCKET", "BLOCK_URL", "BOOKMARK_URL", "DELETE_BOOKMARK_BY_ID", "DELETE_FROM_POCKET", "DELETE_HISTORY_URL", "DELETE_HISTORY_URL_CONFIRM", "DIALOG_CANCEL", "DIALOG_OPEN", "DISABLE_ONBOARDING", "INIT", "MIGRATION_CANCEL", "MIGRATION_COMPLETED", "MIGRATION_START", "NEW_TAB_INIT", "NEW_TAB_INITIAL_STATE", "NEW_TAB_LOAD", "NEW_TAB_REHYDRATED", "NEW_TAB_STATE_REQUEST", "NEW_TAB_UNLOAD", "OPEN_LINK", "OPEN_NEW_WINDOW", "OPEN_PRIVATE_WINDOW", "PAGE_PRERENDERED", "PLACES_BOOKMARK_ADDED", "PLACES_BOOKMARK_CHANGED", "PLACES_BOOKMARK_REMOVED", "PLACES_HISTORY_CLEARED", "PLACES_LINKS_DELETED", "PLACES_LINK_BLOCKED", "PLACES_SAVED_TO_POCKET", "PREFS_INITIAL_VALUES", "PREF_CHANGED", "RICH_ICON_MISSING", "SAVE_SESSION_PERF_DATA", "SAVE_TO_POCKET", "SCREENSHOT_UPDATED", "SECTION_DEREGISTER", "SECTION_DISABLE", "SECTION_ENABLE", "SECTION_OPTIONS_CHANGED", "SECTION_REGISTER", "SECTION_UPDATE", "SECTION_UPDATE_CARD", "SETTINGS_CLOSE", "SETTINGS_OPEN", "SET_PREF", "SHOW_FIREFOX_ACCOUNTS", "SNIPPETS_BLOCKLIST_UPDATED", "SNIPPETS_DATA", "SNIPPETS_RESET", "SNIPPET_BLOCKED", "SYSTEM_TICK", "TELEMETRY_IMPRESSION_STATS", "TELEMETRY_PERFORMANCE_EVENT", "TELEMETRY_UNDESIRED_EVENT", "TELEMETRY_USER_EVENT", "TOP_SITES_CANCEL_EDIT", "TOP_SITES_EDIT", "TOP_SITES_INSERT", "TOP_SITES_PIN", "TOP_SITES_UNPIN", "TOP_SITES_UPDATED", "UNINIT", "WEBEXT_CLICK", "WEBEXT_DISMISS"]) {
|
||||
for (const type of ["ARCHIVE_FROM_POCKET", "BLOCK_URL", "BOOKMARK_URL", "DELETE_BOOKMARK_BY_ID", "DELETE_FROM_POCKET", "DELETE_HISTORY_URL", "DELETE_HISTORY_URL_CONFIRM", "DIALOG_CANCEL", "DIALOG_OPEN", "DISABLE_ONBOARDING", "INIT", "MIGRATION_CANCEL", "MIGRATION_COMPLETED", "MIGRATION_START", "NEW_TAB_INIT", "NEW_TAB_INITIAL_STATE", "NEW_TAB_LOAD", "NEW_TAB_REHYDRATED", "NEW_TAB_STATE_REQUEST", "NEW_TAB_UNLOAD", "OPEN_LINK", "OPEN_NEW_WINDOW", "OPEN_PRIVATE_WINDOW", "PAGE_PRERENDERED", "PLACES_BOOKMARK_ADDED", "PLACES_BOOKMARK_CHANGED", "PLACES_BOOKMARK_REMOVED", "PLACES_HISTORY_CLEARED", "PLACES_LINKS_DELETED", "PLACES_LINK_BLOCKED", "PLACES_SAVED_TO_POCKET", "PREFS_INITIAL_VALUES", "PREF_CHANGED", "RICH_ICON_MISSING", "SAVE_SESSION_PERF_DATA", "SAVE_TO_POCKET", "SCREENSHOT_UPDATED", "SECTION_DEREGISTER", "SECTION_DISABLE", "SECTION_ENABLE", "SECTION_OPTIONS_CHANGED", "SECTION_REGISTER", "SECTION_UPDATE", "SECTION_UPDATE_CARD", "SETTINGS_CLOSE", "SETTINGS_OPEN", "SET_PREF", "SHOW_FIREFOX_ACCOUNTS", "SNIPPETS_BLOCKLIST_UPDATED", "SNIPPETS_DATA", "SNIPPETS_RESET", "SNIPPET_BLOCKED", "SYSTEM_TICK", "TELEMETRY_IMPRESSION_STATS", "TELEMETRY_PERFORMANCE_EVENT", "TELEMETRY_UNDESIRED_EVENT", "TELEMETRY_USER_EVENT", "TOP_SITES_CANCEL_EDIT", "TOP_SITES_EDIT", "TOP_SITES_INSERT", "TOP_SITES_PIN", "TOP_SITES_UNPIN", "TOP_SITES_UPDATED", "TOTAL_BOOKMARKS_REQUEST", "TOTAL_BOOKMARKS_RESPONSE", "UNINIT", "WEBEXT_CLICK", "WEBEXT_DISMISS"]) {
|
||||
actionTypes[type] = type;
|
||||
}
|
||||
|
||||
@ -679,6 +679,19 @@ function Sections(prevState = INITIAL_STATE.Sections, action) {
|
||||
// If the action is updating rows, we should consider initialized to be true.
|
||||
// This can be overridden if initialized is defined in the action.data
|
||||
const initialized = action.data.rows ? { initialized: true } : {};
|
||||
|
||||
// Make sure pinned cards stay at their current position when rows are updated.
|
||||
// Disabling a section (SECTION_UPDATE with empty rows) does not retain pinned cards.
|
||||
if (action.data.rows && action.data.rows.length > 0 && section.rows.find(card => card.pinned)) {
|
||||
const rows = Array.from(action.data.rows);
|
||||
section.rows.forEach((card, index) => {
|
||||
if (card.pinned) {
|
||||
rows.splice(index, 0, card);
|
||||
}
|
||||
});
|
||||
return Object.assign({}, section, initialized, Object.assign({}, action.data, { rows }));
|
||||
}
|
||||
|
||||
return Object.assign({}, section, initialized, action.data);
|
||||
}
|
||||
return section;
|
||||
@ -745,6 +758,7 @@ function Sections(prevState = INITIAL_STATE.Sections, action) {
|
||||
rows: section.rows.map(item => {
|
||||
if (item.url === action.data.url) {
|
||||
return Object.assign({}, item, {
|
||||
open_url: action.data.open_url,
|
||||
pocket_id: action.data.pocket_id,
|
||||
title: action.data.title,
|
||||
type: "pocket"
|
||||
@ -906,6 +920,10 @@ ErrorBoundary.defaultProps = { FallbackComponent: ErrorBoundaryFallback };
|
||||
// EXTERNAL MODULE: ./system-addon/common/Actions.jsm
|
||||
var Actions = __webpack_require__(0);
|
||||
|
||||
// EXTERNAL MODULE: external "ReactRedux"
|
||||
var external__ReactRedux_ = __webpack_require__(4);
|
||||
var external__ReactRedux__default = /*#__PURE__*/__webpack_require__.n(external__ReactRedux_);
|
||||
|
||||
// EXTERNAL MODULE: ./system-addon/content-src/components/ContextMenu/ContextMenu.jsx
|
||||
var ContextMenu = __webpack_require__(9);
|
||||
|
||||
@ -916,6 +934,16 @@ var external__ReactIntl__default = /*#__PURE__*/__webpack_require__.n(external__
|
||||
// CONCATENATED MODULE: ./system-addon/content-src/lib/link-menu-options.js
|
||||
|
||||
|
||||
const _OpenInPrivateWindow = site => ({
|
||||
id: "menu_action_open_private_window",
|
||||
icon: "new-window-private",
|
||||
action: Actions["a" /* actionCreators */].OnlyToMain({
|
||||
type: Actions["b" /* actionTypes */].OPEN_PRIVATE_WINDOW,
|
||||
data: { url: site.url, referrer: site.referrer }
|
||||
}),
|
||||
userEvent: "OPEN_PRIVATE_WINDOW"
|
||||
});
|
||||
|
||||
/**
|
||||
* List of functions that return items that can be included as menu options in a
|
||||
* LinkMenu. All functions take the site as the first parameter, and optionally
|
||||
@ -951,15 +979,6 @@ const LinkMenuOptions = {
|
||||
}),
|
||||
userEvent: "OPEN_NEW_WINDOW"
|
||||
}),
|
||||
OpenInPrivateWindow: site => ({
|
||||
id: "menu_action_open_private_window",
|
||||
icon: "new-window-private",
|
||||
action: Actions["a" /* actionCreators */].AlsoToMain({
|
||||
type: Actions["b" /* actionTypes */].OPEN_PRIVATE_WINDOW,
|
||||
data: { url: site.url, referrer: site.referrer }
|
||||
}),
|
||||
userEvent: "OPEN_PRIVATE_WINDOW"
|
||||
}),
|
||||
BlockUrl: (site, index, eventSource) => ({
|
||||
id: "menu_action_dismiss",
|
||||
icon: "dismiss",
|
||||
@ -1065,7 +1084,8 @@ const LinkMenuOptions = {
|
||||
CheckPinTopSite: (site, index) => site.isPinned ? LinkMenuOptions.UnpinTopSite(site) : LinkMenuOptions.PinTopSite(site, index),
|
||||
CheckSavedToPocket: (site, index) => site.pocket_id ? LinkMenuOptions.DeleteFromPocket(site) : LinkMenuOptions.SaveToPocket(site, index),
|
||||
CheckBookmarkOrArchive: site => site.pocket_id ? LinkMenuOptions.ArchiveFromPocket(site) : LinkMenuOptions.CheckBookmark(site),
|
||||
CheckDeleteHistoryOrEmpty: (site, index, eventSource) => site.pocket_id ? LinkMenuOptions.EmptyItem() : LinkMenuOptions.DeleteUrl(site, index, eventSource)
|
||||
CheckDeleteHistoryOrEmpty: (site, index, eventSource) => site.pocket_id ? LinkMenuOptions.EmptyItem() : LinkMenuOptions.DeleteUrl(site, index, eventSource),
|
||||
OpenInPrivateWindow: (site, index, eventSource, isEnabled) => isEnabled ? _OpenInPrivateWindow(site) : LinkMenuOptions.EmptyItem()
|
||||
};
|
||||
// EXTERNAL MODULE: external "React"
|
||||
var external__React_ = __webpack_require__(1);
|
||||
@ -1078,17 +1098,18 @@ var external__React__default = /*#__PURE__*/__webpack_require__.n(external__Reac
|
||||
|
||||
|
||||
|
||||
|
||||
const DEFAULT_SITE_MENU_OPTIONS = ["CheckPinTopSite", "EditTopSite", "Separator", "OpenInNewWindow", "OpenInPrivateWindow", "Separator", "BlockUrl"];
|
||||
|
||||
class LinkMenu__LinkMenu extends external__React__default.a.PureComponent {
|
||||
getOptions() {
|
||||
const { props } = this;
|
||||
const { site, index, source } = props;
|
||||
const { site, index, source, isPrivateBrowsingEnabled } = props;
|
||||
|
||||
// Handle special case of default site
|
||||
const propOptions = !site.isDefault ? props.options : DEFAULT_SITE_MENU_OPTIONS;
|
||||
|
||||
const options = propOptions.map(o => LinkMenuOptions[o](site, index, source)).map(option => {
|
||||
const options = propOptions.map(o => LinkMenuOptions[o](site, index, source, isPrivateBrowsingEnabled)).map(option => {
|
||||
const { action, impression, id, string_id, type, userEvent } = option;
|
||||
if (!type && id) {
|
||||
option.label = props.intl.formatMessage({ id: string_id || id });
|
||||
@ -1119,7 +1140,6 @@ class LinkMenu__LinkMenu extends external__React__default.a.PureComponent {
|
||||
|
||||
render() {
|
||||
return external__React__default.a.createElement(ContextMenu["a" /* ContextMenu */], {
|
||||
visible: this.props.visible,
|
||||
onUpdate: this.props.onUpdate,
|
||||
options: this.getOptions() });
|
||||
}
|
||||
@ -1127,7 +1147,8 @@ class LinkMenu__LinkMenu extends external__React__default.a.PureComponent {
|
||||
/* unused harmony export _LinkMenu */
|
||||
|
||||
|
||||
const LinkMenu = Object(external__ReactIntl_["injectIntl"])(LinkMenu__LinkMenu);
|
||||
const getState = state => ({ isPrivateBrowsingEnabled: state.Prefs.values.isPrivateBrowsingEnabled });
|
||||
const LinkMenu = Object(external__ReactRedux_["connect"])(getState)(Object(external__ReactIntl_["injectIntl"])(LinkMenu__LinkMenu));
|
||||
/* harmony export (immutable) */ __webpack_exports__["a"] = LinkMenu;
|
||||
|
||||
|
||||
@ -1136,7 +1157,7 @@ const LinkMenu = Object(external__ReactIntl_["injectIntl"])(LinkMenu__LinkMenu);
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
|
||||
/* WEBPACK VAR INJECTION */(function(global) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(1);
|
||||
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__);
|
||||
|
||||
|
||||
@ -1150,29 +1171,20 @@ class ContextMenu extends __WEBPACK_IMPORTED_MODULE_0_react___default.a.PureComp
|
||||
this.props.onUpdate(false);
|
||||
}
|
||||
|
||||
componentWillMount() {
|
||||
this.hideContext();
|
||||
}
|
||||
|
||||
componentDidUpdate(prevProps) {
|
||||
if (this.props.visible && !prevProps.visible) {
|
||||
setTimeout(() => {
|
||||
window.addEventListener("click", this.hideContext);
|
||||
}, 0);
|
||||
}
|
||||
if (!this.props.visible && prevProps.visible) {
|
||||
window.removeEventListener("click", this.hideContext);
|
||||
}
|
||||
componentDidMount() {
|
||||
setTimeout(() => {
|
||||
global.addEventListener("click", this.hideContext);
|
||||
}, 0);
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
window.removeEventListener("click", this.hideContext);
|
||||
global.removeEventListener("click", this.hideContext);
|
||||
}
|
||||
|
||||
render() {
|
||||
return __WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement(
|
||||
"span",
|
||||
{ hidden: !this.props.visible, className: "context-menu" },
|
||||
{ className: "context-menu" },
|
||||
__WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement(
|
||||
"ul",
|
||||
{ role: "menu", className: "context-menu-list" },
|
||||
@ -1230,6 +1242,7 @@ class ContextMenuItem extends __WEBPACK_IMPORTED_MODULE_0_react___default.a.Pure
|
||||
}
|
||||
/* unused harmony export ContextMenuItem */
|
||||
|
||||
/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(3)))
|
||||
|
||||
/***/ }),
|
||||
/* 10 */
|
||||
@ -1439,7 +1452,7 @@ class _CollapsibleSection extends __WEBPACK_IMPORTED_MODULE_3_react___default.a.
|
||||
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_0_react_intl__["FormattedMessage"], { id: "section_context_menu_button_sr" })
|
||||
)
|
||||
),
|
||||
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_4_content_src_components_SectionMenu_SectionMenu__["a" /* SectionMenu */], {
|
||||
showContextMenu && __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_4_content_src_components_SectionMenu_SectionMenu__["a" /* SectionMenu */], {
|
||||
extraOptions: extraMenuOptions,
|
||||
eventSource: eventSource,
|
||||
showPrefName: showPrefName,
|
||||
@ -1447,7 +1460,6 @@ class _CollapsibleSection extends __WEBPACK_IMPORTED_MODULE_3_react___default.a.
|
||||
privacyNoticeURL: privacyNoticeURL,
|
||||
isCollapsed: isCollapsed,
|
||||
onUpdate: this.onMenuUpdate,
|
||||
visible: showContextMenu,
|
||||
dispatch: dispatch })
|
||||
)
|
||||
),
|
||||
@ -1997,14 +2009,13 @@ class TopSite extends __WEBPACK_IMPORTED_MODULE_4_react___default.a.PureComponen
|
||||
__WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_1_react_intl__["FormattedMessage"], { id: "context_menu_button_sr", values: { title } })
|
||||
)
|
||||
),
|
||||
__WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_3_content_src_components_LinkMenu_LinkMenu__["a" /* LinkMenu */], {
|
||||
isContextMenuOpen && __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_3_content_src_components_LinkMenu_LinkMenu__["a" /* LinkMenu */], {
|
||||
dispatch: props.dispatch,
|
||||
index: props.index,
|
||||
onUpdate: this.onMenuUpdate,
|
||||
options: __WEBPACK_IMPORTED_MODULE_2__TopSitesConstants__["c" /* TOP_SITES_CONTEXT_MENU_OPTIONS */],
|
||||
site: link,
|
||||
source: __WEBPACK_IMPORTED_MODULE_2__TopSitesConstants__["d" /* TOP_SITES_SOURCE */],
|
||||
visible: isContextMenuOpen })
|
||||
source: __WEBPACK_IMPORTED_MODULE_2__TopSitesConstants__["d" /* TOP_SITES_SOURCE */] })
|
||||
)
|
||||
);
|
||||
}
|
||||
@ -2346,6 +2357,18 @@ class SnippetsMap extends Map {
|
||||
this._dispatch(__WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["a" /* actionCreators */].AlsoToMain({ type: __WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["b" /* actionTypes */].SHOW_FIREFOX_ACCOUNTS }));
|
||||
}
|
||||
|
||||
getTotalBookmarksCount() {
|
||||
return new Promise(resolve => {
|
||||
this._dispatch(__WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["a" /* actionCreators */].OnlyToMain({ type: __WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["b" /* actionTypes */].TOTAL_BOOKMARKS_REQUEST }));
|
||||
global.addMessageListener("ActivityStream:MainToContent", function onMessage({ data: action }) {
|
||||
if (action.type === __WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["b" /* actionTypes */].TOTAL_BOOKMARKS_RESPONSE) {
|
||||
resolve(action.data);
|
||||
global.removeMessageListener("ActivityStream:MainToContent", onMessage);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* connect - Attaches an indexedDB back-end to the Map so that any set values
|
||||
* are also cached in a store. It also restores any existing values
|
||||
@ -3776,7 +3799,7 @@ class Card_Card extends external__React__default.a.PureComponent {
|
||||
{ className: `card-outer${isContextMenuOpen ? " active" : ""}${props.placeholder ? " placeholder" : ""}` },
|
||||
external__React__default.a.createElement(
|
||||
"a",
|
||||
{ href: link.url, onClick: !props.placeholder ? this.onLinkClick : undefined },
|
||||
{ href: link.type === "pocket" ? link.open_url : link.url, onClick: !props.placeholder ? this.onLinkClick : undefined },
|
||||
external__React__default.a.createElement(
|
||||
"div",
|
||||
{ className: "card" },
|
||||
@ -3836,14 +3859,13 @@ class Card_Card extends external__React__default.a.PureComponent {
|
||||
`Open context menu for ${link.title}`
|
||||
)
|
||||
),
|
||||
!props.placeholder && external__React__default.a.createElement(LinkMenu["a" /* LinkMenu */], {
|
||||
isContextMenuOpen && external__React__default.a.createElement(LinkMenu["a" /* LinkMenu */], {
|
||||
dispatch: dispatch,
|
||||
index: index,
|
||||
source: eventSource,
|
||||
onUpdate: this.onMenuUpdate,
|
||||
options: link.contextMenuOptions || contextMenuOptions,
|
||||
site: link,
|
||||
visible: isContextMenuOpen,
|
||||
shouldSendImpressionStats: shouldSendImpressionStats })
|
||||
);
|
||||
}
|
||||
@ -3976,7 +3998,6 @@ class SectionMenu__SectionMenu extends external__React__default.a.PureComponent
|
||||
|
||||
render() {
|
||||
return external__React__default.a.createElement(ContextMenu["a" /* ContextMenu */], {
|
||||
visible: this.props.visible,
|
||||
onUpdate: this.props.onUpdate,
|
||||
options: this.getOptions() });
|
||||
}
|
||||
|
File diff suppressed because one or more lines are too long
@ -8,7 +8,7 @@
|
||||
<em:type>2</em:type>
|
||||
<em:bootstrap>true</em:bootstrap>
|
||||
<em:unpack>false</em:unpack>
|
||||
<em:version>2018.02.23.1351-10fafea4</em:version>
|
||||
<em:version>2018.03.01.1281-6a7c8294</em:version>
|
||||
<em:name>Activity Stream</em:name>
|
||||
<em:description>A rich visual history feed and a reimagined home page make it easier than ever to find exactly what you're looking for in Firefox.</em:description>
|
||||
<em:multiprocessCompatible>true</em:multiprocessCompatible>
|
||||
|
@ -5,6 +5,9 @@
|
||||
|
||||
ChromeUtils.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
ChromeUtils.defineModuleGetter(this, "AppConstants",
|
||||
"resource://gre/modules/AppConstants.jsm");
|
||||
|
||||
// NB: Eagerly load modules that will be loaded/constructed/initialized in the
|
||||
// common case to avoid the overhead of wrapping and detecting lazy loading.
|
||||
const {actionCreators: ac, actionTypes: at} = ChromeUtils.import("resource://activity-stream/common/Actions.jsm", {});
|
||||
@ -113,6 +116,11 @@ const PREFS_CONFIG = new Map([
|
||||
value: true,
|
||||
value_local_dev: false
|
||||
}],
|
||||
["telemetry.ut.events", {
|
||||
title: "Enable Unified Telemetry event data collection",
|
||||
value: !AppConstants.RELEASE_OR_BETA,
|
||||
value_local_dev: false
|
||||
}],
|
||||
["telemetry.ping.endpoint", {
|
||||
title: "Telemetry server endpoint",
|
||||
value: "https://tiles.services.mozilla.com/v4/links/activity-stream"
|
||||
@ -234,7 +242,7 @@ for (const config of FEEDS_DATA) {
|
||||
PREFS_CONFIG.set(pref, config);
|
||||
}
|
||||
|
||||
var ActivityStream = class ActivityStream {
|
||||
this.ActivityStream = class ActivityStream {
|
||||
/**
|
||||
* constructor - Initializes an instance of ActivityStream
|
||||
*
|
||||
@ -339,4 +347,4 @@ var ActivityStream = class ActivityStream {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["ActivityStream", "PREFS_CONFIG"];
|
||||
const EXPORTED_SYMBOLS = ["ActivityStream", "PREFS_CONFIG"];
|
||||
|
@ -21,7 +21,7 @@ const DEFAULT_OPTIONS = {
|
||||
incomingMessageName: "ActivityStream:ContentToMain"
|
||||
};
|
||||
|
||||
var ActivityStreamMessageChannel = class ActivityStreamMessageChannel {
|
||||
this.ActivityStreamMessageChannel = class ActivityStreamMessageChannel {
|
||||
/**
|
||||
* ActivityStreamMessageChannel - This module connects a Redux store to a RemotePageManager in Firefox.
|
||||
* Call .createChannel to start the connection, and .destroyChannel to destroy it.
|
||||
@ -256,4 +256,4 @@ var ActivityStreamMessageChannel = class ActivityStreamMessageChannel {
|
||||
};
|
||||
|
||||
this.DEFAULT_OPTIONS = DEFAULT_OPTIONS;
|
||||
var EXPORTED_SYMBOLS = ["ActivityStreamMessageChannel", "DEFAULT_OPTIONS"];
|
||||
const EXPORTED_SYMBOLS = ["ActivityStreamMessageChannel", "DEFAULT_OPTIONS"];
|
||||
|
@ -9,7 +9,7 @@ ChromeUtils.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
const ACTIVITY_STREAM_PREF_BRANCH = "browser.newtabpage.activity-stream.";
|
||||
|
||||
var Prefs = class Prefs extends Preferences {
|
||||
this.Prefs = class Prefs extends Preferences {
|
||||
/**
|
||||
* Prefs - A wrapper around Preferences that always sets the branch to
|
||||
* ACTIVITY_STREAM_PREF_BRANCH
|
||||
@ -39,7 +39,7 @@ var Prefs = class Prefs extends Preferences {
|
||||
}
|
||||
};
|
||||
|
||||
var DefaultPrefs = class DefaultPrefs {
|
||||
this.DefaultPrefs = class DefaultPrefs {
|
||||
/**
|
||||
* DefaultPrefs - A helper for setting and resetting default prefs for the add-on
|
||||
*
|
||||
@ -103,4 +103,4 @@ var DefaultPrefs = class DefaultPrefs {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["DefaultPrefs", "Prefs"];
|
||||
const EXPORTED_SYMBOLS = ["DefaultPrefs", "Prefs"];
|
||||
|
@ -21,7 +21,7 @@ const ONE_DAY = 24 * 60 * 60 * 1000;
|
||||
const TIPPYTOP_UPDATE_TIME = ONE_DAY;
|
||||
const TIPPYTOP_RETRY_DELAY = FIVE_MINUTES;
|
||||
|
||||
var FaviconFeed = class FaviconFeed {
|
||||
this.FaviconFeed = class FaviconFeed {
|
||||
constructor() {
|
||||
this.tippyTopNextUpdate = 0;
|
||||
this.cache = new PersistentCache("tippytop", true);
|
||||
@ -124,9 +124,7 @@ var FaviconFeed = class FaviconFeed {
|
||||
if (domain in sitesByDomain) {
|
||||
let iconUri = Services.io.newURI(sitesByDomain[domain].image_url);
|
||||
// The #tippytop is to be able to identify them for telemetry.
|
||||
iconUri = iconUri.mutate()
|
||||
.setRef("tippytop")
|
||||
.finalize();
|
||||
iconUri = iconUri.mutate().setRef("tippytop").finalize();
|
||||
PlacesUtils.favicons.setAndFetchFaviconForPage(
|
||||
Services.io.newURI(url),
|
||||
iconUri,
|
||||
@ -160,4 +158,4 @@ var FaviconFeed = class FaviconFeed {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["FaviconFeed"];
|
||||
const EXPORTED_SYMBOLS = ["FaviconFeed"];
|
||||
|
@ -46,7 +46,7 @@ function filterAdult(links) {
|
||||
});
|
||||
}
|
||||
|
||||
var EXPORTED_SYMBOLS = ["filterAdult"];
|
||||
const EXPORTED_SYMBOLS = ["filterAdult"];
|
||||
|
||||
// These are md5 hashes of base domains to be filtered out. Originally from:
|
||||
// https://hg.mozilla.org/mozilla-central/log/default/browser/base/content/newtab/newTab.inadjacent.json
|
||||
|
@ -27,7 +27,7 @@ const HIGHLIGHTS_MAX_LENGTH = 9;
|
||||
const MANY_EXTRA_LENGTH = HIGHLIGHTS_MAX_LENGTH * 5 + TOP_SITES_DEFAULT_ROWS * TOP_SITES_MAX_SITES_PER_ROW;
|
||||
const SECTION_ID = "highlights";
|
||||
|
||||
var HighlightsFeed = class HighlightsFeed {
|
||||
this.HighlightsFeed = class HighlightsFeed {
|
||||
constructor() {
|
||||
this.dedupe = new Dedupe(this._dedupeKey);
|
||||
this.linksCache = new LinksCache(NewTabUtils.activityStreamLinks,
|
||||
@ -224,6 +224,4 @@ var HighlightsFeed = class HighlightsFeed {
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
var EXPORTED_SYMBOLS = ["HighlightsFeed", "SECTION_ID", "MANY_EXTRA_LENGTH"];
|
||||
|
||||
const EXPORTED_SYMBOLS = ["HighlightsFeed", "SECTION_ID", "MANY_EXTRA_LENGTH"];
|
||||
|
@ -3,7 +3,7 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
"use strict";
|
||||
|
||||
var EXPORTED_SYMBOLS = ["LinksCache"];
|
||||
const EXPORTED_SYMBOLS = ["LinksCache"];
|
||||
|
||||
// This should be slightly less than SYSTEM_TICK_INTERVAL as timer
|
||||
// comparisons are too exact while the async/await functionality will make the
|
||||
@ -18,7 +18,7 @@ const EXPIRATION_TIME = 4.5 * 60 * 1000; // 4.5 minutes
|
||||
* amount of time has passed. Allows for migrating data from previously cached
|
||||
* links to the new links with the same url.
|
||||
*/
|
||||
var LinksCache = class LinksCache {
|
||||
this.LinksCache = class LinksCache {
|
||||
/**
|
||||
* Create a links cache for a given object property.
|
||||
*
|
||||
|
@ -14,7 +14,7 @@ ChromeUtils.import("resource://gre/modules/Services.jsm");
|
||||
ChromeUtils.defineModuleGetter(this, "MigrationUtils", "resource:///modules/MigrationUtils.jsm");
|
||||
ChromeUtils.defineModuleGetter(this, "ProfileAge", "resource://gre/modules/ProfileAge.jsm");
|
||||
|
||||
var ManualMigration = class ManualMigration {
|
||||
this.ManualMigration = class ManualMigration {
|
||||
constructor() {
|
||||
Services.obs.addObserver(this, MIGRATION_ENDED_EVENT);
|
||||
this._prefs = new Prefs();
|
||||
@ -96,4 +96,4 @@ var ManualMigration = class ManualMigration {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["ManualMigration"];
|
||||
const EXPORTED_SYMBOLS = ["ManualMigration"];
|
||||
|
@ -9,7 +9,7 @@ const {actionCreators: ac, actionTypes: at} = ChromeUtils.import("resource://act
|
||||
* NewTabInit - A placeholder for now. This will send a copy of the state to all
|
||||
* newly opened tabs.
|
||||
*/
|
||||
var NewTabInit = class NewTabInit {
|
||||
this.NewTabInit = class NewTabInit {
|
||||
constructor() {
|
||||
this._repliedEarlyTabs = new Map();
|
||||
}
|
||||
@ -49,4 +49,4 @@ var NewTabInit = class NewTabInit {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["NewTabInit"];
|
||||
const EXPORTED_SYMBOLS = ["NewTabInit"];
|
||||
|
@ -11,7 +11,7 @@ XPCOMUtils.defineLazyGetter(this, "gTextDecoder", () => new TextDecoder());
|
||||
/**
|
||||
* A file (disk) based persistent cache of a JSON serializable object.
|
||||
*/
|
||||
var PersistentCache = class PersistentCache {
|
||||
this.PersistentCache = class PersistentCache {
|
||||
/**
|
||||
* Create a cache object based on a name.
|
||||
*
|
||||
@ -79,4 +79,4 @@ var PersistentCache = class PersistentCache {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["PersistentCache"];
|
||||
const EXPORTED_SYMBOLS = ["PersistentCache"];
|
||||
|
@ -220,7 +220,10 @@ class PlacesFeed {
|
||||
}
|
||||
|
||||
const win = action._target.browser.ownerGlobal;
|
||||
win.openLinkIn(action.data.url, where || win.whereToOpenLink(event), params);
|
||||
|
||||
// Pocket gives us a special reader URL to open their stories in
|
||||
const urlToOpen = action.data.type === "pocket" ? action.data.open_url : action.data.url;
|
||||
win.openLinkIn(urlToOpen, where || win.whereToOpenLink(event), params);
|
||||
}
|
||||
|
||||
async saveToPocket(site, browser) {
|
||||
@ -230,7 +233,7 @@ class PlacesFeed {
|
||||
if (data) {
|
||||
this.store.dispatch(ac.BroadcastToContent({
|
||||
type: at.PLACES_SAVED_TO_POCKET,
|
||||
data: {url, title, pocket_id: data.item.item_id}
|
||||
data: {url, open_url: data.item.open_url, title, pocket_id: data.item.item_id}
|
||||
}));
|
||||
}
|
||||
} catch (err) {
|
||||
@ -289,4 +292,4 @@ this.PlacesFeed = PlacesFeed;
|
||||
PlacesFeed.HistoryObserver = HistoryObserver;
|
||||
PlacesFeed.BookmarksObserver = BookmarksObserver;
|
||||
|
||||
var EXPORTED_SYMBOLS = ["PlacesFeed"];
|
||||
const EXPORTED_SYMBOLS = ["PlacesFeed"];
|
||||
|
@ -8,9 +8,12 @@ const {Prefs} = ChromeUtils.import("resource://activity-stream/lib/ActivityStrea
|
||||
const {PrerenderData} = ChromeUtils.import("resource://activity-stream/common/PrerenderData.jsm", {});
|
||||
ChromeUtils.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
ChromeUtils.defineModuleGetter(this, "PrivateBrowsingUtils",
|
||||
"resource://gre/modules/PrivateBrowsingUtils.jsm");
|
||||
|
||||
const ONBOARDING_FINISHED_PREF = "browser.onboarding.notification.finished";
|
||||
|
||||
var PrefsFeed = class PrefsFeed {
|
||||
this.PrefsFeed = class PrefsFeed {
|
||||
constructor(prefMap) {
|
||||
this._prefMap = prefMap;
|
||||
this._prefs = new Prefs();
|
||||
@ -63,6 +66,9 @@ var PrefsFeed = class PrefsFeed {
|
||||
values[name] = this._prefs.get(name);
|
||||
}
|
||||
|
||||
// Not a pref, but we need this to determine whether to show private-browsing-related stuff
|
||||
values.isPrivateBrowsingEnabled = PrivateBrowsingUtils.enabled;
|
||||
|
||||
// Set the initial state of all prefs in redux
|
||||
this.store.dispatch(ac.BroadcastToContent({type: at.PREFS_INITIAL_VALUES, data: values}));
|
||||
|
||||
@ -93,4 +99,4 @@ var PrefsFeed = class PrefsFeed {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["PrefsFeed"];
|
||||
const EXPORTED_SYMBOLS = ["PrefsFeed"];
|
||||
|
@ -3,7 +3,7 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
"use strict";
|
||||
|
||||
var EXPORTED_SYMBOLS = ["Screenshots"];
|
||||
const EXPORTED_SYMBOLS = ["Screenshots"];
|
||||
|
||||
ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
|
||||
@ -24,7 +24,7 @@ ChromeUtils.defineModuleGetter(this, "Services",
|
||||
|
||||
const GREY_10 = "#F9F9FA";
|
||||
|
||||
var Screenshots = {
|
||||
this.Screenshots = {
|
||||
/**
|
||||
* Convert bytes to a string using extremely fast String.fromCharCode without
|
||||
* exceeding the max number of arguments that can be provided to a function.
|
||||
|
@ -348,4 +348,4 @@ class SectionsFeed {
|
||||
|
||||
this.SectionsFeed = SectionsFeed;
|
||||
this.SectionsManager = SectionsManager;
|
||||
var EXPORTED_SYMBOLS = ["SectionsFeed", "SectionsManager"];
|
||||
const EXPORTED_SYMBOLS = ["SectionsFeed", "SectionsManager"];
|
||||
|
@ -33,7 +33,6 @@ function getETLD(host) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* shortURL - Creates a short version of a link's url, used for display purposes
|
||||
* e.g. {url: http://www.foosite.com} => "foosite"
|
||||
@ -68,4 +67,4 @@ function shortURL({url}) {
|
||||
parsed.pathname || parsed.href;
|
||||
}
|
||||
|
||||
var EXPORTED_SYMBOLS = ["shortURL", "getETLD"];
|
||||
const EXPORTED_SYMBOLS = ["shortURL", "getETLD"];
|
||||
|
@ -3,16 +3,19 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
"use strict";
|
||||
|
||||
ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
ChromeUtils.import("resource://gre/modules/Services.jsm");
|
||||
const {actionTypes: at, actionCreators: ac} = ChromeUtils.import("resource://activity-stream/common/Actions.jsm", {});
|
||||
|
||||
ChromeUtils.defineModuleGetter(this, "AddonManager",
|
||||
"resource://gre/modules/AddonManager.jsm");
|
||||
ChromeUtils.defineModuleGetter(this, "ShellService",
|
||||
"resource:///modules/ShellService.jsm");
|
||||
ChromeUtils.defineModuleGetter(this, "ProfileAge",
|
||||
"resource://gre/modules/ProfileAge.jsm");
|
||||
ChromeUtils.defineModuleGetter(this, "FxAccounts",
|
||||
"resource://gre/modules/FxAccounts.jsm");
|
||||
ChromeUtils.defineModuleGetter(this, "NewTabUtils",
|
||||
"resource://gre/modules/NewTabUtils.jsm");
|
||||
|
||||
// Url to fetch snippets, in the urlFormatter service format.
|
||||
const SNIPPETS_URL_PREF = "browser.aboutHomeSnippets.updateUrl";
|
||||
@ -27,11 +30,14 @@ const SEARCH_ENGINE_OBSERVER_TOPIC = "browser-search-engine-modified";
|
||||
// Should be bumped up if the snippets content format changes.
|
||||
const STARTPAGE_VERSION = 5;
|
||||
|
||||
const ONE_WEEK = 7 * 24 * 60 * 60 * 1000;
|
||||
const ONE_DAY = 24 * 60 * 60 * 1000;
|
||||
const ONE_WEEK = 7 * ONE_DAY;
|
||||
|
||||
var SnippetsFeed = class SnippetsFeed {
|
||||
this.SnippetsFeed = class SnippetsFeed {
|
||||
constructor() {
|
||||
this._refresh = this._refresh.bind(this);
|
||||
this._totalBookmarks = null;
|
||||
this._totalBookmarksLastUpdated = null;
|
||||
}
|
||||
|
||||
get snippetsURL() {
|
||||
@ -49,6 +55,10 @@ var SnippetsFeed = class SnippetsFeed {
|
||||
return null;
|
||||
}
|
||||
|
||||
isDevtoolsUser() {
|
||||
return Services.prefs.getIntPref("devtools.selfxss.count") >= 5;
|
||||
}
|
||||
|
||||
async getProfileInfo() {
|
||||
const profileAge = new ProfileAge(null, null);
|
||||
const createdDate = await profileAge.created;
|
||||
@ -79,6 +89,39 @@ var SnippetsFeed = class SnippetsFeed {
|
||||
});
|
||||
}
|
||||
|
||||
async getAddonInfo() {
|
||||
const {addons, fullData} = await AddonManager.getActiveAddons(["extension", "service"]);
|
||||
const info = {};
|
||||
for (const addon of addons) {
|
||||
info[addon.id] = {
|
||||
version: addon.version,
|
||||
type: addon.type,
|
||||
isSystem: addon.isSystem,
|
||||
isWebExtension: addon.isWebExtension
|
||||
};
|
||||
if (fullData) {
|
||||
Object.assign(info[addon.id], {
|
||||
name: addon.name,
|
||||
userDisabled: addon.userDisabled,
|
||||
installDate: addon.installDate
|
||||
});
|
||||
}
|
||||
}
|
||||
return info;
|
||||
}
|
||||
|
||||
async getTotalBookmarksCount(target) {
|
||||
if (!this._totalBookmarks || (Date.now() - this._totalBookmarksLastUpdated > ONE_DAY)) {
|
||||
this._totalBookmarksLastUpdated = Date.now();
|
||||
try {
|
||||
this._totalBookmarks = await NewTabUtils.activityStreamProvider.getTotalBookmarksCount();
|
||||
} catch (e) {
|
||||
Cu.reportError(e);
|
||||
}
|
||||
}
|
||||
this.store.dispatch(ac.OnlyToOneContent({type: at.TOTAL_BOOKMARKS_RESPONSE, data: this._totalBookmarks}, target));
|
||||
}
|
||||
|
||||
_dispatchChanges(data) {
|
||||
this.store.dispatch(ac.BroadcastToContent({type: at.SNIPPETS_DATA, data}));
|
||||
}
|
||||
@ -94,7 +137,9 @@ var SnippetsFeed = class SnippetsFeed {
|
||||
onboardingFinished: Services.prefs.getBoolPref(ONBOARDING_FINISHED_PREF),
|
||||
fxaccount: Services.prefs.prefHasUserValue(FXA_USERNAME_PREF),
|
||||
selectedSearchEngine: await this.getSelectedSearchEngine(),
|
||||
defaultBrowser: this.isDefaultBrowser()
|
||||
defaultBrowser: this.isDefaultBrowser(),
|
||||
isDevtoolsUser: this.isDevtoolsUser(),
|
||||
addonInfo: await this.getAddonInfo()
|
||||
};
|
||||
this._dispatchChanges(data);
|
||||
}
|
||||
@ -144,8 +189,11 @@ var SnippetsFeed = class SnippetsFeed {
|
||||
case at.SNIPPETS_BLOCKLIST_UPDATED:
|
||||
this.store.dispatch(ac.BroadcastToContent({type: at.SNIPPET_BLOCKED, data: action.data}));
|
||||
break;
|
||||
case at.TOTAL_BOOKMARKS_REQUEST:
|
||||
this.getTotalBookmarksCount(action._target.browser);
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["SnippetsFeed"];
|
||||
const EXPORTED_SYMBOLS = ["SnippetsFeed"];
|
||||
|
@ -15,7 +15,7 @@ const {redux} = ChromeUtils.import("resource://activity-stream/vendor/Redux.jsm"
|
||||
* It also accepts an array of "Feeds" on inititalization, which
|
||||
* can listen for any action that is dispatched through the store.
|
||||
*/
|
||||
var Store = class Store {
|
||||
this.Store = class Store {
|
||||
/**
|
||||
* constructor - The redux store and message manager are created here,
|
||||
* but no listeners are added until "init" is called.
|
||||
@ -157,4 +157,4 @@ var Store = class Store {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["Store"];
|
||||
const EXPORTED_SYMBOLS = ["Store"];
|
||||
|
@ -13,7 +13,7 @@ ChromeUtils.defineModuleGetter(this, "clearInterval", "resource://gre/modules/Ti
|
||||
// Frequency at which SYSTEM_TICK events are fired
|
||||
const SYSTEM_TICK_INTERVAL = 5 * 60 * 1000;
|
||||
|
||||
var SystemTickFeed = class SystemTickFeed {
|
||||
this.SystemTickFeed = class SystemTickFeed {
|
||||
init() {
|
||||
this.intervalId = setInterval(() => this.store.dispatch({type: at.SYSTEM_TICK}), SYSTEM_TICK_INTERVAL);
|
||||
}
|
||||
@ -31,4 +31,4 @@ var SystemTickFeed = class SystemTickFeed {
|
||||
};
|
||||
|
||||
this.SYSTEM_TICK_INTERVAL = SYSTEM_TICK_INTERVAL;
|
||||
var EXPORTED_SYMBOLS = ["SystemTickFeed", "SYSTEM_TICK_INTERVAL"];
|
||||
const EXPORTED_SYMBOLS = ["SystemTickFeed", "SYSTEM_TICK_INTERVAL"];
|
||||
|
@ -37,16 +37,20 @@ const USER_PREFS_ENCODING = {
|
||||
|
||||
const PREF_IMPRESSION_ID = "impressionId";
|
||||
const TELEMETRY_PREF = "telemetry";
|
||||
const EVENTS_TELEMETRY_PREF = "telemetry.ut.events";
|
||||
|
||||
var TelemetryFeed = class TelemetryFeed {
|
||||
this.TelemetryFeed = class TelemetryFeed {
|
||||
constructor(options) {
|
||||
this.sessions = new Map();
|
||||
this._prefs = new Prefs();
|
||||
this._impressionId = this.getOrCreateImpressionId();
|
||||
this.telemetryEnabled = this._prefs.get(TELEMETRY_PREF);
|
||||
this.eventTelemetryEnabled = this._prefs.get(EVENTS_TELEMETRY_PREF);
|
||||
this._aboutHomeSeen = false;
|
||||
this._onTelemetryPrefChange = this._onTelemetryPrefChange.bind(this);
|
||||
this._prefs.observe(TELEMETRY_PREF, this._onTelemetryPrefChange);
|
||||
this._onEventsTelemetryPrefChange = this._onEventsTelemetryPrefChange.bind(this);
|
||||
this._prefs.observe(EVENTS_TELEMETRY_PREF, this._onEventsTelemetryPrefChange);
|
||||
}
|
||||
|
||||
init() {
|
||||
@ -105,6 +109,10 @@ var TelemetryFeed = class TelemetryFeed {
|
||||
this.telemetryEnabled = prefVal;
|
||||
}
|
||||
|
||||
_onEventsTelemetryPrefChange(prefVal) {
|
||||
this.eventTelemetryEnabled = prefVal;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lazily initialize PingCentre to send pings
|
||||
*/
|
||||
@ -229,7 +237,7 @@ var TelemetryFeed = class TelemetryFeed {
|
||||
|
||||
let sessionEndEvent = this.createSessionEndEvent(session);
|
||||
this.sendEvent(sessionEndEvent);
|
||||
this.utEvents.sendSessionEndEvent(sessionEndEvent);
|
||||
this.sendUTEvent(sessionEndEvent, this.utEvents.sendSessionEndEvent);
|
||||
this.sessions.delete(portID);
|
||||
}
|
||||
|
||||
@ -351,6 +359,12 @@ var TelemetryFeed = class TelemetryFeed {
|
||||
}
|
||||
}
|
||||
|
||||
sendUTEvent(event_object, eventFunction) {
|
||||
if (this.eventTelemetryEnabled) {
|
||||
eventFunction(event_object);
|
||||
}
|
||||
}
|
||||
|
||||
handleImpressionStats(action) {
|
||||
this.sendEvent(this.createImpressionStats(action));
|
||||
}
|
||||
@ -358,7 +372,7 @@ var TelemetryFeed = class TelemetryFeed {
|
||||
handleUserEvent(action) {
|
||||
let userEvent = this.createUserEvent(action);
|
||||
this.sendEvent(userEvent);
|
||||
this.utEvents.sendUserEvent(userEvent);
|
||||
this.sendUTEvent(userEvent, this.utEvents.sendUserEvent);
|
||||
}
|
||||
|
||||
handleUndesiredEvent(action) {
|
||||
@ -450,6 +464,7 @@ var TelemetryFeed = class TelemetryFeed {
|
||||
|
||||
try {
|
||||
this._prefs.ignore(TELEMETRY_PREF, this._onTelemetryPrefChange);
|
||||
this._prefs.ignore(EVENTS_TELEMETRY_PREF, this._onEventsTelemetryPrefChange);
|
||||
} catch (e) {
|
||||
Cu.reportError(e);
|
||||
}
|
||||
@ -457,9 +472,10 @@ var TelemetryFeed = class TelemetryFeed {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = [
|
||||
const EXPORTED_SYMBOLS = [
|
||||
"TelemetryFeed",
|
||||
"USER_PREFS_ENCODING",
|
||||
"PREF_IMPRESSION_ID",
|
||||
"TELEMETRY_PREF"
|
||||
"TELEMETRY_PREF",
|
||||
"EVENTS_TELEMETRY_PREF"
|
||||
];
|
||||
|
@ -18,7 +18,7 @@ function getDomain(url) {
|
||||
return domain;
|
||||
}
|
||||
|
||||
var TippyTopProvider = class TippyTopProvider {
|
||||
this.TippyTopProvider = class TippyTopProvider {
|
||||
constructor() {
|
||||
this._sitesByDomain = new Map();
|
||||
this.initialized = false;
|
||||
@ -50,4 +50,4 @@ var TippyTopProvider = class TippyTopProvider {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["TippyTopProvider", "getDomain"];
|
||||
const EXPORTED_SYMBOLS = ["TippyTopProvider", "getDomain"];
|
||||
|
@ -29,7 +29,7 @@ const MIN_FAVICON_SIZE = 96;
|
||||
const CACHED_LINK_PROPS_TO_MIGRATE = ["screenshot"];
|
||||
const PINNED_FAVICON_PROPS_TO_MIGRATE = ["favicon", "faviconRef", "faviconSize"];
|
||||
|
||||
var TopSitesFeed = class TopSitesFeed {
|
||||
this.TopSitesFeed = class TopSitesFeed {
|
||||
constructor() {
|
||||
this._tippyTopProvider = new TippyTopProvider();
|
||||
this.dedupe = new Dedupe(this._dedupeKey);
|
||||
@ -347,4 +347,4 @@ var TopSitesFeed = class TopSitesFeed {
|
||||
};
|
||||
|
||||
this.DEFAULT_TOP_SITES = DEFAULT_TOP_SITES;
|
||||
var EXPORTED_SYMBOLS = ["TopSitesFeed", "DEFAULT_TOP_SITES"];
|
||||
const EXPORTED_SYMBOLS = ["TopSitesFeed", "DEFAULT_TOP_SITES"];
|
||||
|
@ -27,7 +27,7 @@ const SPOC_IMPRESSION_TRACKING_PREF = "feeds.section.topstories.spoc.impressions
|
||||
const REC_IMPRESSION_TRACKING_PREF = "feeds.section.topstories.rec.impressions";
|
||||
const MAX_LIFETIME_CAP = 100; // Guard against misconfiguration on the server
|
||||
|
||||
var TopStoriesFeed = class TopStoriesFeed {
|
||||
this.TopStoriesFeed = class TopStoriesFeed {
|
||||
constructor() {
|
||||
this.spocCampaignMap = new Map();
|
||||
this.contentUpdateQueue = [];
|
||||
@ -311,7 +311,7 @@ var TopStoriesFeed = class TopStoriesFeed {
|
||||
// Create a new array with a spoc inserted at index 2
|
||||
const position = SectionsManager.sections.get(SECTION_ID).order;
|
||||
let rows = this.store.getState().Sections[position].rows.slice(0, this.stories.length);
|
||||
rows.splice(2, 0, spocs[0]);
|
||||
rows.splice(2, 0, Object.assign(spocs[0], {pinned: true}));
|
||||
|
||||
// Send a content update to the target tab
|
||||
const action = {type: at.SECTION_UPDATE, data: Object.assign({rows}, {id: SECTION_ID})};
|
||||
@ -506,4 +506,4 @@ this.SPOC_IMPRESSION_TRACKING_PREF = SPOC_IMPRESSION_TRACKING_PREF;
|
||||
this.REC_IMPRESSION_TRACKING_PREF = REC_IMPRESSION_TRACKING_PREF;
|
||||
this.MIN_DOMAIN_AFFINITIES_UPDATE_TIME = MIN_DOMAIN_AFFINITIES_UPDATE_TIME;
|
||||
this.DEFAULT_RECS_EXPIRE_TIME = DEFAULT_RECS_EXPIRE_TIME;
|
||||
var EXPORTED_SYMBOLS = ["TopStoriesFeed", "STORIES_UPDATE_TIME", "TOPICS_UPDATE_TIME", "SECTION_ID", "SPOC_IMPRESSION_TRACKING_PREF", "MIN_DOMAIN_AFFINITIES_UPDATE_TIME", "REC_IMPRESSION_TRACKING_PREF", "DEFAULT_RECS_EXPIRE_TIME"];
|
||||
const EXPORTED_SYMBOLS = ["TopStoriesFeed", "STORIES_UPDATE_TIME", "TOPICS_UPDATE_TIME", "SECTION_ID", "SPOC_IMPRESSION_TRACKING_PREF", "MIN_DOMAIN_AFFINITIES_UPDATE_TIME", "REC_IMPRESSION_TRACKING_PREF", "DEFAULT_RECS_EXPIRE_TIME"];
|
||||
|
@ -13,7 +13,7 @@ ChromeUtils.import("resource://gre/modules/Services.jsm");
|
||||
*/
|
||||
const EXTRAS_FIELD_NAMES = ["addon_version", "session_id", "page", "user_prefs", "action_position"];
|
||||
|
||||
var UTEventReporting = class UTEventReporting {
|
||||
this.UTEventReporting = class UTEventReporting {
|
||||
constructor() {
|
||||
Services.telemetry.setEventRecordingEnabled("activity_stream", true);
|
||||
}
|
||||
@ -56,4 +56,4 @@ var UTEventReporting = class UTEventReporting {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["UTEventReporting"];
|
||||
const EXPORTED_SYMBOLS = ["UTEventReporting"];
|
||||
|
@ -72,7 +72,7 @@ function merge(...args) {
|
||||
* needs to be calculated every time the feed updates. Therefore allowing cache
|
||||
* lookups of scores[domain][parameterSet] is beneficial
|
||||
*/
|
||||
var UserDomainAffinityProvider = class UserDomainAffinityProvider {
|
||||
this.UserDomainAffinityProvider = class UserDomainAffinityProvider {
|
||||
constructor(
|
||||
timeSegments = DEFAULT_TIME_SEGMENTS,
|
||||
parameterSets = DEFAULT_PARAMETER_SETS,
|
||||
@ -326,4 +326,4 @@ var UserDomainAffinityProvider = class UserDomainAffinityProvider {
|
||||
}
|
||||
};
|
||||
|
||||
var EXPORTED_SYMBOLS = ["UserDomainAffinityProvider"];
|
||||
const EXPORTED_SYMBOLS = ["UserDomainAffinityProvider"];
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -16,7 +16,7 @@ window.gActivityStreamStrings = {
|
||||
"type_label_bookmarked": "У закладках",
|
||||
"type_label_synced": "Сінхранізаванае з іншай прылады",
|
||||
"type_label_recommended": "Тэндэнцыі",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Захавана ў Pocket",
|
||||
"type_label_open": "Адкрыта",
|
||||
"type_label_topic": "Тэма",
|
||||
"type_label_now": "Зараз",
|
||||
@ -33,7 +33,7 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "Вы сапраўды жадаеце выдаліць усе запісы аб гэтай старонцы з гісторыі?",
|
||||
"confirm_history_delete_notice_p2": "Гэта дзеянне немагчыма адмяніць.",
|
||||
"menu_action_save_to_pocket": "Захаваць у Pocket",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_delete_pocket": "Выдаліць з Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"search_for_something_with": "Шукаць {search_term} у:",
|
||||
"search_button": "Шукаць",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Дадаць",
|
||||
"topsites_form_add_header": "Новы папулярны сайт",
|
||||
"topsites_form_edit_header": "Рэдагаваць папулярны сайт",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Загаловак",
|
||||
"topsites_form_title_placeholder": "Увядзіце назву",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Увядзіце або ўстаўце URL",
|
||||
@ -111,6 +111,5 @@ window.gActivityStreamStrings = {
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Дадаць папулярны сайт"
|
||||
"section_menu_action_privacy_notice": "Паведамленне аб прыватнасці"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Zatím nemáte uložené žádné záložky.",
|
||||
"header_stories_from": "ze šlužby",
|
||||
"context_menu_button_sr": "Otevřít kontextovou nabídku pro {title}",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Otevřít kontextovou nabídku sekce",
|
||||
"type_label_visited": "Navštívené",
|
||||
"type_label_bookmarked": "V záložkách",
|
||||
"type_label_synced": "Synchronizované z jiného zařízení",
|
||||
"type_label_recommended": "Populární",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Uloženo do služby Pocket",
|
||||
"type_label_open": "Otevřené",
|
||||
"type_label_topic": "Téma",
|
||||
"type_label_now": "Teď",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "Opravdu chcete smazat všechny výskyty této stránky z vaší historie?",
|
||||
"confirm_history_delete_notice_p2": "Tuto akci nelze vzít zpět.",
|
||||
"menu_action_save_to_pocket": "Uložit do služby Pocket",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Smazat ze služby Pocket",
|
||||
"menu_action_archive_pocket": "Archivovat do služby Pocket",
|
||||
"search_for_something_with": "Vyhledat {search_term} pomocí:",
|
||||
"search_button": "Vyhledat",
|
||||
"search_header": "Vyhledat pomocí {search_engine_name}",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Přidat",
|
||||
"topsites_form_add_header": "Nová top stránka",
|
||||
"topsites_form_edit_header": "Upravit top stránku",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Nadpis",
|
||||
"topsites_form_title_placeholder": "Zadejte název",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Zadejte nebo vložte URL adresu",
|
||||
@ -102,15 +102,14 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Vyzkoušejte Firefox se záložkami, historií a hesly z jiného vašeho prohlížeče.",
|
||||
"manual_migration_cancel_button": "Ne, děkuji",
|
||||
"manual_migration_import_button": "Importovat nyní",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Přidat top stránku"
|
||||
"error_fallback_default_info": "Jejda, při načítání tohoto obsahu se něco pokazilo.",
|
||||
"error_fallback_default_refresh_suggestion": "Obnovte prosím stránku a zkuste to znovu.",
|
||||
"section_menu_action_remove_section": "Odebrat sekci",
|
||||
"section_menu_action_collapse_section": "Sbalit sekci",
|
||||
"section_menu_action_expand_section": "Rozbalit sekci",
|
||||
"section_menu_action_manage_section": "Nastavení sekce",
|
||||
"section_menu_action_add_topsite": "Přidat mezi top stránky",
|
||||
"section_menu_action_move_up": "Posunout nahoru",
|
||||
"section_menu_action_move_down": "Posunout dolů",
|
||||
"section_menu_action_privacy_notice": "Zásady ochrany soukromí"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Nid oes gennych unrhyw nodau tudalen eto.",
|
||||
"header_stories_from": "oddi wrth",
|
||||
"context_menu_button_sr": "Agor dewislen cynnwys {title}",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Agor dewislen cyd-destun yr adran",
|
||||
"type_label_visited": "Ymwelwyd",
|
||||
"type_label_bookmarked": "Nod Tudalen",
|
||||
"type_label_synced": "Cydweddwyd o ddyfais arall",
|
||||
"type_label_recommended": "Trendio",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Wedi ei gadw i Pocket",
|
||||
"type_label_open": "Ar Agor",
|
||||
"type_label_topic": "Pwnc",
|
||||
"type_label_now": "Nawr",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "Ydych chi'n siŵr eich bod chi am ddileu pob enghraifft o'r dudalen hon o'ch hanes?",
|
||||
"confirm_history_delete_notice_p2": "Nid oes modd dadwneud hyn.",
|
||||
"menu_action_save_to_pocket": "Cadw i Pocket",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Dileu o Pocket",
|
||||
"menu_action_archive_pocket": "Archifo i Pocket",
|
||||
"search_for_something_with": "Chwilio am {search_term} gyda:",
|
||||
"search_button": "Chwilio",
|
||||
"search_header": "{search_engine_name} Chwilio",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Ychwanegu",
|
||||
"topsites_form_add_header": "Hoff Wefan Newydd",
|
||||
"topsites_form_edit_header": "Golygu'r Hoff Wefan",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Teitl",
|
||||
"topsites_form_title_placeholder": "Rhoi teitl",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Teipio neu ludo URL",
|
||||
@ -102,15 +102,14 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Profwch Firefox gyda nodau tudalen, hanes a chyfrineiriau o borwr arall.",
|
||||
"manual_migration_cancel_button": "Dim Diolch",
|
||||
"manual_migration_import_button": "Mewnforio Nawr",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Ychwanegu Prif Wefan"
|
||||
"error_fallback_default_info": "Wps, aeth rhywbeth o'i le wrth llwytho'r cynnwys hwn.",
|
||||
"error_fallback_default_refresh_suggestion": "Adnewyddu'r dudalen i geisio eto.",
|
||||
"section_menu_action_remove_section": "Tynnu'r Adran",
|
||||
"section_menu_action_collapse_section": "Cau'r Adran",
|
||||
"section_menu_action_expand_section": "Estyn yr Adran",
|
||||
"section_menu_action_manage_section": "Rheoli'r Adran",
|
||||
"section_menu_action_add_topsite": "Ychwanegu Hoff Wefan",
|
||||
"section_menu_action_move_up": "Symud i Fyny",
|
||||
"section_menu_action_move_down": "Symud i Lawr",
|
||||
"section_menu_action_privacy_notice": "Hysbysiad Preifatrwydd"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Sie haben noch keine Lesezeichen.",
|
||||
"header_stories_from": "von",
|
||||
"context_menu_button_sr": "Kontextmenü für {title} öffnen",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Kontextmenü des Abschnitts öffnen",
|
||||
"type_label_visited": "Besucht",
|
||||
"type_label_bookmarked": "Lesezeichen",
|
||||
"type_label_synced": "Von anderem Gerät synchronisiert",
|
||||
"type_label_recommended": "Beliebt",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Bei Pocket gespeichert",
|
||||
"type_label_open": "Geöffnet",
|
||||
"type_label_topic": "Thema",
|
||||
"type_label_now": "Jetzt",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "Soll wirklich jede Instanz dieser Seite aus Ihrer Chronik gelöscht werden?",
|
||||
"confirm_history_delete_notice_p2": "Diese Aktion kann nicht rückgängig gemacht werden.",
|
||||
"menu_action_save_to_pocket": "Bei Pocket speichern",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Aus Pocket löschen",
|
||||
"menu_action_archive_pocket": "In Pocket archivieren",
|
||||
"search_for_something_with": "Nach {search_term} suchen mit:",
|
||||
"search_button": "Suchen",
|
||||
"search_header": "{search_engine_name}-Suche",
|
||||
@ -85,9 +85,9 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Hinzufügen",
|
||||
"topsites_form_add_header": "Neue wichtige Seite",
|
||||
"topsites_form_edit_header": "Wichtige Seite bearbeiten",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Titel",
|
||||
"topsites_form_title_placeholder": "Name eingeben",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_label": "Adresse",
|
||||
"topsites_form_url_placeholder": "Eine Adresse eingeben oder einfügen",
|
||||
"topsites_form_add_button": "Hinzufügen",
|
||||
"topsites_form_save_button": "Speichern",
|
||||
@ -102,15 +102,14 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Probieren Sie Firefox aus und importieren Sie die Lesezeichen, Chronik und Passwörter eines anderen Browsers.",
|
||||
"manual_migration_cancel_button": "Nein, danke",
|
||||
"manual_migration_import_button": "Jetzt importieren",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Wichtige Seite hinzufügen"
|
||||
"error_fallback_default_info": "Beim Laden dieses Inhalts ist ein Fehler aufgetreten.",
|
||||
"error_fallback_default_refresh_suggestion": "Aktualisieren Sie die Seite, um es erneut zu versuchen.",
|
||||
"section_menu_action_remove_section": "Abschnitt entfernen",
|
||||
"section_menu_action_collapse_section": "Abschnitt einklappen",
|
||||
"section_menu_action_expand_section": "Abschnitt ausklappen",
|
||||
"section_menu_action_manage_section": "Abschnitt verwalten",
|
||||
"section_menu_action_add_topsite": "Wichtige Seite hinzufügen",
|
||||
"section_menu_action_move_up": "Nach oben schieben",
|
||||
"section_menu_action_move_down": "Nach unten schieben",
|
||||
"section_menu_action_privacy_notice": "Datenschutzhinweis"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Hyšći cytańske znamjenja njamaśo.",
|
||||
"header_stories_from": "wót",
|
||||
"context_menu_button_sr": "Kontekstowy meni za {title} wócyniś",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Kontekstowy meni wótrězka wócyniś",
|
||||
"type_label_visited": "Woglědany",
|
||||
"type_label_bookmarked": "Ako cytańske znamje skłaźony",
|
||||
"type_label_synced": "Z drugego rěda synchronizěrowany",
|
||||
"type_label_recommended": "Popularny",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Do Pocket skłaźony",
|
||||
"type_label_open": "Wócynjony",
|
||||
"type_label_topic": "Tema",
|
||||
"type_label_now": "Něnto",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "Cośo napšawdu kuždu instancu toś togo boka ze swójeje historije lašowaś?",
|
||||
"confirm_history_delete_notice_p2": "Toś ta akcija njedajo se anulěrowaś.",
|
||||
"menu_action_save_to_pocket": "Pla Pocket składowaś",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Z Pocket wulašowaś",
|
||||
"menu_action_archive_pocket": "W Pocket archiwěrowaś",
|
||||
"search_for_something_with": "Za {search_term} pytaś z:",
|
||||
"search_button": "Pytaś",
|
||||
"search_header": "Z {search_engine_name} pytaś",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Pśidaś",
|
||||
"topsites_form_add_header": "Nowe nejcesćej woglědane sedło",
|
||||
"topsites_form_edit_header": "Nejcesćej woglědane sedło wobźěłaś",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Titel",
|
||||
"topsites_form_title_placeholder": "Titel zapódaś",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "URL zapódaś abo zasajźiś",
|
||||
@ -102,15 +102,14 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Wopytajśo Firefox z cytanskimi znamjenjami, historiju a gronidłami z drugego wobglědowaka.",
|
||||
"manual_migration_cancel_button": "Ně, źěkujom se",
|
||||
"manual_migration_import_button": "Něnto importěrowaś",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Woblubowane sedło pśidaś"
|
||||
"error_fallback_default_info": "Hopla, pśi cytanju toś togo wopśimjeśa njejo se něco raźiło.",
|
||||
"error_fallback_default_refresh_suggestion": "Aktualizěrujśo bok, aby hyšći raz wopytał.",
|
||||
"section_menu_action_remove_section": "Wótrězk wótwónoźeś",
|
||||
"section_menu_action_collapse_section": "Wótrězk schowaś",
|
||||
"section_menu_action_expand_section": "Wótrězk pokazaś",
|
||||
"section_menu_action_manage_section": "Wótrězk zastojaś",
|
||||
"section_menu_action_add_topsite": "Woblubowane sedło pśidaś",
|
||||
"section_menu_action_move_up": "Górjej",
|
||||
"section_menu_action_move_down": "Dołoj",
|
||||
"section_menu_action_privacy_notice": "Powěźeńka priwatnosći"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Todavía no hay ningún marcador.",
|
||||
"header_stories_from": "de",
|
||||
"context_menu_button_sr": "Abrir el menú para {title}",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Abrir la sección menú contextual",
|
||||
"type_label_visited": "Visitados",
|
||||
"type_label_bookmarked": "Marcados",
|
||||
"type_label_synced": "Sincronizados de otro dispositivo",
|
||||
"type_label_recommended": "Tendencias",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Guardado en Pocket",
|
||||
"type_label_open": "Abrir",
|
||||
"type_label_topic": "Tópico",
|
||||
"type_label_now": "Ahora",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "¿Está seguro de querer borrar cualquier instancia de esta página del historial?",
|
||||
"confirm_history_delete_notice_p2": "Esta acción no puede deshacerse.",
|
||||
"menu_action_save_to_pocket": "Guardar en Pocket",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Eliminar de Pocket",
|
||||
"menu_action_archive_pocket": "Archivar en Pocket",
|
||||
"search_for_something_with": "Buscar {search_term} con:",
|
||||
"search_button": "Buscar",
|
||||
"search_header": "Buscar con {search_engine_name}",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Agregar",
|
||||
"topsites_form_add_header": "Nuevo sitio más visitado",
|
||||
"topsites_form_edit_header": "Editar sitio más visitado",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Título",
|
||||
"topsites_form_title_placeholder": "Ingresar un título",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Escribir o pegar URL",
|
||||
@ -102,15 +102,15 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Probá Firefox con los marcadores, historial y contraseñas de otro navegador.",
|
||||
"manual_migration_cancel_button": "No gracias",
|
||||
"manual_migration_import_button": "Importar ahora",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"error_fallback_default_info": "Lo sentimos, algo salió mal al cargar el contenido.",
|
||||
"error_fallback_default_refresh_suggestion": "Recarga la página e intentálo de nuevo.",
|
||||
"section_menu_action_remove_section": "Eliminar sección",
|
||||
"section_menu_action_collapse_section": "Contraer sección",
|
||||
"section_menu_action_expand_section": "Expandir sección",
|
||||
"section_menu_action_manage_section": "Gestionar sección",
|
||||
"section_menu_action_add_topsite": "Añadir sitio popular",
|
||||
"section_menu_action_move_up": "Subir",
|
||||
"section_menu_action_move_down": "Bajar",
|
||||
"section_menu_action_privacy_notice": "Aviso de privacidad",
|
||||
"edit_topsites_add_button_tooltip": "Agregar Sitio más visitado"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Todavía no tienes marcadores.",
|
||||
"header_stories_from": "de",
|
||||
"context_menu_button_sr": "Abrir menú contextual para {title}",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Abrir la sección menú contextual",
|
||||
"type_label_visited": "Visitado",
|
||||
"type_label_bookmarked": "Marcado",
|
||||
"type_label_synced": "Sacado de otro dispositivo",
|
||||
"type_label_recommended": "Popular",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Guardado en Pocket",
|
||||
"type_label_open": "Abrir",
|
||||
"type_label_topic": "Tema",
|
||||
"type_label_now": "Ahora",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "¿Estás seguro de que quieres eliminar cada instancia de esta página de tu historial?",
|
||||
"confirm_history_delete_notice_p2": "Esta acción no puede ser deshecha.",
|
||||
"menu_action_save_to_pocket": "Guardar en Pocket",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Eliminar de Pocket",
|
||||
"menu_action_archive_pocket": "Archivar en Pocket",
|
||||
"search_for_something_with": "Buscar {search_term} con:",
|
||||
"search_button": "Buscar",
|
||||
"search_header": "Búsqueda de {search_engine_name}",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Añadir",
|
||||
"topsites_form_add_header": "Nuevo sitio frecuente",
|
||||
"topsites_form_edit_header": "Editar sitio frecuente",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Título",
|
||||
"topsites_form_title_placeholder": "Ingresar un título",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Escribe o pega una URL",
|
||||
@ -102,15 +102,15 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Prueba Firefox con los marcadores, historial y contraseñas de otro navegador.",
|
||||
"manual_migration_cancel_button": "No, gracias",
|
||||
"manual_migration_import_button": "Importar ahora",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"error_fallback_default_info": "Lo sentimos, algo salió mal al cargar el contenido.",
|
||||
"error_fallback_default_refresh_suggestion": "Recarga la página e intentálo de nuevo.",
|
||||
"section_menu_action_remove_section": "Eliminar sección",
|
||||
"section_menu_action_collapse_section": "Contraer sección",
|
||||
"section_menu_action_expand_section": "Expandir sección",
|
||||
"section_menu_action_manage_section": "Gestionar sección",
|
||||
"section_menu_action_add_topsite": "Añadir sitio popular",
|
||||
"section_menu_action_move_up": "Subir",
|
||||
"section_menu_action_move_down": "Bajar",
|
||||
"section_menu_action_privacy_notice": "Aviso de privacidad",
|
||||
"edit_topsites_add_button_tooltip": "Añadir sitio frecuente"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Todavía no tienes ningún marcador.",
|
||||
"header_stories_from": "desde",
|
||||
"context_menu_button_sr": "Abrir menú de contexto para {title}",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Abrir la sección menú contextual",
|
||||
"type_label_visited": "Visitados",
|
||||
"type_label_bookmarked": "En marcadores",
|
||||
"type_label_synced": "Sincronizado desde otro dispositivo",
|
||||
"type_label_recommended": "Tendencias",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Guardado en Pocket",
|
||||
"type_label_open": "Abrir",
|
||||
"type_label_topic": "Tema",
|
||||
"type_label_now": "Ahora",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "¿Estás seguro de que quieres eliminar de tu historial todas las instancias de esta página?",
|
||||
"confirm_history_delete_notice_p2": "Esta acción no se puede deshacer.",
|
||||
"menu_action_save_to_pocket": "Guardar en Pocket",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Eliminar de Pocket",
|
||||
"menu_action_archive_pocket": "Archivar en Pocket",
|
||||
"search_for_something_with": "Buscar {search_term} con:",
|
||||
"search_button": "Buscar",
|
||||
"search_header": "Búsqueda de {search_engine_name}",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Agregar",
|
||||
"topsites_form_add_header": "Nuevo sitio popular",
|
||||
"topsites_form_edit_header": "Editar sitio popular",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Título",
|
||||
"topsites_form_title_placeholder": "Introducir título",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Escribir o pegar una URL",
|
||||
@ -102,15 +102,15 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Prueba Firefox con los marcadores, historial y contraseñas de otro navegador.",
|
||||
"manual_migration_cancel_button": "No, gracias",
|
||||
"manual_migration_import_button": "Importar ahora",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Añadir sitio popular"
|
||||
"error_fallback_default_info": "Lo sentimos, algo salió mal al cargar el contenido.",
|
||||
"error_fallback_default_refresh_suggestion": "Recarga la página e intentálo de nuevo.",
|
||||
"section_menu_action_remove_section": "Eliminar sección",
|
||||
"section_menu_action_collapse_section": "Contraer sección",
|
||||
"section_menu_action_expand_section": "Expandir sección",
|
||||
"section_menu_action_manage_section": "Gestionar sección",
|
||||
"section_menu_action_add_topsite": "Añadir sitio popular",
|
||||
"section_menu_action_move_up": "Subir",
|
||||
"section_menu_action_move_down": "Bajar",
|
||||
"section_menu_action_privacy_notice": "Aviso de privacidad",
|
||||
"edit_topsites_add_button_tooltip": "Agregar sitio popular"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Aún no tienes ningún marcador.",
|
||||
"header_stories_from": "de",
|
||||
"context_menu_button_sr": "Abrir menú contextual para {title}",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Abrir la sección menú contextual",
|
||||
"type_label_visited": "Visitados",
|
||||
"type_label_bookmarked": "Marcados",
|
||||
"type_label_synced": "Sincronizado desde otro dispositivo",
|
||||
"type_label_recommended": "Tendencias",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Guardado en Pocket",
|
||||
"type_label_open": "Abrir",
|
||||
"type_label_topic": "Tema",
|
||||
"type_label_now": "Ahora",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "¿Estás seguro de que quieres eliminar de tu historial todas las instancias de esta página?",
|
||||
"confirm_history_delete_notice_p2": "Esta acción no se puede deshacer.",
|
||||
"menu_action_save_to_pocket": "Guardar en Pocket",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Eliminar de Pocket",
|
||||
"menu_action_archive_pocket": "Archivar en Pocket",
|
||||
"search_for_something_with": "Buscar {search_term} con:",
|
||||
"search_button": "Buscar",
|
||||
"search_header": "Buscar {search_engine_name}",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Agregar",
|
||||
"topsites_form_add_header": "Nuevo sitio popular",
|
||||
"topsites_form_edit_header": "Editar sitio popular",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Título",
|
||||
"topsites_form_title_placeholder": "Introducir un título",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Escribir o pegar una URL",
|
||||
@ -102,15 +102,15 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Prueba Firefox con los marcadores, historial y contraseñas de otro navegador.",
|
||||
"manual_migration_cancel_button": "No, gracias",
|
||||
"manual_migration_import_button": "Importar ahora",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"error_fallback_default_info": "Lo sentimos, algo salió mal al cargar el contenido.",
|
||||
"error_fallback_default_refresh_suggestion": "Recarga la página e intentálo de nuevo.",
|
||||
"section_menu_action_remove_section": "Eliminar sección",
|
||||
"section_menu_action_collapse_section": "Contraer sección",
|
||||
"section_menu_action_expand_section": "Expandir sección",
|
||||
"section_menu_action_manage_section": "Gestionar sección",
|
||||
"section_menu_action_add_topsite": "Añadir sitio popular",
|
||||
"section_menu_action_move_up": "Subir",
|
||||
"section_menu_action_move_down": "Bajar",
|
||||
"section_menu_action_privacy_notice": "Aviso de privacidad",
|
||||
"edit_topsites_add_button_tooltip": "Agregar sitio popular"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -10,7 +10,7 @@ window.gActivityStreamStrings = {
|
||||
"header_recommended_by": "દ્વારા ભલામણ",
|
||||
"header_bookmarks_placeholder": "તમારી પાસે હજી સુધી કોઈ બુકમાર્ક્સ નથી.",
|
||||
"header_stories_from": "થી",
|
||||
"context_menu_button_sr": "Open context menu for {title}",
|
||||
"context_menu_button_sr": "{title} માટે સંદર્ભ મેનૂ ખોલો",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"type_label_visited": "જોવામા આવેલ:",
|
||||
"type_label_bookmarked": "બુકમાર્ક્સ",
|
||||
@ -111,5 +111,6 @@ window.gActivityStreamStrings = {
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice"
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "ટોચની સાઇટ ઉમેરો"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Hišće zapołožki nimaće.",
|
||||
"header_stories_from": "wot",
|
||||
"context_menu_button_sr": "Kontekstowy meni za {title} wočinić",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Kontekstowy meni wotrězka wočinić",
|
||||
"type_label_visited": "Wopytany",
|
||||
"type_label_bookmarked": "Jako zapołožka składowany",
|
||||
"type_label_synced": "Z druheho grata synchronizowany",
|
||||
"type_label_recommended": "Popularny",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Do Pocket składowany",
|
||||
"type_label_open": "Wočinjeny",
|
||||
"type_label_topic": "Tema",
|
||||
"type_label_now": "Nětko",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "Chceće woprawdźe kóždu instancu tuteje strony ze swojeje historije zhašeć?",
|
||||
"confirm_history_delete_notice_p2": "Tuta akcija njeda so cofnyć.",
|
||||
"menu_action_save_to_pocket": "Pola Pocket składować",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Z Pocket zhašeć",
|
||||
"menu_action_archive_pocket": "W Pocket archiwować",
|
||||
"search_for_something_with": "Za {search_term} pytać z:",
|
||||
"search_button": "Pytać",
|
||||
"search_header": "Z {search_engine_name} pytać",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Přidać",
|
||||
"topsites_form_add_header": "Nowe najhusćišo wopytane sydło",
|
||||
"topsites_form_edit_header": "Najhusćišo wopytane sydło wobdźěłać",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Titul",
|
||||
"topsites_form_title_placeholder": "Titul zapodać",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "URL zapodać abo zasadźić",
|
||||
@ -102,15 +102,14 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Wupruwujće Firefox ze zapołožkami, historiju a hesłami z druheho wobhladowaka.",
|
||||
"manual_migration_cancel_button": "Ně, dźakuju so",
|
||||
"manual_migration_import_button": "Nětko importować",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Woblubowane sydło přidać"
|
||||
"error_fallback_default_info": "Hopla, při čitanju tutoho wobsaha je so něšto nimokuliło.",
|
||||
"error_fallback_default_refresh_suggestion": "Aktualizujće stronu, zo byšće hišće raz spytał.",
|
||||
"section_menu_action_remove_section": "Wotrězk wotstronić",
|
||||
"section_menu_action_collapse_section": "Wotrězk schować",
|
||||
"section_menu_action_expand_section": "Wotrězk pokazać",
|
||||
"section_menu_action_manage_section": "Wotrězk rjadować",
|
||||
"section_menu_action_add_topsite": "Woblubowane sydło přidać",
|
||||
"section_menu_action_move_up": "Horje",
|
||||
"section_menu_action_move_down": "Dele",
|
||||
"section_menu_action_privacy_notice": "Zdźělenka priwatnosće"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Még nincs könyvjelzője.",
|
||||
"header_stories_from": "innen:",
|
||||
"context_menu_button_sr": "Környezeti menü megnyitása ehhez: {title}",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "A szakasz környezeti menüjének megnyitása",
|
||||
"type_label_visited": "Látogatott",
|
||||
"type_label_bookmarked": "Könyvjelzőzött",
|
||||
"type_label_synced": "Másik eszközről szinkronizálva",
|
||||
"type_label_recommended": "Népszerű",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Mentve a Pocketbe",
|
||||
"type_label_open": "Megnyitás",
|
||||
"type_label_topic": "Téma",
|
||||
"type_label_now": "Most",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "Biztosan törli ezen oldal minden példányát az előzményekből?",
|
||||
"confirm_history_delete_notice_p2": "Ez a művelet nem vonható vissza.",
|
||||
"menu_action_save_to_pocket": "Mentés a Pocketbe",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Törlés a Pocketből",
|
||||
"menu_action_archive_pocket": "Archiválás a Pocketben",
|
||||
"search_for_something_with": "„{search_term}” keresése ezzel:",
|
||||
"search_button": "Keresés",
|
||||
"search_header": "{search_engine_name} keresés",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Hozzáadás",
|
||||
"topsites_form_add_header": "Új népszerű oldal",
|
||||
"topsites_form_edit_header": "Népszerű oldal szerkesztése",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Cím",
|
||||
"topsites_form_title_placeholder": "Cím megadása",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Írjon vagy illesszen be egy URL-t",
|
||||
@ -102,15 +102,14 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Próbálja ki a Firefoxot másik böngészőből származó könyvjelzőkkel, előzményekkel és jelszavakkal.",
|
||||
"manual_migration_cancel_button": "Köszönöm, nem",
|
||||
"manual_migration_import_button": "Importálás most",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Népszerű oldal hozzáadása"
|
||||
"error_fallback_default_info": "Hoppá, valami hiba történt a tartalom betöltésekor.",
|
||||
"error_fallback_default_refresh_suggestion": "Az újrapróbálkozáshoz frissítse az oldalt.",
|
||||
"section_menu_action_remove_section": "Szakasz eltávolítása",
|
||||
"section_menu_action_collapse_section": "Szakasz összecsukása",
|
||||
"section_menu_action_expand_section": "Szakasz lenyitása",
|
||||
"section_menu_action_manage_section": "Szakasz kezelése",
|
||||
"section_menu_action_add_topsite": "Hozzáadás a népszerű oldalakhoz",
|
||||
"section_menu_action_move_up": "Mozgatás felfelé",
|
||||
"section_menu_action_move_down": "Mozgatás lefelé",
|
||||
"section_menu_action_privacy_notice": "Adatvédelmi nyilatkozat"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "Non è ancora disponibile alcun segnalibro.",
|
||||
"header_stories_from": "da",
|
||||
"context_menu_button_sr": "Apri menu contestuale per {title}",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "Apri il menu contestuale per la sezione",
|
||||
"type_label_visited": "Visitato",
|
||||
"type_label_bookmarked": "Nei segnalibri",
|
||||
"type_label_synced": "Sincronizzato da un altro dispositivo",
|
||||
"type_label_recommended": "Di tendenza",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Salvato in Pocket",
|
||||
"type_label_open": "Apri",
|
||||
"type_label_topic": "Argomento",
|
||||
"type_label_now": "Adesso",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "Eliminare tutte le occorrenze di questa pagina dalla cronologia?",
|
||||
"confirm_history_delete_notice_p2": "Questa operazione non può essere annullata.",
|
||||
"menu_action_save_to_pocket": "Salva in Pocket",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Elimina da Pocket",
|
||||
"menu_action_archive_pocket": "Archivia in Pocket",
|
||||
"search_for_something_with": "Cerca {search_term} con:",
|
||||
"search_button": "Cerca",
|
||||
"search_header": "Ricerca {search_engine_name}",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "Aggiungi",
|
||||
"topsites_form_add_header": "Nuovi sito principale",
|
||||
"topsites_form_edit_header": "Modifica sito principale",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "Titolo",
|
||||
"topsites_form_title_placeholder": "Inserire un titolo",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "Digitare o incollare un URL",
|
||||
@ -102,15 +102,14 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "Prova Firefox con i segnalibri, la cronologia e le password di un altro browser.",
|
||||
"manual_migration_cancel_button": "No grazie",
|
||||
"manual_migration_import_button": "Importa adesso",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "Aggiungi sito principale"
|
||||
"error_fallback_default_info": "Oops, qualcosa è andato storto durante il tentativo di caricare questo contenuto.",
|
||||
"error_fallback_default_refresh_suggestion": "Aggiornare la pagina per riprovare.",
|
||||
"section_menu_action_remove_section": "Rimuovi sezione",
|
||||
"section_menu_action_collapse_section": "Comprimi sezione",
|
||||
"section_menu_action_expand_section": "Espandi sezione",
|
||||
"section_menu_action_manage_section": "Gestisci sezione",
|
||||
"section_menu_action_add_topsite": "Aggiungi sito principale",
|
||||
"section_menu_action_move_up": "Sposta in alto",
|
||||
"section_menu_action_move_down": "Sposta in basso",
|
||||
"section_menu_action_privacy_notice": "Informativa sulla privacy"
|
||||
};
|
||||
|
File diff suppressed because one or more lines are too long
@ -11,12 +11,12 @@ window.gActivityStreamStrings = {
|
||||
"header_bookmarks_placeholder": "まだブックマークがありません。",
|
||||
"header_stories_from": "配信元",
|
||||
"context_menu_button_sr": "{title} のコンテキストメニューを開く",
|
||||
"section_context_menu_button_sr": "Open the section context menu",
|
||||
"section_context_menu_button_sr": "セクションのコンテキストメニューを開く",
|
||||
"type_label_visited": "訪問済み",
|
||||
"type_label_bookmarked": "ブックマーク済み",
|
||||
"type_label_synced": "他の端末から同期",
|
||||
"type_label_recommended": "話題の記事",
|
||||
"type_label_pocket": "Saved to Pocket",
|
||||
"type_label_pocket": "Pocket に保存しました",
|
||||
"type_label_open": "開く",
|
||||
"type_label_topic": "トピック",
|
||||
"type_label_now": "今",
|
||||
@ -33,8 +33,8 @@ window.gActivityStreamStrings = {
|
||||
"confirm_history_delete_p1": "本当にこのページに関して保存されているあらゆる情報を履歴から削除しますか?",
|
||||
"confirm_history_delete_notice_p2": "この操作は取り消せません。",
|
||||
"menu_action_save_to_pocket": "Pocket へ保存",
|
||||
"menu_action_delete_pocket": "Delete from Pocket",
|
||||
"menu_action_archive_pocket": "Archive in Pocket",
|
||||
"menu_action_delete_pocket": "Pocket から削除",
|
||||
"menu_action_archive_pocket": "Pocket にアーカイブ",
|
||||
"search_for_something_with": "{search_term} を検索:",
|
||||
"search_button": "検索",
|
||||
"search_header": "{search_engine_name} 検索",
|
||||
@ -85,7 +85,7 @@ window.gActivityStreamStrings = {
|
||||
"edit_topsites_add_button": "追加",
|
||||
"topsites_form_add_header": "新着トップサイト",
|
||||
"topsites_form_edit_header": "トップサイトを編集",
|
||||
"topsites_form_title_label": "Title",
|
||||
"topsites_form_title_label": "タイトル",
|
||||
"topsites_form_title_placeholder": "タイトルを入力",
|
||||
"topsites_form_url_label": "URL",
|
||||
"topsites_form_url_placeholder": "URL を入力するか貼り付け",
|
||||
@ -102,15 +102,14 @@ window.gActivityStreamStrings = {
|
||||
"manual_migration_explanation2": "他のブラウザーからブックマークや履歴、パスワードを取り込んで Firefox を使ってみましょう。",
|
||||
"manual_migration_cancel_button": "今はしない",
|
||||
"manual_migration_import_button": "今すぐインポート",
|
||||
"error_fallback_default_info": "Oops, something went wrong loading this content.",
|
||||
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
|
||||
"section_menu_action_remove_section": "Remove Section",
|
||||
"section_menu_action_collapse_section": "Collapse Section",
|
||||
"section_menu_action_expand_section": "Expand Section",
|
||||
"section_menu_action_manage_section": "Manage Section",
|
||||
"section_menu_action_add_topsite": "Add Top Site",
|
||||
"section_menu_action_move_up": "Move Up",
|
||||
"section_menu_action_move_down": "Move Down",
|
||||
"section_menu_action_privacy_notice": "Privacy Notice",
|
||||
"edit_topsites_add_button_tooltip": "トップサイトを追加"
|
||||
"error_fallback_default_info": "このコンテンツの読み込み中に何か問題が発生しました。",
|
||||
"error_fallback_default_refresh_suggestion": "ページを再読み込みして再確認してください。",
|
||||
"section_menu_action_remove_section": "セクションを削除",
|
||||
"section_menu_action_collapse_section": "セクションを折りたたむ",
|
||||
"section_menu_action_expand_section": "セクションを広げる",
|
||||
"section_menu_action_manage_section": "セクションを管理",
|
||||
"section_menu_action_add_topsite": "トップサイトを追加",
|
||||
"section_menu_action_move_up": "上へ移動",
|
||||
"section_menu_action_move_down": "下へ移動",
|
||||
"section_menu_action_privacy_notice": "プライバシー通知"
|
||||
};
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user