Initial experiments with "Docking" for JavaFX.
Eventually turned into core.ui.docking
package of
https://github.com/ControlSystemStudio/phoebus
Goal is very basic support for "Tabs" similar to a web browser:
Initially looked at the following:
Libraries 3. to 4. add more than the basic requirements, but may not work on Linux depending on your window manager. 5. requires OSGi.
With either Java 8 or Java 9, run as
ant demo1
Demonstrates the problem on Linux.
When starting to 'drag' an existing tab, many libraries open a new Stage
which is meant to be dragged, but that stage takes the focus from the original tab. The result on Linux is an abandoned Stage.
In this demo, starting to drag a tab opens a new stage to represent the outline of what's dragged. That new stage takes the focus, so one needs to try dragging the same tab again(!) to move the stage. Not further developed.
With either Java 8 or Java 9, run as
ant demo2
Tabs can be rearranged via drag-and-drop. Context menu of tab allows de-taching tab into a new window. Tabs can then be dragged between that new window and existing windows.