Closed Bug 1740761 Opened 4 years ago Closed 4 years ago

Quick filter buttons (sender, body, ...) are missing - Uncaught TypeError: aState is null onCommand resource:///modules/QuickFilterManager.jsm

Categories

(Thunderbird :: Search, defect)

Thunderbird 91
defect

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: ruria, Unassigned)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4588.0 Safari/537.36

Steps to reproduce:

Open Thunderbird 91.3.0 in mac (but I reproduce it in previous versions too)
Show quick filter
Type my search in search box

Actual results:

Buttons like Sender, recipient, body, subject,... are missing.

In Console log, I see:

Uncaught TypeError: aState is null
onCommand resource:///modules/QuickFilterManager.jsm:1177
handler chrome://messenger/content/quickFilterBar.js:241
_fireCommand chrome://global/content/elements/search-textbox.js:227
QuickFilterManager.jsm:1177:9
onCommand resource:///modules/QuickFilterManager.jsm:1177
handler chrome://messenger/content/quickFilterBar.js:241
_fireCommand chrome://global/content/elements/search-textbox.js:227

Also after help > troubleshoot mode?

Flags: needinfo?(ruria)

Thanks for your time!

After restart in Troubleshoot mode, everything seems similar, I can see the same error in console log, and buttons are still missing.

Even after check "disable all add-ons" and "reset toolbar and controls", nothing changes.

Flags: needinfo?(ruria)
Component: Untriaged → Search
Summary: Quick filter buttons (sender, body, ...) are missing → Quick filter buttons (sender, body, ...) are missing - Uncaught TypeError: aState is null onCommand resource:///modules/QuickFilterManager.jsm

I suspect bug 1737486 played in...

Restarting in troubleshoot mode and checking "Reset toolbars and controls" did the trick now!
Thank you.

Status: UNCONFIRMED → RESOLVED
Closed: 4 years ago
Resolution: --- → INVALID

Hello, this is bugging me as well since a couple of weeks (before that, everything worked fine), on Ubuntu 18.04:
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0

Restarting in troubleshoot mode (thunderbird --safe-mode) and ticking the two boxes to reset toolbars and controls and disable all add-ons did not help. Toolbars and controls were reset, but the quick filter is broken in the same way as before. Add-ons were not disabled (probably due to 1737486), but disabling my only add-on also did not help. I tried different combinations of running thunderbird --safe-mode, ticking the boxes and either restarting immediately or continuing in safe mode.

The top part of the Quick Filter bar is currently either displayed permanently or hidden permanently, and does not react on the Quick Filter button. Whether it is displayed depends on whether the Quick Filter button was depressed the last time I closed Thunderbird. The bottom part (Sender, Recipient, etc.) is always hidden. The "Attachments", "Starred" filters always work, filtering by text never works.

When pressing the Quick Filter button, the UI does not change (except for the Quick Filter button becoming depressed), and the error console shows:

TypeError: aFilterValue is null
    reflectInDOM resource:///modules/QuickFilterManager.jsm:1240
    reflectFiltererState chrome://messenger/content/quickFilterBar.js:291
    _showFilterBar chrome://messenger/content/quickFilterBar.js:686
    doCommand chrome://messenger/content/quickFilterBar.js:572
    doCommand chrome://messenger/content/tabmail.js:565
    goDoCommand chrome://global/content/globalOverlay.js:101
    oncommand chrome://messenger/content/messenger.xhtml:1
tabmail.js:571:23
    doCommand chrome://messenger/content/tabmail.js:571
    goDoCommand chrome://global/content/globalOverlay.js:101
    oncommand chrome://messenger/content/messenger.xhtml:1

When unpressing (?) the Quick Filter button, the error console shows:

TypeError: aState is undefined
    clearState resource:///modules/QuickFilterManager.jsm:1108
    clearFilterValue resource:///modules/QuickFilterManager.jsm:509
    clearAllFilterValues resource:///modules/QuickFilterManager.jsm:527
    clear resource:///modules/QuickFilterManager.jsm:163
    _showFilterBar chrome://messenger/content/quickFilterBar.js:681
    doCommand chrome://messenger/content/quickFilterBar.js:572
    doCommand chrome://messenger/content/tabmail.js:565
    goDoCommand chrome://global/content/globalOverlay.js:101
    oncommand chrome://messenger/content/messenger.xhtml:1
tabmail.js:571:23
    doCommand chrome://messenger/content/tabmail.js:571
    goDoCommand chrome://global/content/globalOverlay.js:101
    oncommand chrome://messenger/content/messenger.xhtml:1

When entering some text (regardless of the state of the Quick Filter button), the error console shows:

