Update egui to latest master
Related
What
I was curious how my work on egui menus and popups would work in rerun, so I gave it a try.
Findings so far
- ~The new tooltip positioning works well unless we scroll in the scroll area. Maybe we should intersect the widget rect with the clip rect.~ Fixed!
https://github.com/user-attachments/assets/54e7ffb1-f0a9-4f2d-8776-e0bea8777903
Web viewer built successfully. If applicable, you should also test it:
- [ ] I have tested the web viewer
| Result | Commit | Link | Manifest |
|---|---|---|---|
| ✅ | c0e5a14 | https://rerun.io/viewer/pr/9103 | +nightly +main |
Note: This comment is updated whenever you push a commit.
~This seems to break resizing of panels, probably an egui bug?~
Fixed!
Found a couple more egui bugs:
- https://github.com/emilk/egui/pull/5799
- https://github.com/emilk/egui/pull/5798
The image loader now being async makes tests that have images (so basically all rerun tests) flakey 🙁 Maybe Harness::run could somehow check if there are any in-progress images and automatically do the run_realtime thing (where it calls thread::sleep between each frame)?
Also, basically all snapshots containing text have changed. Seems like text is slightly less strong now. Wondering if this was caused by this? https://github.com/emilk/egui/pull/5824
Text rendering changed in
- https://github.com/emilk/egui/pull/5838
So it is expected that all screenshots with text changes.
The text should be more crisp and clear now though
The image loader now being async makes tests that have images (so basically all rerun tests) flakey 🙁 Maybe Harness::run could somehow check if there are any in-progress images and automatically do the run_realtime thing (where it calls thread::sleep between each frame)?
Or we disable the background loading in tests, somehow (making them blocking instead)
Or we disable the background loading in tests, somehow (making them blocking instead)
I guess that could work, but I think waiting-for-something-async is still something we need better support for.
~Now I'm running into https://github.com/emilk/egui/issues/6772 (some debug assert triggers when showing a button).~
~Fix is here: https://github.com/emilk/egui/pull/6900~
Fixed!
Or we disable the background loading in tests, somehow (making them blocking instead)
PR: https://github.com/emilk/egui/pull/6901
Clicking links in egui_commonmark is broken 😔:
https://github.com/user-attachments/assets/5f9eaba3-c20c-429b-93d0-2751ef95be23
Edit: Fix: https://github.com/emilk/egui/pull/6905
I've added snapshot_with_broken_pixels which takes a count of broken pixels, with the following benefits over snapshot_with_broken_pixels_threshold
- no need to calculate the num_pixels
- can directly use the
diffvalue from a failed ci job - if even a single pixel more changes in a future update the test is ensured to fail