It’s Cybersecurity Awareness Month! Join our interactive training session, or learn about security and AI from 1Password experts.
Forum Discussion
Former Member
4 years agoHow do I disable form autosubmit?
In 1Password 8 when I fill a login in Safari, it automatically submits the login. I would like 1Password to fill out the fields but not hit the submit button.
In earlier versions of 1Password, I was able to do that but I can’t find the equivalent setting in 1Password 8.
Note: I’m using the Cmd-\ quick access panel to fill in passwords.
1Password Version: 8.7.0
Extension Version: Not Provided
OS Version: macOS 12.3.1
135 Replies
- Former Member
+1
I was super excited for universal access for some of my desktop apps that use secured passwords, but some of my desktop apps should just have the password auto filled without auto submitting it. Since I can't disable this function (especially after I had to get used to it not auto submitting in my browser!), my main desktop app still requires me to manually go to 1Password to copy it.IMHO, for an MVP, have a feature flag to blanket toggle. Post-release, it would be lovely to still have a blanket toggle for those that want that, but also the ability to say "Don't auto submit for this specific app" would be my best case scenario.
This way I can get the auto submit in the browser and other places where it's applicable, but not have it where it shouldn't submit. Alternatively, an option to not auto submit a specific password would work too.Thanks 1Password team for all your efforts! It was clear that a lot went into 1Password 8 and much of it was driven by product feedback, including us complaining about the auto submit removal. With 1Password's expanded usability, it's understandable that some new features may not perfectly align with consumer's needs. It's clear you've heard us about this too, so thanks!
If you need a beta test, you've got one here that will happily give feedback.
- Former Member
+1 for the ability to disable autosubmit, for all the reasons above. As a longtime 1Password user, I have years of muscle memory of Cmd + \ followed by the return key. Now that 1Password autosubmits, when I inadvertently hit return after Cmd + \, it seems to conflict with the timing of the autofill function and I often get a login failure.
- Former Member
auto submit is a security issue. this needs to be addressed immediately
- Former Member
It's really bad that it auto submits. Sometimes it fills in the wrong fields (the signup fields for example) and auto submits it.
Also pretty weird that during 1P7 you guys said yourself that autosubmit is something that is not desired and should be removed.
Why is it now the only option?
I guess it has something to do with the new universal codebase because you got it working great in previous versions... - VirtualWolfOccasional Contributor
Dropping another +1 for the ability to disable auto-submit, for all the reasons everyone has already mentioned. :D
- Former Member
That's very interesting. We've definitely been seeing reports of this issue, but I haven't heard of the extension disappearing while actively browsing Safari. When this occurs does the extension disappear from the toolbar / Safari's list of extensions in Safari preferences?
The extension remains around, but the in-page autofill menu stops functioning.
Close! Safari is actually the one browser where we're explicitly not reaching out to the browser extension to perform fills right now, instead relying entirely on accessibility-based filling (when using CMD + ). This is due to some challenges we've had getting the Safari extension to quickly and reliably perform actions when requested by the desktop app. We're actively working on this issue and we hope to be able to use the Safari extension to perform fills when using CMD + \ in the future, just like every other browser.
Yeah, this is the conclusion I came to in my later posts. It's nice to have confirmation that this is, at least at present, intentional. Gently, I would like to suggest that the promotion of 1Password 8 to GA perhaps should have waited until this issue was resolved. At present, the user experience with Safari is significantly worse with 1Password 8 than with 1Password 7, and I suspect that the plurality of users on macOS use Safari as their browser.
I would strongly recommend some form of public acknowledgement of the state of things with Safari and that the UX is being actively worked on, either in a new thread or in the app or both. Absent this, newly-upgrading users will continue to be surprised by the seeming regressions in UX, and there is significant risk that they will write off 1Password 8, or even 1Password entirely, as a failure.
I appreciate that there are a lot of things at play, and indeed there was a lot of impressive work done for 1Password 8, not the least of which being the fact that it's a complete rewrite. That being said, the fact that it was launched on Mac with the system's default browser not having UX parity with either 1Password 7 or other browsers is somewhat troubling, and it's worth evaluating why that decision was made.
- ag_jarek
1Password Team
Hi @elyscape! Thank you so much for taking the time to dive in and write up the wonderful information above about Universal Autofill and the Safari extension. I really do appreciate you taking the time to do that. We're all super passionate about the product here and it's cool to see 😄.
I'm one of the developers who's worked on both the (new) 1Password extension for Safari and Universal Autofill, so I'd like to offer a bit of insight on the information above.
As discussed in this thread, for some reason part of the Safari extension often doesn't get registered correctly in the system. Anecdotally, it often seems to un-register during a browsing session, requiring me to run lsregister -f -R /Applications/Safari.app or sometimes even lsregister -f -R /Applications/1Password\ for\ Safari.app even when it worked just moments earlier.
That's very interesting. We've definitely been seeing reports of this issue, but I haven't heard of the extension disappearing while actively browsing Safari. When this occurs does the extension disappear from the toolbar / Safari's list of extensions in Safari preferences?
The keyboard shortcuts for the new Safari extension are not currently configurable. As such, it responds to Cmd+Shift+X and not Cmd+.
Yes, this is currently a limitation in the Safari extension that we are hoping to be able to lift in the future. One thing to note here is that the web extension API doesn't allow setting CMD + \ as a shortcut, so that's not an option for the Safari extension.
1Password's new global autofill functionality likes to be helpful. As a result, pressing Cmd+\ is caught by 1Password and the global autofill kicks in.
💯, we're able to register CMD + \ as a shortcut from the desktop app and so that's where we decide between using macOS accessibility APIs to perform a fill or the browser extension (based on the context).
(Unconfirmed speculation on my part) 1Password app attempts to communicate this with Safari extension, but fails
Close! Safari is actually the one browser where we're explicitly not reaching out to the browser extension to perform fills right now, instead relying entirely on accessibility-based filling (when using CMD + \). This is due to some challenges we've had getting the Safari extension to quickly and reliably perform actions when requested by the desktop app. We're actively working on this issue and we hope to be able to use the Safari extension to perform fills when using CMD + \ in the future, just like every other browser.
In the meantime, filling via the browser extension can be quickly accessed via the in-page suggestions that appear underneath login fields, as well as the CMD + SHIFT + X shortcut to open the extension pop-up (from which you can autofill logins via the keyboard).
1Password app, falling back to global autofill, injects keystrokes of the username, tab, the password, and return
Correct, although I would add that we use a number of methods to obtain field focus, and tab is a fallback (not the first thing we try).
- Former Member
I cannot stress enough that this is probably the thing most in need of fixing right now. The fact that 1Password 8 is incorrectly falling back to Universal Autofill in Safari instead of filling through the browser extension is the cause behind many other usability issues that people are currently complaining about.
- Former Member
I have done some more digging and believe the issue is that the 1Password desktop app does not attempt to communicate with the Safari extension if the user has pressed
Cmd+\.Using Chrome
When I initiate autofill by clicking on the 1Password icon in the text box, the following is logged:
==> ./BrowserHelper/1Password_rCURRENT.log <==
INFO 2022-05-12T16:51:46.457 ThreadId(55) [swift] XPCServer.swift:256 :: sendToMain(_:reply:) | Sending message to Desktop app
INFO 2022-05-12T16:51:46.458 ThreadId(55) [swift] XPCServer.swift:265 :: broadcastToExtensions(_:) | Sending message to extensions
- The Chrome extension sends a message to the browser helper
- The browser helper relays the message to the desktop app
- The desktop app identifies the login to use, and sends the credentials to the browser helper
- The browser helper relays the message to the Chrome extension
- The Chrome extension fills the login form
When I initiate autofill using
Cmd+\, the following is logged:
```
==> ./1Password_rCURRENT.log <==
INFO 2022-05-12T16:53:20.841 tokio-runtime-worker(ThreadId(50)) [swift] Brain.swift:475 :: collectPageDetails(fastCollection:prettyPrint:) | @Autofill: Collecting from pid(39035)
INFO 2022-05-12T16:53:20.894 tokio-runtime-worker(ThreadId(50)) [swift] Brain.swift:369 :: collectTerminalElement(app:) | @Autofill: Active app isn't terminal, can't collect terminal element
INFO 2022-05-12T16:53:20.898 tokio-runtime-worker(ThreadId(50)) [swift] Brain.swift:475 :: collectPageDetails(fastCollection:prettyPrint:) | @Autofill: Collecting from pid(39035)
INFO 2022-05-12T16:53:20.938 tokio-runtime-worker(ThreadId(50)) [swift] Brain.swift:369 :: collectTerminalElement(app:) | @Autofill: Active app isn't terminal, can't collect terminal element==> ./BrowserHelper/1Password_rCURRENT.log <==
INFO 2022-05-12T16:53:20.940 ThreadId(55) [swift] XPCServer.swift:265 :: broadcastToExtensions(:) | Sending message to extensions
INFO 2022-05-12T16:53:20.955 ThreadId(55) [swift] XPCServer.swift:256 :: sendToMain(:reply:) | Sending message to Desktop app==> ./1Password_rCURRENT.log <==
INFO 2022-05-12T16:53:20.970 tokio-runtime-worker(ThreadId(12)) [1P:op-app/src/app/backend/autofill.rs:494] Filled via b5x==> ./BrowserHelper/1Password_rCURRENT.log <==
INFO 2022-05-12T16:53:20.970 ThreadId(55) [swift] XPCServer.swift:265 :: broadcastToExtensions(_:) | Sending message to extensions
```- The desktop app identifies the active app as a browser
- The desktop app sends a message to the browser helper requesting information on the active page
- The browser helper relays the message to the Chrome extension
- The Chrome extension provides information on the active page to the browser helper
- The browser helper relays the message to the desktop app
- The desktop app identifies the login to use, and sends the credentials to the browser helper
- The browser helper relays the message to the Chrome extension
- The Chrome extension fills the login form
Using Safari
When I initiate autofill by clicking on the 1Password icon in the text box, the following is logged:
==> ./BrowserHelper/1Password_rCURRENT.log <==
INFO 2022-05-12T16:57:32.674 ThreadId(56) [swift] XPCServer.swift:256 :: sendToMain(_:reply:) | Sending message to Desktop app
INFO 2022-05-12T16:57:32.674 ThreadId(56) [swift] XPCServer.swift:265 :: broadcastToExtensions(_:) | Sending message to extensions
- The Safari extension sends a message to the browser helper
- The browser helper relays the message to the desktop app
- The desktop app identifies the login to use, and sends the credentials to the browser helper
- The browser helper relays the message to the Safari extension
- The Safari extension fills the login form
When I initiate autofill using
Cmd+\, the following is logged:
=> ./1Password_rCURRENT.log <==
INFO 2022-05-12T16:58:26.653 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:475 :: collectPageDetails(fastCollection:prettyPrint:) | @Autofill: Collecting from pid(92041)
INFO 2022-05-12T16:58:26.689 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:369 :: collectTerminalElement(app:) | @Autofill: Active app isn't terminal, can't collect terminal element
INFO 2022-05-12T16:58:26.692 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:475 :: collectPageDetails(fastCollection:prettyPrint:) | @Autofill: Collecting from pid(92041)
INFO 2022-05-12T16:58:26.701 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:369 :: collectTerminalElement(app:) | @Autofill: Active app isn't terminal, can't collect terminal element
INFO 2022-05-12T16:58:27.006 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:475 :: collectPageDetails(fastCollection:prettyPrint:) | @Autofill: Collecting from pid(92041)
INFO 2022-05-12T16:58:27.019 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:369 :: collectTerminalElement(app:) | @Autofill: Active app isn't terminal, can't collect terminal element
INFO 2022-05-12T16:58:27.020 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:475 :: collectPageDetails(fastCollection:prettyPrint:) | @Autofill: Collecting from pid(92041)
INFO 2022-05-12T16:58:27.039 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:369 :: collectTerminalElement(app:) | @Autofill: Active app isn't terminal, can't collect terminal element
INFO 2022-05-12T16:58:27.043 tokio-runtime-worker(ThreadId(14)) [1P:op-desktop-autofill/src/macos.rs:91] Filling designations: [username, current-password]
INFO 2022-05-12T16:58:27.043 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:566 :: executeFillScript(data:) | @Autofill: Executing fill script
INFO 2022-05-12T16:58:27.044 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:598 :: executeFillScript(data:) | @Autofill: Performing fill operation for frame 1 - OPID: Optional(0)
INFO 2022-05-12T16:58:27.044 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:607 :: executeFillScript(data:) | @Autofill: getting collected element for operation
INFO 2022-05-12T16:58:27.048 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:625 :: executeFillScript(data:) | @Autofill: @Focus – Element successfully focused
INFO 2022-05-12T16:58:27.049 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:739 :: poll(fn:sleepFor:maxAttempts:) | @Autofill: @poll – complete in 1 attempts
INFO 2022-05-12T16:58:27.160 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:697 :: executeFillScript(data:) | @Autofill: @Fill – element successfully filled by smart-type
INFO 2022-05-12T16:58:27.160 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:739 :: poll(fn:sleepFor:maxAttempts:) | @Autofill: @poll – complete in 5 attempts
INFO 2022-05-12T16:58:27.161 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:598 :: executeFillScript(data:) | @Autofill: Performing fill operation for frame 1 - OPID: Optional(1)
INFO 2022-05-12T16:58:27.161 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:607 :: executeFillScript(data:) | @Autofill: getting collected element for operation
INFO 2022-05-12T16:58:27.225 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:625 :: executeFillScript(data:) | @Autofill: @Focus – Element successfully focused
INFO 2022-05-12T16:58:27.225 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:739 :: poll(fn:sleepFor:maxAttempts:) | @Autofill: @poll – complete in 1 attempts
INFO 2022-05-12T16:58:27.453 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:697 :: executeFillScript(data:) | @Autofill: @Fill – element successfully filled by smart-type
INFO 2022-05-12T16:58:27.453 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:739 :: poll(fn:sleepFor:maxAttempts:) | @Autofill: @poll – complete in 21 attempts
INFO 2022-05-12T16:58:27.557 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:724 :: executeFillScript(data:) | @Autofill: typing enter
INFO 2022-05-12T16:58:27.558 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:475 :: collectPageDetails(fastCollection:prettyPrint:) | @Autofill: Collecting from pid(92041)
INFO 2022-05-12T16:58:27.604 tokio-runtime-worker(ThreadId(51)) [swift] Brain.swift:369 :: collectTerminalElement(app:) | @Autofill: Active app isn't terminal, can't collect terminal element
INFO 2022-05-12T16:58:27.607 tokio-runtime-worker(ThreadId(1)) [1P:op-desktop-autofill/src/macos.rs:117] Done filling
- The desktop app does not identify the active app as a browser
- Universal Autofill is invoked
- Using the accessibility API, the desktop app determines the active site
- The desktop app identifies the login to use
- Using the accessibility API, the desktop app injects credentials as keystroke events
Conclusion
1Password 8's detection of the active application does not appears to be correctly identifying that Safari is a browser and, as a result, is not even attempting to communicate with the Safari extension.
- Former Member
1P_PeterG the autosubmit or autofill its not working correctly. 1. autofill should not happen for security reasons. 2. it doesnt support 2FA when website login has multiple steps like version 7 did.