Repository navigation
fix(ui): align editor appearance across all five bindings - #359
Conversation
ChristopherVR
left a comment
There was a problem hiding this comment.
The shared chrome/style ownership and five-binding coverage fit #342, but this head is not ready to merge. I reproduced the React 18 regression in an isolated checkout at a94934c: bunx vitest run --config vitest.react18.config.ts src/viewer/components/toolbar/FontPickers.test.tsx src/viewer/components/toolbar/RibbonCommandEffects.test.tsx gives 8 failed and 4 passed. Please use a native custom-element adapter for both font selectors and rerun the same tests under React 18 and React 19.
CI also fails the PR's new Vanilla decimal-size test at e2e/editor-first-screen-parity.spec.ts:173: the 40.5 value is clipped (decimal.clipped is true), repeated on both retries in job 109801531213. Please preserve the promised 64px field while allowing the decimal text to fit, and rerun that spec across all five bindings. Other failing e2e jobs include master/template workflows and ribbon customization; please triage them against main before requesting merge.
I am keeping the next Slide Show migration on current main for now. Its direct overlap with this PR is limited to the shared render barrel and React/Vanilla tests; Home chrome and the theme-editor move should stay owned by this PR. #364 records the theme-editor verification and will be reconciled after this lands. The migration tracker is #342, with #360-#365 as scoped work items.
a94934c to
6df72ea
Compare
|
Thanks, @ChristopherVR. I've updated both font selectors to use the native adapter and checked them under React 18 and 19. The decimal-size clipping is also fixed while keeping the 64px field. I've checked the master/template and ribbon issues against main and completed the regression checks across all five bindings. I've integrated your latest Slide Show and Help changes from main, and kept Home chrome and the Vanilla theme-editor move in this PR as discussed. We can reconcile #364 after this lands. |
|
Rechecked revision 6df72ea. The previous React 18 FontPickers blocker is addressed: both fields now use WebSelect's native property/listener lifecycle. The isolated React 18 FontPickers and Toolbar run passes all 148 tests, including fractional sizes, native changes and disabled transitions. Build, lint and typecheck CI have passed as well. I am keeping this open while the new CI failure is resolved. Angular shard 6/8 fails ribbon-animation-preview-parity.spec.ts:51 on all three attempts with The #363 Record batch and #365 subtitle settings continue on main without duplicating this PR's Home/editor-chrome work. |
834bf9a to
b8adb5e
Compare
Share editor metrics, Home icons, controls and thumbnail spacing across React, Vue, Angular, Svelte and Vanilla. Use the shared font selectors with native React 18 lifecycle wiring and keep decimal sizes visible. Dock the Vanilla theme editor in the React position and cover visual parity, scaled table selection and current fixture layouts in tests.
b8adb5e to
39d0943
Compare
|
Thanks, @ChristopherVR. The remaining issues are addressed in I've also resolved the conflicts with current main, completed the subtitle translations and generated customization reference, and updated the Record localization tests for the Web Components. Everything remains in one commit, and the font-selector thread is marked resolved. Ready for another review when you have time. |
Summary
Unify the uploaded-deck editor appearance across React, Vue, Angular, Svelte and Vanilla, using React as the reference. This continues #342 after the upload landing changes in #354.
pptx-viewer-shared.pptx-ui-selectfor both font fields in all five bindings, with 120px family and 64px size widths and the agreed 12px/18px typography.Review repairs
40.5remains visible within the fixed 64px field. The five-binding first-screen checks assert no clipping or adjacent-control movement.a1549a09, retaining its Slide Show, Help, Record and Subtitle Settings migrations. Update the affected SSR and Angular translation test harnesses, React Help/boolean-attribute assertions, and write-back mock isolation. Wait for controlled checkbox state to be committed before checking the saved deck, and measure visible ribbon groups.accessibility.subtitleLanguage. Existing dictionary and documentation completeness assertions are retained.Verification after the latest upstream integration
bun run buildandbun run typecheck; React 18 type checking.Earlier verification of the PR changes
git diff --check.Local checks use macOS and Node 24.19; hosted CI uses Ubuntu and Node 22. The React 18 local coverage run is serial. Browser checks use the existing contributor services with
webServer: [].Commit organization
All five bindings, shared UI, related tests and design notes are in one Conventional Commit, authored and committed as Euan Zhu.