View Issue Details
|0001658: Find an alternative way to filter soundfont instruments
In 0001650, the short-lived instrument filter for soundfonts (introduced in 0001566) had to be removed again: With lots of active tree view nodes, there is an issue with the tree view (at in Windows Vista and newer) that causes the complete program to freeze when deleting some expanded tree view nodes or when trying to programmatically expand some nodes. While the latter could have been avoided (leading to worse user experience), the former cannot be avoided as we have to remove nodes during filtering for obvious reasons.
Theoretically there is one more possibility: Forcing the tree view to use the older common controls version that doesn't produce the freeze (https://devblogs.microsoft.com/oldnewthing/?p=1043). The tree view would look different, and there might be other unknown side effects.
So the only proper solution might be to completely re-think how to filter soundfonts: Preferably this would happen outside of the tree view, independently from the instrument library filter. Maybe a new window would open, just showing soundfont search results.
|No tags attached.
|Has the bug occurred in previous versions?
|Tested code revision (in case you know it)
I have always thought of the present tree view as more functional than pretty, so I personally wouldnt be nostalgic for it if it were replaced by an older more stable form. I went to your link, but unfortunately there wasnt any screenshot of what those older trees look like or how they function compared to the one we use, but if it comes down to a simple case of aesthetics, I personally think it is worth the sacrifice. But obviously that would be something everyone would have to agree on - because now something like a search feature would be redesigning the look of ompt - even if it has always been a function rather than form part of ompt.
No, that variant froze as well. Any variant that preserves how soundfonts are currently represented in the treeview will induce this sort of freeze.