Closed Bug 1820423 Opened 2 years ago Closed 1 years ago

Quick filter message list update voids subsequent keystrokes

Categories

(Thunderbird :: Mail Window Front End, defect, P2)

Thunderbird 112

Tracking

(thunderbird_esr102 unaffected, thunderbird115 fixed)

RESOLVED FIXED
116 Branch
Tracking Status
thunderbird_esr102 --- unaffected
thunderbird115 --- fixed

People

(Reporter: steve, Assigned: darktrojan)

References

(Blocks 1 open bug)

Details

(Keywords: regression, Whiteboard: [Supernova3p][STR comment #5 #16])

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0

Steps to reproduce:

Started typing into the quickfilter with Filter by sender active.
Each key press the list of results updates.

Actual results:

Key presses during the search refresh are ignored, so typing 'theo albert' may result in the search field 'to alert'

Expected results:

The keystroke are buffered so characters are not lost.

Whiteboard: Supernova
Component: Untriaged → Mail Window Front End
Whiteboard: Supernova → [Supernova]

This issue is resolved for me on openSuse in 112.0b2.

I used to see this, but can no longer reproduce it on:

113.0a1 (2023-03-20) (64-bit); MacOS Ventura 13.2.1

[edit: it returned, so is intermittent, at least for me]

See Also: → 1821626, 1823517
Duplicate of this bug: 1821626
See Also: 1821626

I still see this today with 113.0a1 build 20230321105728 ; macOS 10.13.6 ; Ram 4 Go

Confirming then.

Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: regression
Duplicate of this bug: 1823517

STR:

  1. While typing in quick filter bar, make a small pause, so Message list is refreshing. Then type again.
  2. Make a second small pause while typing

Actual results:

  • Key presses during the search refresh are ignored, so typing 'theo albert' may result in the search field 'to alert'
  • Every key pressed after the 1st pause is deleted as soon as the filtered results are shown in Message list
  • if you make 2 pauses, the keys pressed after 1st pause are ignored and the typing continues with the keys pressed after 2sd pause

This makes the quick filter totally unreliable.

Expected results:

  • Message list should stop refreshing and consider new input keystrokes to refresh again

Works okay in 102

Whiteboard: [Supernova] → [Supernova][STR comment#5]

It's back again this afternoon on 112.0b2

yup, for me too, yet the other day it was fine, so seems intermittent. Or I need more coffee.

Duplicate of this bug: 1826218
Severity: -- → S3
Priority: -- → P2

Do we know whether this also fails/failed with 111.0b1, i.e. the very start of supernova?

See Also: → 1827003

Now working fine in 113.0b1 for me.

Duplicate of this bug: 1826150

I still see it in 113.0b1 Linux

What linux, openSuse 15.4, KDE, X11 still has not faulted.

Duplicate of this bug: 1828664

Magnus, can you reproduce?

reproduces about 50% of time if I use backspaces.
pick a large folder.
type a common word that will be found
backspace 2-3 characters
type a couple more
backspace

at some point, some typed characters don't appear or some recently typed disappear.

Flags: needinfo?(steve)
Flags: needinfo?(mkmelin+mozilla)

With a struggle, I can partially reproduce the above, most frequently failing to catch the backspace key stroke before the next search character is typed. 113.0b2

Flags: needinfo?(steve)

I don't seem to be able to reproduce.

Flags: needinfo?(mkmelin+mozilla)

You may need a vary large mailbox with a lot of partial matches as you type and it scrolls. I still see it on 113.0b2 Ubuntu.

The degree of effect seems to change with the number of messages in the folder and the places selected to search (recipient/sender/subject/body).
113.0b2 freezes, or I haven't waited long enough, when I search in body requiring me to kill TB and while searching ignores keystrokes into the quickfilter. 102 still works fine. IMAP folders, no local synchronisation. Is there a setting telling Thunderbird to search on the server.

I also notice a difference between 102 and 113.0b2 running >ps aux | grep thunderbird. I have no idea if this means anything.
102 seems to have 2 instances of thunderbird-bin while 113.0 only has 1

In 102 the first instance of thunderbird-bin is created when TB loads. It loads with the message pane (in classic view) blank. The second instance of thunderbird-bin is created when the message pane is populated.

Whiteboard: [Supernova][STR comment#5] → [Supernova3p][STR comment#5]

The degree of effect seems to change with the number of messages in the folder and the places selected to search (recipient/sender/subject/body).

Like bug 1827003?

Any better with b4 or current daily?

Flags: needinfo?(steve)

I find that repeated alternating backspacing and typing is more effective at triggering this. But still not 100%

(In reply to Wayne Mery (:wsmwk) from comment #22)

The degree of effect seems to change with the number of messages in the folder and the places selected to search (recipient/sender/subject/body).

Like bug 1827003?

Any better with b4 or current daily?

Better, but still there in b5, can nearly get it 100% of the time. If you are a slow typer you may not notice it.
If you are a slow typer, hit 10 keys randomly counting as you go then see how many characters are in the filter. Entry level typing is about 50 words a minute, what's that, ~3 or 4 characters a second.

Flags: needinfo?(steve)

Also reproduces in vertical view. And yes, more prominent as folder gets larger. Performance profile https://share.firefox.dev/3HOcxST

Sean, does this intersect with the message list speed improvements you are looking at?

Flags: needinfo?(leftmostcat)
Whiteboard: [Supernova3p][STR comment#5] → [Supernova3p][STR comment #5 #16]

This looks to be separate. It's spending most of it's time in database code to create a view and run the search. Ideally, this wouldn't happen in the main thread since they look to be pretty long-running tasks.

Flags: needinfo?(leftmostcat)

Is the code trying to redisplay earlier contents of the quick filter field contents when it populates the filter results?

Flags: needinfo?(geoff)

The problem is we update all of the widgets to match the current state when the search finds something. This is a bit weird now that we're not sharing the quick filter bar across all tabs, but it's also necessary because that's how some things (like the list of tags) get told to appear, IIRC.

I think I can implement a cheap hack to prevent the text box value from changing if the update was caused by the text box value changing. What we really need is a rethink of how the bar works, which should happen with the global message database work.

Assignee: nobody → geoff
Status: NEW → ASSIGNED
Flags: needinfo?(geoff)

Pushed by geoff@darktrojan.net:
https://hg.mozilla.org/comm-central/rev/170c4d8fc5f1
Stop updating the QFB text field if it's active. r=freaktechnik

Status: ASSIGNED → RESOLVED
Closed: 1 years ago
Resolution: --- → FIXED
Target Milestone: --- → 116 Branch

Comment on attachment 9336698 [details]
Bug 1820423 - Stop updating the QFB text field if it's active. r=#thunderbird-reviewers

[Approval Request Comment]
User impact if declined: QFB eats keystrokes if the messages load while you're typing
Testing completed (on c-c, etc.): landed a week ago
Risk to taking this patch (and alternatives if risky): low

Attachment #9336698 - Flags: approval-comm-beta?

Comment on attachment 9336698 [details]
Bug 1820423 - Stop updating the QFB text field if it's active. r=#thunderbird-reviewers

[Triage Comment]
Approved for beta

Attachment #9336698 - Flags: approval-comm-beta? → approval-comm-beta+
Regressions: 1838520
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: