QoL: Make sidebar collapsible, resizable, movable, floatable and dockable (#2972)

* Add sidebar docking

* Fix sidebar initial size

* Fix sidebar collapse

* Hide floating sidebar when switch away from model view

* Add option to reset window layout

* Save & load window layout

* Fix a small issue with gcode toggle

* Properly save & restore sidebar state

* Show collapse icon based on sidebar docking state

* Adjust toolbar position based on docking position

* Fix return toolbar position

* Fix plate list position
This commit is contained in:
Noisyfox 2023-12-08 17:16:16 +08:00 committed by GitHub
parent 3d2ab8e2e2
commit 7cfa4f3bcd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 317 additions and 119 deletions

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
<g id="cross">
<g><line fill="none" stroke="#009688" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" x1="12" y1="1" x2="15" y2="4"/></g>
<g><line fill="none" stroke="#009688" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" x1="12" y1="7" x2="15" y2="4"/></g>
<g><line fill="none" stroke="#009688" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" x1="8" y1="1" x2="11" y2="4"/></g>
<g><line fill="none" stroke="#009688" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" x1="8" y1="7" x2="11" y2="4"/></g>
<g><line fill="none" stroke="#009688" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" x1="4" y1="9" x2="1" y2="12"/></g>
<g><line fill="none" stroke="#009688" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" x1="4" y1="15" x2="1" y2="12"/></g>
<g><line fill="none" stroke="#009688" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" x1="8" y1="9" x2="5" y2="12"/></g>
<g><line fill="none" stroke="#009688" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" x1="8" y1="15" x2="5" y2="12"/></g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB