1PasswordX Firefox [Fedora 29] flashes up briefly and disappears

Intro
I am using the 1PasswordX browser extension for Firefox 67.0.4 (64-bit) on Linux (Fedora 29). I am using the Wayland compositor and the default GNOME 3 shell.

Since a recent 1PasswordX extension update and Fedora update (not sure which), I am seeing the issue described below, which has symptoms very similar to an issue that was previously reported on Ubuntu (https://discussions.agilebits.com/discussion/98113/1password-on-firefox-linux and https://discussions.agilebits.com/discussion/90011/lock-screen-issue-1password-x-for-firefox-on-ubuntu-18-04).

However, since Fedora 29 uses Wayland as the compositor and is usually quite up to date so would presumably have a fixed version of ibus / gnome-shell it may be a different issue

Issue description

Upon starting Firefox, I am not able to unlock 1passwordx through either clicking on the toolbar or using the keyboard shortcut. Presseing either of these results in the 1password window flashing up briefly and disappearing again.

Logging in through the web interface (https://start.1password.com/signin) makes the issue go away until 1passwordX is locked again, either through timeout or explicitly by me locking it.

I reproduced this issue even with all addons except 1passwordx disabled.


1Password Version: n/a
Extension Version: 1.15.3
OS Version: Fedora 29 (kernel: 5.1.16-200.fc29.x86_64)
Sync Type: Not Provided
Referrer: forum-search:Firefox Linux flashes up

Comments

  • ag_yaron
    ag_yaron
    1Password Alumni

    Hey @alnx ,
    We have recently received a similar report and have filed a bug report with the devs. It does seem to be related to Wayland (and not the other forum links you posted here), but I can't tell for sure until our devs check it out. I have added your report here to the bug report filed. Hopefully we will have new findings regarding this issue soon.

    Thank you for reporting it!

    ref: b5x-x/b5x#1356

  • alnx
    alnx
    Community Member

    Hey @Yaron, It's been several weeks.

    Could you tell me what the devs have found regarding this issue, and when we can expect a fix?

    Thanks.

  • ag_yaron
    ag_yaron
    1Password Alumni

    Hey @alnx
    No news yet. I do not have a timeframe or a deadline for when the devs will address this as they have their own queue and roadmap of development.
    I do hope we will see a fix soon, perhaps in an unrelated update that will resolve this automagically. :chuffed:

  • Hi @alnx,

    I'm sorry to say but if this is at all related to Beyer's Lock screen issue: 1Password X for Firefox on Ubuntu 18.04 🐛⚠️ post, as far as I know there's nothing we can do.

    With any luck this is a different issue and caused by us as that would mean we have a chance to fix it. 🤞 In this case there should be some errors in the logs that would help us track it down. Can you grab the background logs and the console logs from the popup window itself by right clicking on the window, selecting Inspect, and then grabbing the logs from the Console tab.

    Hopefully there are some logs there that are related to us. Please let us know and we'll dig deeper.

    ++dave;

  • alnx
    alnx
    Community Member

    Hi @dteare,

    I don't know the details of the Ubuntu issue, but I am fairly confident it's a different issue, for the following reasons:

    • I'm using Fedora, so I am not using an Ubuntu / Debian patched version of ibus.
    • I am using Wayland
    • Running firefox with GTK_IM_MODULE=xim firefox (a suggested workaround) doesn't resolve the issue

    In any case, here are the console logs from when I reproduced this issue. This is what I did

    1. Open addon debugging window
    2. Lock 1Password using extension window
    3. Delete any existing console message
    4. click on the addon button in my toolbar (popup window briefly flashes). This corresponds to the first message below
    5. click the addon button again (window flashes again). This corresponds to the remaining messages below
    Loaded active tab (includeDesignations=false) 8 ms. popup-v2.js:1:392738
    sender.tab is undefined main.js:642
    [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMWindowUtils.removeSheetUsingURIString]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/ExtensionCommon.jsm :: runSafeSyncWithoutClone :: line 65"  data: no]
    Promise resolved after context unloaded
    utils.js:291
    Loaded active tab (includeDesignations=false) 13 ms. popup-v2.js:1:392738
    
    
  • Thanks for the logs!

    The sender.tab is undefined looks fishy, eh? I wonder, are you on a “special” page when this happens, like a home screen, empty tab, or Firefox specific page? Can you try a few different websites when opening the popup to see if it happens there?

    @kaitlyn, @nickmcguire: Does this log look familiar to you? If I remember correctly, you were both investigating a similar issue.

  • kaitlyn
    kaitlyn
    1Password Alumni

    I can't say I've seen this before, @dteare, but I would think that sender.tab is undefined has something to do with @alnx being on the about:debugging#addons page when they reproduced the issue. That being said, the active tab loads for me when I follow the exact same steps. I'm curious how this behaves on different pages, as Dave mentioned. Even checking out your logs after signing in on the 1Password web app just to see what "success" looks like may help point us in the right direction.

  • alnx
    alnx
    Community Member

    Ok, I tried a few more repros for normal pages (details below). @kaitlyn & @dteare.

    As you surmised the sender.tab message no longer appears. but otherwise the exception backtrace is very similar. However, the exception backtrace also appears when I don't see the issue ("Success" case below).

    Failure

    In each case, I repeated these steps:

    1. Open addon debugging window
    2. Sign in to 1Password via web interface
    3. Lock 1Password using extension window
    4. Delete any existing console message
    5. Navigate to page
    6. click on the addon button in my toolbar (popup window briefly flashes).

    https://discussions.agilebits.com/discussion/comment/519921 (this very page in fact):

    sender.tab is undefined main.js:642
    [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMWindowUtils.removeSheetUsingURIString]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/ExtensionCommon.jsm :: runSafeSyncWithoutClone :: line 65"  data: no]
    Promise resolved after context unloaded
    utils.js:291
    Loaded active tab (includeDesignations=false) 21 ms. popup-v2.js:1:392738
    

    https://duckduckgo.com/ - this time with console messages expanded

    sender.tab is undefined main.js:642
        onConnect moz-extension://84855eec-703f-4d25-a882-8e05bb0d80a8/background_scripts/main.js:642
        onConnect self-hosted:993
        <anonymous> moz-extension://84855eec-703f-4d25-a882-8e05bb0d80a8/background_scripts/main.js:110
        apply self-hosted:4702
        applySafeWithoutClone resource://gre/modules/ExtensionCommon.jsm:539
        asyncWithoutClone resource://gre/modules/ExtensionCommon.jsm:2251
    [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMWindowUtils.removeSheetUsingURIString]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/ExtensionCommon.jsm :: runSafeSyncWithoutClone :: line 65"  data: no]
        runSafeSyncWithoutClone resource://gre/modules/ExtensionCommon.jsm:65
        cleanup resource://gre/modules/ExtensionContent.jsm:353
        close resource://gre/modules/ExtensionContent.jsm:814
        destroyed resource://gre/modules/ExtensionContent.jsm:889
        observe resource://gre/modules/ExtensionContent.jsm:905
    Promise resolved after context unloaded
    utils.js:291
        monitorChromeStorage moz-extension://84855eec-703f-4d25-a882-8e05bb0d80a8/lib/utils.js:291
    Loaded active tab (includeDesignations=false) 18 ms. popup-v2.js:1:392738
    
    

    https://www.eff.org/

    Content Security Policy: Directive ‘child-src’ has been deprecated. Please use directive ‘worker-src’ to control workers, or directive ‘frame-src’ to control frames respectively.
    sender.tab is undefined main.js:642
    [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMWindowUtils.removeSheetUsingURIString]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/ExtensionCommon.jsm :: runSafeSyncWithoutClone :: line 65"  data: no]
    Promise resolved after context unloaded
    utils.js:291
    Loaded active tab (includeDesignations=false) 12 ms. popup-v2.js:1:392738
    
    

    Success

    In each case, I repeated these steps:

    1. Open addon debugging window
    2. Sign in to 1Password via web interface
    3. Delete any existing console message
    4. Navigate to page
    5. click on the addon button in my toolbar (popup window appears).

    https://duckduckgo.com/

    [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMWindowUtils.removeSheetUsingURIString]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/ExtensionCommon.jsm :: runSafeSyncWithoutClone :: line 65"  data: no]
    sender.tab is undefined main.js:642
    Promise resolved after context unloaded
    utils.js:291
    Loaded active tab (includeDesignations=false) 8 ms. popup-v2.js:1:392738
    Loaded active tab (includeDesignations=true) 113 ms. popup-v2.js:1:392738
    Loaded list items in 120 ms. popup-v2.js:1:391389
    Serialized list items in 2 ms. popup-v2.js:1:391453
    Filtered list items in 2 ms. popup-v2.js:1:280870
    

    https://gitlab.com/users/sign_in
    Here I additionally pressed the "Autofill" button after the popup window appears

    Loaded active tab (includeDesignations=false) 51 ms. popup-v2.js:1:392738
    sender.tab is undefined main.js:642
    [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMWindowUtils.removeSheetUsingURIString]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/ExtensionCommon.jsm :: runSafeSyncWithoutClone :: line 65"  data: no]
    Promise resolved after context unloaded
    utils.js:291
    Loaded list items in 160 ms. popup-v2.js:1:391389
    Serialized list items in 4 ms. popup-v2.js:1:391453
    Filtered list items in 3 ms. popup-v2.js:1:280870
    Unchecked lastError value: Error: Could not establish connection. Receiving end does not exist. background.js:31
    
  • kaitlyn
    kaitlyn
    1Password Alumni

    @alnx – I just wanted to give you a quick update to let you know that I've reached out to my team about the issue you're experiencing. I don't have an update quite yet, so bear with me for now. I'll reach back out as soon as I've got any news for you!

  • alnx
    alnx
    Community Member

    Hi @kaitlyn , a few more weeks have come and gone.

    Could you tell me what the team has found? If there's been no update, when do you expect one?
    It would be great to at least have a timeline of when this might be tackled.

    Thank you very much,

    Alexander

  • kaitlyn
    kaitlyn
    1Password Alumni

    @alnx – You're right, it's been a while now. Let me check back in with the team and see where we're at.

  • Hello @alnx,

    Thanks for following up. I recently had the chance to whip up a VM with the following configuration:

    • Fedora 30
    • Wayland + Gnome 3
    • Firefox 68
    • 1Password X 1.16.1

    And had no issues out of the box. The lock screen appears and remains open. Is there any chance you'd be able to update your OS? I'm not certain it matters, but it narrows down the list of possible issues. Please let me know.

    Cheers,
    Mitch

    1Password X Team

  • alnx
    alnx
    Community Member

    Hi @Mitch ,

    I haven't been able to upgrade to Fedora 30. However, I have dug into this a bit further. First of all, I need to recant my earlier statement: My Gnome is not using wayland but rather X11 (see below). This is due to the fact that we use the proprietary nvidia drivers and it appears that Fedora silently falls back to X11 if these are enabled.

    Second, I upgraded my Fedora 29 as far as I could and I can say is that this issue persists with

    • my fully upgraded Fedora 29
    • Firefox 70.0
    • 1PasswordX 1.16.2
    • Gnome 3.30.2 + X11

    I also tested with Firefox nightly (72.0a1) and a completely fresh profile. The issue persisted there, too.

    Could I please ask you to take another look at this issue which has been on-going for almost 4 months now? I would be grateful for any pointers even just to help me debug this further


    Logs showing session type

    $ loginctl show-session $(loginctl | grep $(whoami) | awk '{print $1}') -p Type
    Type=x11
    $ echo $XDG_SESSION_TYPE
    x11
    
    # Proprietary nvidia drivers are enabled (see nvidia-drm.modeset=1)
    $ cat /etc/default/grub 
    GRUB_CMDLINE_LINUX="rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rd.lvm.lv=vg_fedora/lv_root rd.lvm.lv=vg_fedora/lv_swap nomodeset rhgb quiet nouveau.modeset=0"
    
  • alnx
    alnx
    Community Member

    I have been able to fix / work around my issue (details below)! :)

    All I needed to do was remove Chinese Pinyin from my supported language options in GNOME

    (Settings->Region&Language->Input Sources).

    In brief, it does seem related to input methods, possible even the same issue as the one linked originally

    Details

    I am fairly sure that my system is currently using ibus:

    $ env | grep ibus
    QT_IM_MODULE=ibus
    XMODIFIERS=@im=ibus
    

    And my version of gnome-shell probably doesn't contain the fix from upstream gnome-shell. I say probably because while I'm not 100% sure what is included in the Fedora gnome-shell RPM,
    it doesn't look like it was patched by Fedora (see Fedora rpm source) and my version of gnome-shell (3.30.2) is not one of the ones marked as patched in the fix MR.

  • ag_yaron
    ag_yaron
    1Password Alumni

    Thanks for letting us know @alnx !
    Hopefully this will help other users who might encounter this. :)

This discussion has been closed.