Kinneyzhang
2a64573d42
Complete retained layer update and packaging contracts
CI / test (29.1) (push) Waiting to run
CI / test (30.2) (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-09-10 03:00:05 +08:00
Kinneyzhang
4a25d573c2
Add retained layer layout: position/left/top/z-index/layer/anchor properties, new ebox-layer.el and ebox-composite.el, update docs and Makefile
CI / test (29.1) (push) Waiting to run
CI / test (30.2) (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-09-10 01:58:23 +08:00
Kinneyzhang
a8417d56c6
Prepare standalone distribution and harden clipping and interaction
2026-09-10 00:22:34 +08:00
Kinneyzhang
79f5bc23d1
feat: add CSS sizing and native text interaction capabilities
...
Normalize size units and intrinsic sizing across Elisp and native layout. Add help, pointer, hover-style and keymap support with reusable interaction adapters.
Keep content updates local, preserve scroll caches and hover borders, and avoid rebuilding retained plans and ownership metadata for stable geometry.
Validation: make check and native-rust-tests passed; targeted native interaction and scroll publication regressions passed.
2026-09-09 22:25:18 +08:00
Kinneyzhang
7c21185215
merge: integrate retained native input with current main fixes
...
Reconcile duplicated native ancestry against the verified equivalent base. Preserve current source ownership, scroll partition, allocated owner rendering, and later retained-state repairs while adapting their consumers and existing fixtures to persistent runtime indexes.
Validation: strict byte compilation of 28 source files, static syntax across 56 Lisp files, cargo check, and native release build passed. Regression suites and benchmarks were not run at the user's direction.
2026-09-08 21:42:21 +08:00
Kinneyzhang
7c0ddbe933
fix: restrict wheel scrolling to the hovered box
2026-09-06 21:45:45 +08:00
Kinneyzhang
3fadb19121
refactor: preserve line data through box decoration
2026-09-06 14:00:59 +08:00
Kinneyzhang
acb5afce82
perf: avoid unused vertical padding materialization
2026-09-06 13:25:47 +08:00
Kinneyzhang
727aba2ec7
Preserve native scroll continuity with explicit retained producers
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-09-05 17:26:13 +08:00
Kinneyzhang
73357dee94
fix: wait a fresh idle interval before predictive reflow
2026-09-05 16:09:24 +08:00
Kinneyzhang
826f195236
Use compressed persistent runtime indexes and retained node-id postorder
2026-09-05 12:05:08 +08:00
Kinneyzhang
32b4834322
refactor: publish framework changes through structured TP participants
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-09-05 05:25:29 +08:00
Kinneyzhang
f1f91468aa
chore: freeze verified ebox baseline before C1b
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-09-05 05:07:37 +08:00
Kinneyzhang
958132f604
feat: support framework Host teardown
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-09-01 01:07:23 +08:00
Kinneyzhang
b5e8b6d863
feat: publish Ebox SPI v2 provider for M2a E5
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-08-31 21:52:51 +08:00
Kinneyzhang
a19672a25e
refactor: add pure patch planner for M2a E3
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-08-31 20:57:54 +08:00
Kinneyzhang
12ce14d43a
refactor: inject surface-free layout context for M2a E2
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-08-31 20:37:08 +08:00
Kinneyzhang
e55798e0e9
refactor: classify Ebox retained state for M2a E1
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-08-31 20:11:16 +08:00
Kinneyzhang
722791a01e
refactor: unify canonical style and font projection
2026-08-28 22:06:30 +08:00
Kinneyzhang
cb0e1823d3
refactor: own author facts behind opaque source handles
2026-08-28 16:48:09 +08:00
Kinneyzhang
31046ad8c9
refactor: derive Ebox styles from immutable package schemas
2026-08-28 03:13:56 +08:00
Kinneyzhang
8b28f278bd
perf: expose correlated Ebox publication observation
2026-08-27 23:33:23 +08:00
Kinneyzhang
d0ffe112e6
refactor: restore the green typed layout baseline
2026-08-27 20:30:47 +08:00
Kinneyzhang
8861902b7e
fix: define native commands at the Ebox facade
CI / test (push) Waiting to run
CI / native-build (macos-latest) (push) Waiting to run
CI / native-build (ubuntu-latest) (push) Waiting to run
CI / native-build (windows-latest) (push) Waiting to run
CI / native-msrv (macos-latest) (push) Waiting to run
CI / native-msrv (ubuntu-latest) (push) Waiting to run
CI / native-msrv (windows-latest) (push) Waiting to run
2026-08-27 16:53:12 +08:00
Kinneyzhang
9f48b2f283
perf: eliminate cold-scroll flicker and GC stalls
2026-08-27 16:42:59 +08:00
Kinneyzhang
0c7e7b974a
refactor: enforce canonical Text and Box runtime boundaries
2026-08-27 12:14:51 +08:00
Kinneyzhang
6d9f2a4d82
refactor: make Grid placement a direct Box role
2026-08-26 20:49:07 +08:00
Kinneyzhang
31838e4e02
feat: drive default GridConfig through canonical Box
2026-08-26 19:32:46 +08:00
Kinneyzhang
e7dcb55d61
feat: drive default FlexConfig through canonical Box
2026-08-26 19:25:27 +08:00
Kinneyzhang
53001719c4
feat: retain Row and Column within canonical Box identity
2026-08-26 19:03:35 +08:00
Kinneyzhang
b530b0513c
feat: add typed Text and Normal Box property boundary
2026-08-26 18:41:59 +08:00
Kinneyzhang
fcfbeb0368
fix: restore immediate retained viewport updates
2026-08-26 00:09:53 +08:00
Kinneyzhang
d58ec51650
perf: coalesce viewport resize delivery
2026-08-25 22:45:13 +08:00
Kinneyzhang
b25328198c
perf: defer GC across interactive viewport rerenders
2026-08-25 17:42:01 +08:00
Kinneyzhang
c591a9fcf4
perf: add native retained frame commits
2026-08-25 17:16:56 +08:00
Kinneyzhang
dd731cfbbf
Optimize incremental mixed-owner rendering
2026-08-24 02:08:53 +08:00
Kinneyzhang
b65b5937cc
Fix retained Flex ownership and responsive viewport updates
2026-08-22 17:37:03 +08:00
Kinneyzhang
1edc6d5bb6
Fix interactive Ebox publication and viewport bounds
2026-08-22 08:21:08 +08:00
Kinneyzhang
3fd63989e8
Complete retained Ebox publication and scrolling
2026-08-22 06:18:56 +08:00
Kinneyzhang
972126e239
docs(ebox): align public API and usage references
2026-08-11 21:09:12 +08:00
Kinneyzhang
3dc0706af9
chore(ebox): checkpoint current implementation and docs
2026-08-11 20:43:40 +08:00
Kinneyzhang
654c824630
refactor(ebox): route retained updates through TP
...
Make TP the sole owner of live-buffer text-property publication, mount spans, scoped diff execution, and transaction rollback. Ebox now computes layout owners and retained surface plans, publishes handle/viewport/theme/scroll changes through TP, and keeps its mirrored runtime state transactionally consistent. Remove the former Ebox marker/index/patch executor instead of preserving a second mutation path.\n\nVerification:\n- make ci EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs\n- make package-lint-install EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs\n- strict byte compilation passed for 16 files\n- Ebox production has no tp-- private calls or marker writers\n- TP production has no Ebox dependency
2026-08-06 13:46:53 +08:00
Kinneyzhang
cdf841232a
refactor(ebox): publish roots through TP surfaces
...
Move ephemeral rendering, initial buffer mounts, declarative commits, and opaque handle updates onto retained TP surfaces while keeping Ebox layout planning and runtime indexes transactionally synchronized.
Verified with: make check EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs
2026-08-06 05:49:22 +08:00
Kinneyzhang
fad54d7fb1
feat(ebox): project layouts into TP surface plans
...
Assign retained TP identity before layout and emit pure, runtime-free surface plans with exact character and text-property equivalence. Keep live publication unchanged for the staged cutover and add focused surface, package, docs, and CI contracts.\n\nVerified: make check EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs\nVerified: WERROR byte compilation for all 16 active Lisp files\nVerified: focused ebox-surface checkdoc has zero warnings
2026-08-06 04:13:13 +08:00
Kinneyzhang
8a8e862098
feat(ebox): publish standalone low-level package
...
Split the verified renderer, layout engine, Grid support, native boundary, tests, examples, and paired documentation into the independent Ebox repository. Keep ETAF and application concerns outside this package.
2026-08-05 09:15:35 +08:00