Dockable panels allow players to arrange windows in your game however they want. Panels can be moved around, resized, and docked to any of the four sides of a canvas.
Check out the WebGL demo to see it in action!
When docking a panel, it will remember its original size so it can restore it correctly when it's undocked. Docked panels behave correctly even when multiple panels are docked at the same time (they won't overlap the corners.) They also intelligently re-size themselves when their neighbor is undocked or the game's screen size changes.
You can customize the minimum size of each panel, which will be obeyed both when resizing and when docking. You can also disable/enable docking, resizing, and moving ability of each panel individually.
This component works on all platforms, and it's created to be very reliable and high quality. It's completely open source, and pure C#. Please e-mail if you have any questions!