Selecting a message from a collapsed thread summary does not scroll the message list to it
Categories
(Thunderbird :: Folder and Message Lists, defect)
Tracking
(thunderbird_esr153 affected, thunderbird158 wontfix, thunderbird159 wontfix, thunderbird160 wontfix, thunderbird161 affected)
People
(Reporter: welpy-cw, Assigned: welpy-cw)
Details
Attachments
(1 external file)
Steps to reproduce:
- Enable threaded view and show the message pane.
- Collapse a thread with enough messages that its later children would be below the visible area when expanded.
- Select the collapsed thread to display its multi-message summary.
- Click the author name of a later child message in the summary.
Actual result:
The thread expands in the message list. The clicked child is selected and displayed in the message pane, but the message list keeps its previous scroll position, leaving the selected child out of view.
Expected result:
The selected child should become the current row and scroll into view in the message list.
Related behavior:
When two collapsed threads are selected, clicking one thread in the multi-message summary selects its messages, but leaves the current index at the last supplied child rather than the thread root. The current row marker can also be absent when that row has not been rendered.
Investigation and fix:
The summary selection handler in mail/base/content/about3Pane.js assigns threadTree.selectedIndices. This updates the internal current index through TreeSelection.toggleSelect(), bypassing the TreeView.currentIndex setter that scrolls the current row into view.
Setting threadTree.currentIndex = threadTree.selectedIndex immediately after assigning the selected indices fixes the scrolling problem and explicitly makes the first selected row current while preserving the full selection.
Regression tests in mail/base/test/browser/browser_multiMessageView.js cover selecting either of two summarized threads and selecting an offscreen child of an 80-message thread. The tests fail without the fix and pass with it. The complete test file passes headlessly, and lint passes.
| Assignee | ||
Comment 1•20 days ago
|
||
Make the first selected row current after a summary click so the marker
and scroll position follow the selection, and focus the resulting reader
or summary. Clarify selection event names and payload documentation.
Cover thread selection, offscreen children, and focus with regression tests.
Updated•20 days ago
|
| Assignee | ||
Updated•18 days ago
|
Pushed by mkmelin@iki.fi:
https://hg.mozilla.org/comm-central/rev/049a1568dc56
Scroll messages selected from the multi-message summary into view. r=mkmelin
Description
•