Clean up inventory filter flow
Reported by Jacek Antonelli | January 15th, 2009 @ 08:16 AM | in 1.1.0
The code structure and flow of the inventory filter system is utterly bizarre and backwards.
As a side effect of redrawing the "Show Filters" window each frame, it scans the values of all the checkmarks and recomputes the inventory filter, instead of using a callback when one of the checkmarks is changed. (Fortunately, the inventory filter backend is smart enough to do nothing if you try to set it to what it's already set to, or this would be a huge waste of CPU cycles, instead of just horrible programming.)
The offending code is in newview/llinventoryview.cpp, especially in LLInventoryViewFinder::draw().
I plan to kick its ass as soon as I can. There are surely other flow issues around the filter system, too.
Comments and changes to this ticket
-
Jacek Antonelli January 18th, 2009 @ 09:49 PM
- Milestone set to 1.1.0
- Tag set to bug, ui
- State changed from new to done
Fixed enough for now. It's still a bit wonky, how it half-uses the checkboxes to remember the filter state, but at least it's not recomputing the filter every frame anymore.
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป
Open source metaverse (Second Life) viewer with an emphasis on usability and bold changes.