rerun-io / egui_tiles

A tiling layout engine for egui with drag-and-drop and resizing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Docking of tiles

emilk opened this issue · comments

egui recently got support for multi-viewports (many native windows).

I'd like to be able to drag out a tile from the root egui viewport, spawning a new viewport containing that tile. That is, something like how browser tabs can be detached from their parent window into their own windows, and then dragged back into the parent window again.

For this to work well we should support:

  • Dragging out a tile into a new viewport
  • Dragging one viewport onto another viewport, merging the two
  • Dragging tiles between viewports

Detecting that one viewport is being dragged onto another is complicated without:

Perhaps a bit off topic, but one important thing to consider here is how this should work on tiling window managers. I daily drive Hyprland, and as an example, Chrome's tab moving feature is actually incredibly broken. I'd like to see a solution that works better. I'm not sure how exactly that solution would be implemented, however.