Bug 1559549 - Add FAQ menuitem to the ellipsis menu in about:logins. ?jaws r=fluent-reviewers,flod

Differential Revision: https://phabricator.services.mozilla.com/D35843

--HG--
extra : moz-landing-system : lando
This commit is contained in:
meandave 2019-07-03 03:34:46 +00:00
Родитель a4cce13895
Коммит 4d1a8ed239
10 изменённых файлов: 40 добавлений и 10 удалений

Просмотреть файл

@ -1744,7 +1744,8 @@ pref("signon.showAutoCompleteFooter", true);
pref("signon.management.page.enabled", false);
pref("signon.showAutoCompleteOrigins", true);
pref("signon.includeOtherSubdomainsInLookup", true);
pref("signon.feedbackURL",
pref("signon.management.page.faqURL", "https://lockwise.firefox.com/faq.html");
pref("signon.management.page.feedbackURL",
"https://www.surveygizmo.com/s3/5036102/Lockwise-feedback?ver=%VERSION%");
// Enable the "Simplify Page" feature in Print Preview. This feature

Просмотреть файл

@ -89,6 +89,7 @@ let LEGACY_ACTORS = {
"AboutLoginsDeleteLogin": {wantUntrusted: true},
"AboutLoginsImport": {wantUntrusted: true},
"AboutLoginsInit": {wantUntrusted: true},
"AboutLoginsOpenFAQ": {wantUntrusted: true},
"AboutLoginsOpenFeedback": {wantUntrusted: true},
"AboutLoginsOpenPreferences": {wantUntrusted: true},
"AboutLoginsOpenSite": {wantUntrusted: true},
@ -583,6 +584,7 @@ const listeners = {
"AboutLogins:CreateLogin": ["AboutLoginsParent"],
"AboutLogins:DeleteLogin": ["AboutLoginsParent"],
"AboutLogins:Import": ["AboutLoginsParent"],
"AboutLogins:OpenFAQ": ["AboutLoginsParent"],
"AboutLogins:OpenFeedback": ["AboutLoginsParent"],
"AboutLogins:OpenPreferences": ["AboutLoginsParent"],
"AboutLogins:OpenSite": ["AboutLoginsParent"],

Просмотреть файл

@ -42,14 +42,18 @@ class AboutLoginsChild extends ActorChild {
this.mm.sendAsyncMessage("AboutLogins:DeleteLogin", {login: event.detail});
break;
}
case "AboutLoginsOpenFeedback": {
this.mm.sendAsyncMessage("AboutLogins:OpenFeedback");
break;
}
case "AboutLoginsImport": {
this.mm.sendAsyncMessage("AboutLogins:Import");
break;
}
case "AboutLoginsOpenFAQ": {
this.mm.sendAsyncMessage("AboutLogins:OpenFAQ");
break;
}
case "AboutLoginsOpenFeedback": {
this.mm.sendAsyncMessage("AboutLogins:OpenFeedback");
break;
}
case "AboutLoginsOpenPreferences": {
this.mm.sendAsyncMessage("AboutLogins:OpenPreferences");
break;

Просмотреть файл

@ -29,9 +29,12 @@ const PRIVILEGEDABOUT_PROCESS_ENABLED =
Services.prefs.getBoolPref(PRIVILEGEDABOUT_PROCESS_PREF, false);
const FEEDBACK_URL_PREF = "signon.feedbackURL";
const FEEDBACK_URL_PREF = "signon.management.page.feedbackURL";
const FEEDBACK_URL = Services.urlFormatter.formatURLPref(FEEDBACK_URL_PREF);
const FAQ_URL_PREF = "signon.management.page.faqURL";
const FAQ_URL = Services.prefs.getStringPref(FAQ_URL_PREF);
// When the privileged content process is enabled, we expect about:logins
// to load in it. Otherwise, it's in a normal web content process.
const EXPECTED_ABOUTLOGINS_REMOTE_TYPE =
@ -113,6 +116,10 @@ var AboutLoginsParent = {
message.target.ownerGlobal.openWebLinkIn(FEEDBACK_URL, "tab", {relatedToCurrent: true});
break;
}
case "AboutLogins:OpenFAQ": {
message.target.ownerGlobal.openWebLinkIn(FAQ_URL, "tab", {relatedToCurrent: true});
break;
}
case "AboutLogins:OpenPreferences": {
message.target.ownerGlobal.openPreferences("privacy-logins");
break;

Просмотреть файл

@ -62,6 +62,7 @@ master-password-reload-button-accesskey = L
menu-button =
.button-title = Open menu
.menuitem-faq = Frequently Asked Questions
.menuitem-feedback = Leave Feedback
.menuitem-import = Import Passwords…
.menuitem-preferences =

Просмотреть файл

@ -28,6 +28,7 @@
<button id="create-login-button" data-l10n-id="create-login-button"></button>
<menu-button data-l10n-id="menu-button"
data-l10n-attrs="button-title,
menuitem-faq,
menuitem-feedback,
menuitem-import,
menuitem-preferences"></menu-button>
@ -150,6 +151,7 @@
<button role="menuitem" class="menuitem-button menuitem-import alternate-button" hidden data-supported-platforms="Win32" data-event-name="AboutLoginsImport"></button>
<button role="menuitem" class="menuitem-button menuitem-preferences alternate-button" data-event-name="AboutLoginsOpenPreferences"></button>
<button role="menuitem" class="menuitem-button menuitem-feedback alternate-button" data-event-name="AboutLoginsOpenFeedback"></button>
<button role="menuitem" class="menuitem-button menuitem-faq alternate-button" data-event-name="AboutLoginsOpenFAQ"></button>
</ul>
</template>

Просмотреть файл

@ -70,3 +70,7 @@
.menuitem-feedback {
background-image: url("chrome://browser/content/aboutlogins/icons/feedback.svg");
}
.menuitem-faq {
background-image: url("chrome://browser/content/aboutlogins/icons/faq.svg");
}

Просмотреть файл

@ -34,6 +34,7 @@ export default class MenuButton extends ReflectedFluentElement {
static get reflectedFluentIDs() {
return [
"button-title",
"menuitem-faq",
"menuitem-import",
"menuitem-feedback",
"menuitem-preferences",
@ -75,6 +76,7 @@ export default class MenuButton extends ReflectedFluentElement {
}
let classList = event.originalTarget.classList;
if (classList.contains("menuitem-import") ||
classList.contains("menuitem-faq") ||
classList.contains("menuitem-feedback") ||
classList.contains("menuitem-preferences")) {
let eventName = event.originalTarget.dataset.eventName;

Просмотреть файл

@ -0,0 +1,6 @@
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
<path fill="context-fill" fill-rule="evenodd" d="M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16zM8 2.719a2.925 2.925 0 0 0-3.115 3.114.948.948 0 1 0 1.896 0c0-1.083.65-1.218 1.219-1.218a1.197 1.197 0 0 1 1.224.806c.1.457-.142.92-.574 1.1a2.966 2.966 0 0 0-1.598 2.562v.365a.948.948 0 0 0 1.896 0v-.4c.048-.393.298-.732.66-.893a2.857 2.857 0 0 0 1.447-3.232A3.074 3.074 0 0 0 8 2.72zm0 8.26a1.354 1.354 0 1 0 0 2.708 1.354 1.354 0 0 0 0-2.708z"/>
</svg>

После

Ширина:  |  Высота:  |  Размер: 741 B

Просмотреть файл

@ -16,10 +16,11 @@ browser.jar:
content/browser/aboutlogins/components/menu-button.css (content/components/menu-button.css)
content/browser/aboutlogins/components/menu-button.js (content/components/menu-button.js)
content/browser/aboutlogins/components/reflected-fluent-element.js (content/components/reflected-fluent-element.js)
content/browser/aboutlogins/icons/delete.svg (content/icons/delete.svg)
content/browser/aboutlogins/icons/edit.svg (content/icons/edit.svg)
content/browser/aboutlogins/icons/favicon.svg (content/icons/favicon.svg)
content/browser/aboutlogins/icons/feedback.svg (content/icons/feedback.svg)
content/browser/aboutlogins/icons/delete.svg (content/icons/delete.svg)
content/browser/aboutlogins/icons/edit.svg (content/icons/edit.svg)
content/browser/aboutlogins/icons/faq.svg (content/icons/faq.svg)
content/browser/aboutlogins/icons/favicon.svg (content/icons/favicon.svg)
content/browser/aboutlogins/icons/feedback.svg (content/icons/feedback.svg)
content/browser/aboutlogins/icons/hide-password.svg (content/icons/hide-password.svg)
content/browser/aboutlogins/icons/show-password.svg (content/icons/show-password.svg)
content/browser/aboutlogins/aboutLogins.css (content/aboutLogins.css)