-
Notifications
You must be signed in to change notification settings - Fork 383
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Filter entities in the UI (part 2): Introduce entity filtering in the time panel #8654
Conversation
Web viewer built successfully. If applicable, you should also test it:
Note: This comment is updated whenever you push a commit. |
5553c9a
to
1a57030
Compare
e0fa976
to
96535ff
Compare
1a57030
to
d8d5ec4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm, get to have this in
Unfortunately makes an existing perf issue more prominent: We try to show the histogram for everything that's expanded and once there's a search we expand everything. We need to figure out how to disable the histogram showing code but this isn't an issue introduced here.
// Invalidate the filter widget if the store id has changed. | ||
if self.filter_state_store_id != Some(entity_db.store_id()) { | ||
self.filter_state = Default::default(); | ||
self.filter_state_store_id = Some(entity_db.store_id()); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This feels wrong: Can we keep the id on the RecordingConfig
so that we don't loose the filter when changing recording?
If a user wants to go back and forth between two similar recording this lack of state keeping can be very annoying.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well I added that precisely because I wanted to disable the filter upon recording change, because it was extremely annoying to have it. Now that you mention it, I see how it could be useful to have it.
My suggestion would be to use the app id instead. Makes sense to you?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh yeah that sounds great, then the filter sticks with the different recordings within the same app 💡
96535ff
to
9a0a88e
Compare
d73b490
to
7b01985
Compare
Co-authored-by: Andreas Reich <andreas@rerun.io>
cbda2d2
to
9b1d3db
Compare
Related
CustomContent
more useful #8645What
This PR introduces the filter widget to the time panel. In doing so, it deals with several shenanigans:
Note: the collapsed state being persisted, we are now accumulating collapsedness state for every single filter session in the persistant storage. This is not ideal, but addressing that would required rolling our own collapsed state, which would leak all over the place (list item and many of its users).
And of course the actual filtering logic must be implement. For now, the semantics are: "one of the entity part must contain the query string in its entirety". This is very (too) basic and will evolve in future PR (see #8586 (comment)).
streams_tree_filter.mp4
Next step
Major next steps: