Skip to content
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

Visible History: properly handle case where the timeline starting time is large (e.g. log_time) #4210

Closed
abey79 opened this issue Nov 13, 2023 · 0 comments · Fixed by #4222
Closed
Assignees
Labels
🪳 bug Something isn't working ui concerns graphical user interface
Milestone

Comments

@abey79
Copy link
Member

abey79 commented Nov 13, 2023

In such case, the "Absolute" setting both needs a large value and fine tuned control (based on the timeline logged data time span). Typically, the log_time timeline has a large start time (e.g. "now"), and a tiny time span (logging stuff is fast). This requires proper UI treatment.

image
@abey79 abey79 added 🪳 bug Something isn't working ui concerns graphical user interface labels Nov 13, 2023
@abey79 abey79 changed the title Visible History: properly handle case where the timeline starting time is "large" (e.g. log_time) Visible History: properly handle case where the timeline starting time is large (e.g. log_time) Nov 13, 2023
@abey79 abey79 self-assigned this Nov 13, 2023
@abey79 abey79 added this to the 0.11 C++ polish milestone Nov 13, 2023
jleibs pushed a commit that referenced this issue Nov 16, 2023
### What

Update the Visible History UI:
- It now shows up in its own collapsible section in the Selection Panel.
- It makes it more clear that the item is either inheriting or
overriding the settings.
- When inheriting, the inherited settings are displayed.
- When overriding, the editor as a more intuitive UI (fixes #4190)
- The editor also addresses a bug for timeline with large values (e.g.
actual dates) but small spans, like `log_time` (fixes #4210)
- The test script now has a whole lot of timelines with all sorts of
spans and offsets, for test purposes.

Side effects on the code base:
- slight tweak on the querying (latest at is used whenever visible time
range boundaries resolve to the same absolute time)
- added `individual_properties` to `DataResult`, to allow UI to
display/edit it
- added support to erase property overrides in
`DataResult::save_override`
- added a new collapsing header widget in re_ui, to match our style

Playground RRD:
[test_visible_history.rrd.zip](https://github.com/rerun-io/rerun/files/13348321/test_visible_history.rrd.zip)
(same as the output of
`tests/python/visible_history_playground/main.py`).

### Screenshots

New "Visible Time Range" UI in the blueprint section:

<img width="429" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/c215560f-7679-442a-afe9-561d6cae6285">

When Override is selected:

<img width="379" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/f9b1651f-0d29-4085-952b-3f55b0c3c469">

When operating on "large" time (e.g. `log_time`):

<img width="393" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/67f69dd9-1e90-4d04-9c8b-5fe2696c92bc">

Same when using the Default/Inherited value:

<img width="378" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/ffbfa49a-54bb-472b-be47-25a800d4f771">

<br/>
<br/>
<details><summary>Older screenshots which aged like milk, for
posterity.</summary>

On (supported) space views, the choice is "Default vs. Override":

<img width="336" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/69ab4063-cd79-4c56-a01a-9bf54d74070a">

On groups and entities, the choice is "Inherited vs. Override":

<img width="343" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/3911c456-97b1-48ed-aa69-9cbb3cf92611">

On timeseries space views, the default reflects the fact that the
default behaviour is, in fact, different from 2D/3D space views

<img width="345" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/35692f66-dcb3-419b-8246-2823d802c39b">

When overriding, the text becomes "editable":

<img width="338" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/641758ec-2762-4c13-b87f-de1cec144ea0">

Same, when inherited:

<img width="313" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/52272daa-d215-40e4-8f7d-2caeea522434">

With timelines with "large" times, an offset is extracted and explicitly
displayed, while the unit in the time editor adapts to the actual span:

<img width="405" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/dfa887d5-aa6c-49aa-be1c-704045788422">

Same inherited:

<img width="438" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/ea748355-5293-422a-8f25-6092529b6452">

</details>

### Checklist
* [x] I have read and agree to [Contributor
Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and
the [Code of
Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md)
* [x] I've included a screenshot or gif (if applicable)
* [x] I have tested [demo.rerun.io](https://demo.rerun.io/pr/4222) (if
applicable)
* [x] The PR title and labels are set such as to maximize their
usefulness for the next release's CHANGELOG

- [PR Build Summary](https://build.rerun.io/pr/4222)
- [Docs
preview](https://rerun.io/preview/69df7cdce2fa9c3899b2b04aa2bf487807485c02/docs)
<!--DOCS-PREVIEW-->
- [Examples
preview](https://rerun.io/preview/69df7cdce2fa9c3899b2b04aa2bf487807485c02/examples)
<!--EXAMPLES-PREVIEW-->
- [Recent benchmark results](https://ref.rerun.io/dev/bench/)
- [Wasm size tracking](https://ref.rerun.io/dev/sizes/)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🪳 bug Something isn't working ui concerns graphical user interface
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant