More performance improvements for TreeDataAdapter and AutoTreeView
Categories
(Thunderbird :: General, enhancement)
Tracking
(Not tracked)
People
(Reporter: darktrojan, Assigned: darktrojan)
References
(Blocks 1 open bug)
Details
(Keywords: perf)
Attachments
(3 external files)
I've made more gains in the speed of TreeDataAdapter and AutoTreeView.
| Assignee | ||
Comment 1•8 months ago
|
||
If we squash the hierarchy down to a flat list and (importantly) remember that list until it
changes, finding rows and calculating things is much faster.
| Assignee | ||
Comment 2•8 months ago
|
||
Every row in a tree view is going to have the same DOM, so we can create it once and clone it.
This is much faster than creating all of the elements every time a row needs updating. We do have
to take care that when we recycle rows we clear out the previous state.
| Assignee | ||
Updated•8 months ago
|
Pushed by brendan@thunderbird.net:
https://hg.mozilla.org/comm-central/rev/779cdace8b80
Cache a list of all visible rows in TreeDataAdapter. r=freaktechnik
https://hg.mozilla.org/comm-central/rev/cdede8e8d0b5
Create a fragment for AutoTreeView rows and only update what changes. r=freaktechnik
Comment 4•8 months ago
|
||
I'd assume the comm/mail/base/test/browser/widgets/browser_autoTreeView.js failures are from here.
https://treeherder.mozilla.org/jobs?repo=comm-central&selectedTaskRun=TVThxG1QTUeI_FCeMkHpHw.0
| Assignee | ||
Updated•8 months ago
|
| Assignee | ||
Comment 5•8 months ago
|
||
Instead of destroying the row cache and rebuilding it, we can just insert or remove the rows.
| Assignee | ||
Updated•8 months ago
|
Pushed by jtracey@thunderbird.net:
https://hg.mozilla.org/comm-central/rev/2e372ba07ab7
Modify row cache when expanding or collapsing a row. r=freaktechnik
Description
•