egui
egui copied to clipboard
Tracking issue: Misc improvements to multi-viewports
Multi-viewports were implemented in https://github.com/emilk/egui/pull/3172, but there are several features missing that would make it a lot nicer, including (in no particular order):
- [ ] Fix buggy text: https://github.com/emilk/egui/issues/3664
- [ ] Fix texture management
- [ ] Make it easy to wrap child viewports in the same chrome as
crate::Window - [ ] Automatically show embedded viewports using
crate::Window - [x] Use the new
ViewportBuilderineframe::NativeOptions - [ ] Automatically position new viewport windows (they currently cover each other)
- [x] Add a
Contextmethod for listing all existing viewports - [ ] Simplify the code related to
Memory - [ ] Store viewport info (position, size, …) in egui memory
- [x] Add more info to
ViewportInfo - [x] Supply a
ViewportInfofor every viewport inRawInput - [ ] Support drag-dropping items between viewports
- [ ] Proper docking: https://github.com/rerun-io/egui_tiles/issues/30
- [ ] Support in eframe web
- …
Not sure if out of scope for this issue but one that I'm particularly interested in:
- Implement viewports for the web backed (should the app provide a
create_canvas_for_viewportcallback?)
My use case for this, btw, is improving performance of the Membrane extension by splitting the app into canvases that can be re-rendered independently.
That defiantly belongs here! We can break out smaller issues from this one as people start working on them