Closed Bug 1764683 Opened 2 years ago Closed 2 years ago

Pop-up panel displays some blank options when right-clicking the "Enter new password:" field

Categories

(Firefox :: Settings UI, defect)

Firefox 99
defect

Tracking

()

VERIFIED FIXED
101 Branch
Tracking Status
firefox-esr91 --- wontfix
firefox99 --- wontfix
firefox100 --- wontfix
firefox101 --- verified

People

(Reporter: soapOperatest, Assigned: Gijs)

References

(Regression)

Details

(Keywords: regression)

Attachments

(5 files)

[Affected versions]:

99.0.1 (64-bit)
101.0a1 (64-bit)

[Affected Platforms]:

macOS 10.15.7 (19H524)
macOs 10.13.6

[Steps to reproduce]:

  1. Open browser.
  2. Click the "hamburger menu" button.
  3. choose "Settings".
  4. Click the Privacy & Security panel.
  5. Check "Use a primary password" checkbox.
  6. Right-click on the "Enter new password:" field.

[Expected Results]:
The pop-up panel displays options correctly.

[Actual Results]:
The pop-up panel displays some blank options.

[Notes]:

  • Some blank options in the pop-up panels can be ticked.
  • The pop-up panel has the same issue when right-clicking on the "Re-enter password:" field.
  • The pop-up panel has the same issue when right-clicking on the "Current password:" field for unchecking "Use a primary password" checkbox.
See Also: → 1764686

An error is shown in Browser console after step 5

LoginAutoComplete: Error: An origin is required. Message name: PasswordManager:autoCompleteLogins
    receiveMessage resource://gre/modules/LoginManagerParent.jsm:273
    get resource://gre/modules/XPCOMUtils.jsm:62
    receiveMessage resource://gre/modules/LoginManagerParent.jsm:341

Several errors is shown in Browser console at step 6

LoginAutoComplete: Error: An origin is required. Message name: PasswordManager:autoCompleteLogins
    receiveMessage resource://gre/modules/LoginManagerParent.jsm:273
    get resource://gre/modules/XPCOMUtils.jsm:62
    receiveMessage resource://gre/modules/LoginManagerParent.jsm:341
TypeError: URL constructor: chrome://mozapps is not a valid URL. LoginManagerParent.jsm:135:18
NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIIOService.newURI] LoginManager.jsm:605
Uncaught 
Exception { name: "NS_ERROR_FAILURE", message: "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIIOService.newURI]", result: 2147500037, filename: "resource://gre/modules/LoginManager.jsm", lineNumber: 605, columnNumber: 0, data: null, stack: "getLoginSavingEnabled@resource://gre/modules/LoginManager.jsm:605:27\ninitPasswordManagerItems@chrome://browser/content/nsContextMenu.js:1034:25\ninitItems@chrome://browser/content/nsContextMenu.js:345:10\nnsContextMenu@chrome://browser/content/nsContextMenu.js:175:10\nonpopupshowing@chrome://browser/content/browser.xhtml:1:115\nopenContextMenu@chrome://browser/content/nsContextMenu.js:96:9\nreceiveMessage@resource:///actors/ContextMenuParent.jsm:23:9\n", location: XPCWrappedNative_NoHelper }
LoginManager.jsm:605


An error is shown in Browser console after step 6

Uncaught TypeError: can't access property "hiding", gContextMenu is null
    onpopuphiding chrome://browser/content/browser.xhtml:1
browser.xhtml:1:93
LoginAutoComplete: Error: An origin is required. Message name: PasswordManager:autoCompleteLogins
    receiveMessage resource://gre/modules/LoginManagerParent.jsm:273
    get resource://gre/modules/XPCOMUtils.jsm:62
    receiveMessage resource://gre/modules/LoginManagerParent.jsm:341

Regression window:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=e4810a424e34b090575175fa8c7a79afc7946249&tochange=008bb6521b863a99ab0f21c19f71a70956d0d8f2

Suspect : Bug 1691755

Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: regression
Regressed by: 1691755

:saschanaz, since you are the author of the regressor, bug 1691755, could you take a look?
For more information, please visit auto_nag documentation.

Flags: needinfo?(krosylight)
Has Regression Range: --- → yes
Attached image image.png

I doubt this is bug 1691755. It somehow shows every possible menuseparators, I highly suspect some initialization step has been broken for some time.

Flags: needinfo?(krosylight) → needinfo?(gijskruitbosch+bugs)

(In reply to Kagami :saschanaz from comment #3)

Created attachment 9272297 [details]
image.png

I doubt this is bug 1691755. It somehow shows every possible menuseparators, I highly suspect some initialization step has been broken for some time.

That screenshot doesn't match the appearance in the video from comment 0, so not sure you're talking about the same thing. Alice's regression windows are normally accurate...

Anyway, I'm out on PTO from tomorrow and don't have time to investigate today, so going to pass the needinfo along to Mike (sorry!)

Flags: needinfo?(gijskruitbosch+bugs) → needinfo?(mconley)

Some more info:

  1. Restart Firefox and go right to the primary password thing and open context menu
  2. Open context menu on view-source:https://example.com/
  3. Return to primary password and open context menu
  4. Open context menu on the search box within the about:preferences
  5. Return to primary password and open context menu

Expected: 1/3/5 should be same
Actual: 1 shows every possible thing but in uninitialized state. 3 and 5 just show the previous context menu (what 2 and 4 had).

Alice's regression windows are normally accurate...

Sure, Alice has been awesome! But my take is that nsContextMenu initialization has been broken before that and bug 1691755 just made it worse by using nsContextMenu.

My suggested regression window is https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=d497a1f58d27d75da3667e74a5a7efe5799119fd&tochange=5f8aeb02af2259acfceed9e1abe987849fbb67ca, based on the bisection step:

  1. Open Firefox and open context menu on the start page.
  2. Go to the primary password thing and open context menu.
  3. See if the weird menu separator exists on the top of the menu.

And I suspect either bug 1569093 or bug 1548861.

Okay, as comment #1 already mentioned, Services.logins.getLoginSavingEnabled(formOrigin) throws while called in nsContextMenu.initPasswordManagerItems which is again called in nsContextMenu.initItems. And that's added by bug 1569093.

Regressed by: 1569093
No longer regressed by: 1691755
Attached image image.png

I see attached context menu with steps comment#6.

Yes, I see missing some menuitems in submenu of the context menu.

Attached video Video2.webm

I think that submenu change is intended per the patch title, I mean more like this.

See Also: 1764686
Assignee: nobody → gijskruitbosch+bugs
Status: NEW → ASSIGNED
Pushed by gijskruitbosch@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/d9f662b59ff6
fix content menu in password inputs on chrome: URLs, r=tgiles
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 101 Branch
Flags: needinfo?(mconley)
Flags: qe-verify+

Reproducible on Firefox 100.0(20220428192727) on macOS 11. Confirmed as fixed on Firefox 101.0b5(20220510144626) and Nightly 102.0a1(20220512094957) on macOS 11, Win10 64 bits and Ubuntu 20.04.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: