# OpenCADStudio - Unreleased (2026-10-11 to Present) > **Summary:** Overhaul of the workspace docking and layout system with Photoshop-style vertical icon rails and draggable tabs; deep hardening of block definitions against circular recursion and standard-compliant block explosion (`INSERT`/`MINSERT`); major Web/WASM platform parity wave including in-place saving via File System Access API, offline PWA support, and worker-routed operations; plus custom `.pat` and `.lin` pattern loading. --- ### 🌟 Notable Release Notes * **Modernized Docking & Workspace System:** Introduced Photoshop-style collapsible vertical icon rails for docked groups, 150ms auto-hide flyout behavior, draggable tab reordering, and independent floating windows for palettes (including a dedicated `LAYERS` manager). *(Contributed by [@posnofa](https://github.com/posnofa) and [@MarcelP102](https://github.com/MarcelP102))* * **Block System Hardening & Safe Explosion:** Complete overhaul of block references and definitions. Prevents circular/recursive block nesting crashes at both commit time and render time. Block explosions (`INSERT` and `MINSERT`) now delegate to `opencadcodec`, properly restoring transformed `ATTDEF` templates and handling rotated arrays with non-zero base points. *(Contributed by [@KarimJerbi](https://github.com/KarimJerbi))* * **Major Web / WASM Platform Wave:** In-place local file saving via the File System Access API, offline PWA support, automatic crash recovery (`restore-all`), clipboard image pasting, worker-threaded `WBLOCK` / `SAVEALL` / `ARCHIVE` tasks, and in-browser PDF plotting. *(Contributed by [@posnofa](https://github.com/posnofa), [@HakanSeven12](https://github.com/HakanSeven12), and Claude Opus 5.5)* * **Custom Resources & Compatibility:** Native support for loading custom user hatch patterns (`.pat`) and linetypes (`.lin`), custom view backgrounds (solid, gradient, and device-pixel scaled images), and strict DWG reader compliance fixes. *(Contributed by [@HakanSeven12](https://github.com/HakanSeven12) and [@ramox81](https://github.com/ramox81))* --- ### 🚀 New Features #### UI & Workspace * **Docking Panels & Icon Strips:** Added vertical icon rails for docked palette groups, per-edge auto-hide flyouts, customizable slot heights, and double-click float/dock toggles. *(Contributed by [@posnofa](https://github.com/posnofa))* * **Draggable Tabs & Groups:** Palette tabs can now be reordered by dragging; floating windows support grouped tabs. *(Contributed by [@posnofa](https://github.com/posnofa))* * **Layer Manager Palette:** Integrated `LAYERS` into the docking system as a native pallet. *(Contributed by [@posnofa](https://github.com/posnofa))* * **Graphic Attributes Palette:** Added toggles, controls for open boundaries, color swatches with `*VARIES*` indicator, and persistent docking layout. *(Contributed by [@MarcelP102](https://github.com/MarcelP102))* * **MATCHPROP Paintbrush Cursor:** While `MATCHPROP` is armed the CAD crosshair gives way to a monochrome paintbrush whose tip rides the pick point, echoing the AutoCAD "match properties" cursor. The glyph borrows the crosshair's own colour — including a user-customised one — so only the shape changes, never the ink. *(Contributed by [@Ch4rlos](https://github.com/Ch4rlos))* #### Selection & Drafting * **Advanced Selection Filter (`FILTER`):** Added comprehensive selection filtering with normalized logical operators and attribute filters (v2.2). *(Contributed by [@turbuczn](https://github.com/turbuczn))* * **Transparent Object Snap Overrides:** Introduced transparent object snap overrides within active drafting commands. *(Contributed by [@yztink](https://github.com/yztink))* * **Chamfer & Fillet No-Trim Mode:** Added support for preserving source entities during `CHAMFER` and `FILLET` (`TRIMMODE=0`). *(Contributed by [@YsDirector](https://github.com/YsDirector))* * **Line Tangency in Arcs:** Supported line tangency constraints during arc construction with improved trim contact precision. *(Contributed by [@yztink](https://github.com/yztink))* * **SVG Export:** Added native SVG export via `EXPORTSVG`. *(Contributed by [@posnofa](https://github.com/posnofa))* * **Custom Resource Loading:** Added direct loading for user `.pat` hatch pattern and `.lin` linetype files. *(Contributed by [@HakanSeven12](https://github.com/HakanSeven12))* #### Views & Layouts * **`-VIEW` Command Line Interface:** Added command-line view presets, orthographic UCS alignment, and window definitions. *(Contributed by [@ramox81](https://github.com/ramox81))* * **View Backgrounds:** Added support for solid, two-color linear gradient, and scaled/offset device-pixel raster backgrounds. *(Contributed by [@ramox81](https://github.com/ramox81))* * **Automatic Layout Viewport (`LAYOUTCREATEVIEWPORT`):** Automatically creates and enables an initial viewport upon first opening a layout tab. *(Contributed by [@ramox81](https://github.com/ramox81))* #### Web & Platform * **In-Place File System Access:** Native saving in browser via File System Access API. *(Contributed by [@posnofa](https://github.com/posnofa))* * **PWA & Offline Recovery:** Full offline PWA capabilities with deep linking (`?file=`) and session recovery (`restore-all`). *(Contributed by [@posnofa](https://github.com/posnofa))* * **Web Worker File Operations:** Offloaded `WBLOCK`, `SAVEALL`, and `ARCHIVE` transmittal generation to background web workers. *(Contributed by [@posnofa](https://github.com/posnofa))* * **3D Formats in Web:** Enabled STEP/STL export and OBJ import on web builds. *(Contributed by [@posnofa](https://github.com/posnofa))* * **In-Page Plot Preview:** Embedded PDF plot preview directly in-page on wasm32 with quality presets. *(Contributed by [@posnofa](https://github.com/posnofa))* #### Automation & MCP (Model Context Protocol) * **Canvas Pointer Event Replay:** Added pointer event replay on the canvas for automated test drivers. *(Contributed by [@HakanSeven12](https://github.com/HakanSeven12))* * **Dynamic Entity Schemas & Preflight:** Added on-demand entity creation schema inspection and side-effect-free preflight validation in MCP server (`006be890`, `97afb573`). *(Contributed by [@KarimJerbi](https://github.com/KarimJerbi))* * **MCP Batch Step Bindings & Summaries:** Added batch parameter bindings to earlier step results and batch summaries with read-only detail retrieval (`50030be8`, `7b68d274`). *(Contributed by [@KarimJerbi](https://github.com/KarimJerbi))* * **Specialist Guides & Schema Deduplication:** Served architectural and workflow specialist guides on demand and deduplicated operations with shared schemas (`8943a6fd`, `f4b33d5c`). *(Contributed by [@KarimJerbi](https://github.com/KarimJerbi))* * **Resource Links for Captures:** Returned dedicated resource URIs for reference-only image captures (`6ff8d8d7`). *(Contributed by [@KarimJerbi](https://github.com/KarimJerbi))* * **Spline Automation API:** Added spline creation and parameter serialization with strict knot/weight validation (`entities_create`). *(Contributed by [@YsDirector](https://github.com/YsDirector))* * **Selection Event Streaming:** Automation clients now receive real-time selection change notifications. *(Contributed by [@YsDirector](https://github.com/YsDirector))* * **Host API v8:** Added name-addressed `XRecord` CRUD operations on `HostApi`. *(Contributed by [@schoeller](https://github.com/schoeller))* #### Plugins * **Plugin-Declared Entity Class Labels (Host API v10):** Plugins can now give their XDATA-stamped entities human type names: the plugin stamps a stable class-identity key (e.g. `CVIFC-CLASS:LINE`) into entity XDATA and declares key → label mappings via the new `BuiltinPlugin::entity_classes()` manifest accessor; while the plugin is loaded, the Properties panel title and the records/automation `display_type` field show `