diff --git a/keepassxc-browser/content/icon-handler.js b/keepassxc-browser/content/icon-handler.js index 9406d9cb..a7262a08 100644 --- a/keepassxc-browser/content/icon-handler.js +++ b/keepassxc-browser/content/icon-handler.js @@ -53,11 +53,12 @@ kpxcIcons.addIconsFromForm = async function(form) { kpxcIcons.addIcon(c.passwordInputs[0], kpxcIcons.iconTypes.DEFAULT); } } - - if (c.username && !c.username.readOnly) { + const usernameFieldVisible = c.username && kpxcFields.isVisible(c.username); + + if (c.username && !c.username.readOnly && usernameFieldVisible) { kpxcIcons.addIcon(c.username, kpxcIcons.iconTypes.DEFAULT); - } else if (c.password && (!c.username || (c.username && c.username.readOnly))) { - // Single password field + } else if (c.password && (!c.username || (c.username && (c.username.readOnly || !usernameFieldVisible)))) { + // Single password field, or username field is hidden (e.g. two-step login) kpxcIcons.addIcon(c.password, kpxcIcons.iconTypes.DEFAULT); } }