Open, Fill, Submit Now Regularly Fails for First Invocation on Safari

Sometime over the past couple of weeks, on both my Macs, open/fill/submit has stopped working reliably in Safari. Something has changed, on both Macs, but I can't figure out what. Both my Macs are running the very latest updates of macOS High Sierra and the most recent 1Password.

The error is that (and I've seen this for both Royal Bank and Sun Life logins) the userid and password fields are filled as expected, but then the browser window (sort of) jiggles and both fields are cleared and nothing happens. This only happens on the first invocation, now that I'm staring at a login screen with blank userid and password fields, if I repeat the fill and submit request then the login is successful.

I would estimate that this failure occurs 75% of the time, but it's not 100% of the time, which is quite odd. Perhaps a timing error?

Any thoughts?


1Password Version: Not Provided
Extension Version: Not Provided
OS Version: Not Provided
Sync Type: Not Provided

Comments

  • Lars
    Lars
    1Password Alumni

    @ings - sorry for the trouble! When logins that previously worked start to no longer work, the culprit is most often changes that have been made by the site(s) in question, rather than changes in 1Password. Not always, but usually. One big way to tell is that it only happens on a couple of sites, but not on others, and it happens reliably on the affected sites.

    The best way to resolve this is to try re-saving a new Login item for the site. But not in the usual way. Use these instructions to save a new Login item for both Royal Bank and Sun Life, then trash your older login and see if the new one works the way it should. If it does, well, then I was right. ;) If you still continue to have problems, let us know. Good luck! :)

  • ings
    ings
    Community Member
    edited April 2018

    Hi @Lars,

    Thanks for the quick turnaround. I tried your suggestion, for both Royal Bank and Sun Life, and no dice. The error persists. And now that I notice it, Bell Canada's login is failing in the same way. So this error does not appear to be Web site specific.

    Here's an important clue (that I forgot to try earlier): on the same Macs, the error does NOT occur in Firefox 52.7.3 (a recent release on the Firefox ESR channel). So perhaps Safari changed in a recent update, triggering the failure?

    So what should I try next? Perhaps reinstalling the Safari auto-submit script?

    Thanks.

  • ings
    ings
    Community Member
    edited April 2018

    P.S. Neither does the problem occur, for Royal Bank or Sun Life, on Firefox 59.0.2 on the latest builds of Windows 10.

    So this would seem to be a macOS High Sierra Safari integration issue.

    Dave Ings

  • @ings,

    Can you clarify what version of 1Password you're using?

    Rudy

  • ings
    ings
    Community Member

    @ruby I am running macOS 1Password 6.8.8 (under a subscription).

  • ings
    ings
    Community Member

    @rudy (corrected handle typo) I am running macOS 1Password 6.8.8 (under a subscription).

  • botnik
    botnik
    Community Member
    edited April 2018

    Safari 11.1 update changed how autofill works and after installing Safari 11.1 I often have to use the 1Password extension in the browser (MacOS) to fill in credentials multiple times. I also sometimes get asked if I want to "leave this page" supposedly because I'm leaving the "filling in credentials" page to go into the website in question.

    https://support.apple.com/en-ca/HT208695

    Look for Safari Login AutoFill CVE-2018-4137

    The behaviour I am seeing is exactly as in the original post above, in that password fields are cleared and I have to use the browser extension to fill everything in again.

  • littlebobbytables
    littlebobbytables
    1Password Alumni

    Hi @ings & @botnik,

    There has been a change in Safari's behaviour and it is observable when invoking 1Password's open-and-fill and using the submit after filling feature.

    1Password's submit works by the extension leaving focus on the password field and letting 1Password ask the operating system to react as if the user has pressed the enter key. For the vast majority of sites pressing enter after typing your password submits the form and we make use of this due to its reliability. There are times where 1Password cannot leave focus on the password field though so we have checks in place. If the browser tells us focus is not on the password field we don't try to submit, even if the feature is enabled.

    So what does this have to do with Safari? Prior to Safari 11.1, Safari would place focus on the password field when the extension asked and all was fine. As of Safari 11.1 though, if focus starts off in the address bar, which is where focus is for many of the options for a new tab or window, focus remains there even if the extension asks for focus to be placed on the password field. It also turns out that the check we use, which works elsewhere, doesn't behave the same in Safari. The combination of these two means the extension erroneously believes focus is on the password field and asks 1Password to simulate the user pressing enter. Focus is on the address bar though and what does pressing enter in the address bar do? it loads the page. So open-and-fill with submit turns into open-and-fill and reload the page which clears all the filled fields.

    There are a couple of ways to workaround this behaviour while we try to think of what might help.

    1. Before initiating open-and-fill in a new tab or window, click anywhere so that focus is moved off of the address bar. As long as focus is not in the address bar the extension can ensure focus is on the password field and submit then works normally.
    2. Invoke open-and-fill from an existing tab. If you ask 1Password to use a Login item that does not match the current page the default behaviour is to open a new tab and perform open-and-fill in it. When the extension creates a new tab Safari doesn't place focus on the address bar. As a result, the extension can ensure focus is on the password field and submit then works normally.

    Neither is ideal but they will accommodate the new behaviour in Safari 11.1.

  • ings
    ings
    Community Member

    Hi @littlebobbytables

    Your detailed explanation (thanks) is consistent with my observations. Let me note one small corner case (which also explains why I encountered the error, but many others may not):

    When you first launch Safari, if the default page view is your favourites, then the submit will fail as discussed. Presumably because the focus is in the address bar, and when invoking open, fill and submit from the favourites view, no new tab is created, instead the view is refreshed in place.

    In fact, playing around with this further, I noticed that anytime you are looking at the favourites view, even in a new tab, the submit will fail. In other words, the key is (as you observed) getting the focus out of the address bar, which is not possible with the favourites view.

    So, for me, the workaround is quite easy - change my default new window/tab view from favourites to a site (like Google) that takes the focus out of the address bar.

    Dave Ings

  • AGAlumB
    AGAlumB
    1Password Alumni

    So, for me, the workaround is quite easy - change my default new window/tab view from favourites to a site (like Google) that takes the focus out of the address bar.

    @ings: Sounds like a plan. I know not everyone will want to do that, but glad that helps in your case. We've made some improvements in the latest 1Password for Mac beta, and there are more to come as well. Glad lil bobby was able to help in the mean time. Cheers! :)

This discussion has been closed.