openpencil/tests/engine
Danila Poyarkov 7a02ee2c62
feat(editor): model split canvas panes (#519)
* refactor(editor): separate canvas view state

- Classify shared and view-local editor state explicitly

- Let canvas surfaces render supplied view state and report their viewport

- Preserve the existing one-canvas behavior by default

* fix(canvas): preserve loading render state

* feat(editor): model split canvas panes

- Add pure recursive split-tree operations with validated sizes

- Add explicit pane registry and independent view-state cloning

- Cap visible panes and cover close and split behavior

* refactor(editor): group state ownership modules

- Move shared and view state into the editor state namespace

- Model the partition with explicit interfaces and default factories

- Derive runtime view keys from the default view object

* feat(editor): model split canvas panes

- Add pure recursive split-tree operations with validated sizes

- Add explicit pane registry and independent view-state cloning

- Cap visible panes and cover close and split behavior

* feat(editor): add split canvas views

- Render recursive pane layouts with Reka UI splitters and pane-local headers
- Route canvas input, selection, viewport state, and close actions to the active pane
- Repaint every canvas during shared document previews and cover split lifecycle in tests

* fix(editor): clean up inactive pane interactions

- Cancel drag, padding preview, and text editing state when pane focus changes
- Remove duplicate changelog entries introduced while updating master
2026-08-15 10:31:52 +03:00
..
acp chore: enable stricter oxlint rules 2026-05-18 18:58:30 +03:00
app feat(editor): model split canvas panes (#519) 2026-08-15 10:31:52 +03:00
bytes refactor(core): centralize Base64 encoding 2026-07-28 08:27:22 +03:00
cli refactor: standardize acronym casing 2026-08-10 15:48:16 +03:00
clipboard fix(clipboard): preserve pasted instance links 2026-08-12 20:08:06 +03:00
collab fix(collab): validate synchronized node data (#517) 2026-08-14 20:38:46 +03:00
color feat(vue): consolidate color model 2026-07-13 21:48:36 +03:00
dom-css fix(fig): restore strict parse validation 2026-07-18 03:58:18 +03:00
editor fix(editor): place nested component instances in world space (#524) 2026-08-14 21:24:20 +03:00
figma/api fix(figma-api): implement layout compatibility gaps 2026-08-12 18:50:25 +03:00
geometry fix(fig): restore strict parse validation 2026-07-18 03:58:18 +03:00
hit-test
icons fix(core): preserve inline SVG primitives (#485) 2026-08-12 16:02:45 +03:00
io feat: add Figma-style variants and component libraries (#512) 2026-08-14 19:31:41 +03:00
kiwi fix(fig): preserve regenerated override lineage 2026-07-21 01:51:27 +03:00
layout fix(tauri): prevent Windows font loading crashes (#497) 2026-08-12 20:09:04 +03:00
library feat: add Figma-style variants and component libraries (#512) 2026-08-14 19:31:41 +03:00
lint
mcp fix(mcp): close orphaned servers after app disconnects (#494) 2026-08-12 18:44:31 +03:00
pen refactor(fig): own instance interpretation 2026-07-18 02:06:34 +03:00
profiler chore: format codebase 2026-05-24 12:15:29 +03:00
random
render feat(code): add live JSX and HTML/CSS editing (#525) 2026-08-15 09:48:42 +03:00
scene-graph feat(canvas): measure distances between layers (#515) 2026-08-14 18:18:55 +03:00
snap
tauri fix(tauri): preserve HTTP timeout and response semantics 2026-08-13 20:33:10 +03:00
text feat(text): surface missing font substitutions 2026-08-13 18:33:10 +03:00
tools feat: add Figma-style variants and component libraries (#512) 2026-08-14 19:31:41 +03:00
vector fix(vector): preserve open segments with regions (#496) 2026-08-12 19:28:37 +03:00
vue feat(editor): model split canvas panes (#519) 2026-08-15 10:31:52 +03:00
perf.bench.ts feat: split SceneGraph and Pen packages 2026-06-30 10:54:32 +03:00