Commit Graph

25 Commits

Author SHA1 Message Date
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
3fadb19121 refactor: preserve line data through box decoration 2026-09-06 14:00:59 +08:00
Kinneyzhang
3bd75f90c8 fix: preserve standalone layout and source ownership across updates
Expose detached committed snapshots and explicit canonical construction ownership. Preserve scoped publication and rollback, share Box decoration, and reuse completed Flex/Grid work only under proven constraints.
2026-09-06 10:45:47 +08:00
Kinneyzhang
826f195236 Use compressed persistent runtime indexes and retained node-id postorder 2026-09-05 12:05:08 +08:00
Kinneyzhang
f1f91468aa chore: freeze verified ebox baseline before C1b
Some checks are pending
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
12ce14d43a refactor: inject surface-free layout context for M2a E2
Some checks are pending
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
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
d0ffe112e6 refactor: restore the green typed layout baseline 2026-08-27 20:30:47 +08:00
Kinneyzhang
0c7e7b974a refactor: enforce canonical Text and Box runtime boundaries 2026-08-27 12:14:51 +08:00
Kinneyzhang
e5276d1cac feat: complete typed Normal Row and Column layout core 2026-08-26 21:33:32 +08:00
Kinneyzhang
4b409f16f4 feat: validate Box participation against final parent layout 2026-08-26 20:42:36 +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
fcfbeb0368 fix: restore immediate retained viewport updates 2026-08-26 00:09:53 +08:00
Kinneyzhang
175ae2ed4e fix: preserve intrinsic row sizing across containing blocks 2026-08-25 20:55:43 +08:00
Kinneyzhang
c591a9fcf4 perf: add native retained frame commits 2026-08-25 17:16:56 +08:00
Kinneyzhang
3fd63989e8 Complete retained Ebox publication and scrolling 2026-08-22 06:18:56 +08:00
Kinneyzhang
3dc0706af9 chore(ebox): checkpoint current implementation and docs 2026-08-11 20:43:40 +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
de6f56637b fix: measure full stack leaf width
Measure every rendered line when a column determines its natural width so a narrower first Grid line cannot cause later lines to overflow after stack padding.\n\nVerified with make check; core 545/545 and Grid 11/11 passed.
2026-08-05 12:01:36 +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