Panels is a flutter package that aims to provide a set of useful desktop UI panels that can move around, dock and tab like we expect in more robust desktop applications.
xCorrect Mosue Cursor
xTabs in Panels
xCustomizable close button
xCustomizable context menu
Under the hood
There are 10 Mouse Regions and listeners (All sides and corners + The big one in the middle + the draggable) that change the look of the mouse according to their function. Windows can be clicked on in any of these regions to become selected (put on top).
There is an InheritedWidget called
Panels which is created by a StatefulWidget called
The children of the panels manager are put into a stack. To add Panels/Windows one can simply do
Panels.of(context).addPanel(widget: Widget, title: "Title of Panel"); to create one from any Widget from anywhere in a context that is a decendant of the
Please see the
examples directory for an example.