Uncaught TypeError: aState is null
    onCommand resource:///modules/QuickFilterManager.jsm:1182
    handler chrome://messenger/content/quickFilterBar.js:244
    _fireCommand chrome://global/content/elements/search-textbox.js:231
QuickFilterManager.jsm:1182:9
    onCommand resource:///modules/QuickFilterManager.jsm:1182
    handler chrome://messenger/content/quickFilterBar.js:244
    _fireCommand chrome://global/content/elements/search-textbox.js:231

When switching to a different mail folder, the error console shows:

onLoadingFolder event listener FAILED; TypeError: aOld is undefined at: propagateState@resource:///modules/QuickFilterManager.jsm:1104:7
propagateValues@resource:///modules/QuickFilterManager.jsm:459:34
QuickFilterState@resource:///modules/QuickFilterManager.jsm:67:44
onLoadingFolder@chrome://messenger/content/quickFilterBar.js:137:41
_fireListeners@chrome://messenger/content/folderDisplay.js:77:32
onLoadingFolder@chrome://messenger/content/folderDisplay.js:1092:34
_prepareToLoadView@resource:///modules/DBViewWrapper.jsm:1048:19
open@resource:///modules/DBViewWrapper.jsm:805:12
show@chrome://messenger/content/folderDisplay.js:849:19
FolderPaneSelectionChange@chrome://messenger/content/commandglue.js:361:18
onselect@chrome://messenger/content/messenger.xhtml:1:1
MozTreeChildren/<@chrome://global/content/elements/tree.js:69:28
folderDisplay.js:79
    _fireListeners chrome://messenger/content/folderDisplay.js:79
    onLoadingFolder chrome://messenger/content/folderDisplay.js:1092
    _prepareToLoadView resource:///modules/DBViewWrapper.jsm:1048
    open resource:///modules/DBViewWrapper.jsm:805
    show chrome://messenger/content/folderDisplay.js:849
    FolderPaneSelectionChange chrome://messenger/content/commandglue.js:361
    onselect chrome://messenger/content/messenger.xhtml:1
    MozTreeChildren chrome://global/content/elements/tree.js:69

Behavior is the same regardless of in safe mode or normal mode.

I understand that I am on a rather old version of Thunderbird, but as it seems it is present in Thunderbird 91, this may still be relevant. Let me know if there is anything else I can try.

(In reply to Jan Schlüter from comment #5)

...
I understand that I am on a rather old version of Thunderbird, but as it seems it is present in Thunderbird 91, this may still be relevant.

Please post the full version number of 91 that was used.

Flags: needinfo?(bugzilla.mozilla)

Please post the full version number of 91 that was used.

Thanks for the swift reply. I was referring to the original post: ruria saw the same bug in Thunderbird 91.3.0 (with different line numbers in the error console). I currently cannot easily verify whether it is still present in the latest build. If this is a requirement for reopening, I will post back if I got a chance to test it.

Flags: needinfo?(bugzilla.mozilla)

Close Tb. Delete session.json. Or edit it carefully and remove the section with {quickFilter}.
It is certainly a bug that it is not handled cleanly.

91.4.1 shipped yesterday https://www.thunderbird.net/

@alta88: Wow, thank you so much! My session.json had: "ext":{"quickFilter":{"filterValues":{},"visible":true}}. With Thunderbird closed, I replaced that part with "ext":{}, started again and voilà, the quick filter functions as intended. Closing Thunderbird again, it wrote back "ext":{"quickFilter":{"filterValues":{"text":{"text":null,"states":{"sender":true,"recipients":true,"subject":true}}},"visible":false}}.

I think the "ext":{"quickFilter":{"filterValues":{},"visible":true}} snippet should also open up an easy way to try reproducing the bug on a current version (not the bug that produced my broken session.json, but at least the bug that restarting does not recover from it).

I confirm the same bug on Thunderbird 91.4.1/MacOS. Same error message in console, same behaviour.

Fixes:

  • deleting sessions.json seems to persistently fix the issue (even after TB restarts)
  • replacing the "ext": entry by "ext":{}" didn't work for me

I have the same issue on MacOS, tried rebuilding index, restart in troubleshoot mode, disabled all plugins, and just posted a question on superuser.com:

https://superuser.com/questions/1750614/thunderbird-on-macos-quickfilter-is-not-working

I am in troubleshoot mode right now and getting these:

https://i.imgur.com/PZEIaoh.png

Note that I have many accounts and emails.

After deleting:

sudo rm -rf ~/Library/Thunderbird/Profiles/myprofile...xyz.../session.json

it also seems to be working now.

Will see if error comes back.

You need to log in before you can comment on or make changes to this bug.