Skip to content

fix(ppt-live): inherit model and preserve PDF text - #2121

Merged
bobleer merged 1 commit into
GCWing:mainfrom
bobleer:bob/fix-ppt-live-controls-pdf
Aug 6, 2026
Merged

fix(ppt-live): inherit model and preserve PDF text#2121
bobleer merged 1 commit into
GCWing:mainfrom
bobleer:bob/fix-ppt-live-controls-pdf

Conversation

@bobleer

@bobleer bobleer commented Aug 6, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Remove PPT Live's duplicate model selector and raw AI model-catalog permission.
  • Keep agent-backed MiniApp sessions synchronized with model and reasoning choices made in the shared floating ChatInput.
  • Prefix cached export HTML with a UTF-8 BOM so hidden WebViews decode non-ASCII slide text correctly for PDF and PNG output.

Fixes: N/A

Type and Areas

Type: bug fix, regression fix, UI/UX, test

Areas: PPT Live built-in MiniApp, web UI chat model selection, desktop/Tauri export host

Motivation / Impact

PPT Live now has one model-selection surface: the shared floating chat input used to submit generation requests. Existing saved decks no longer restore a stale MiniApp-owned model preference, and the hidden agent session receives model and reasoning changes from that shared selector.

PDF export no longer relies on charset sniffing for sanitized full-document slide HTML, preventing Chinese and other non-ASCII text from becoming mojibake.

Verification

  • pnpm run test:ppt-live — 194 passed
  • pnpm --dir src/web-ui run test:run src/flow_chat/components/ModelSelectorExternal.test.tsx — 7 passed
  • pnpm run type-check:web — passed
  • pnpm --dir src/web-ui exec eslint src/flow_chat/components/ModelSelector.tsx src/flow_chat/utils/modelSelectionTarget.ts — passed
  • pnpm run check:repo-hygiene — passed
  • cargo test -p bitfun-product-domains --features miniapp ppt_live_bundle_uses_bitfun_host_capabilities — passed
  • cargo check -p bitfun-desktop — passed
  • cargo test -p bitfun-desktop — 281 passed, 2 ignored
  • Manual PDF render QA: a BOM-prefixed full HTML document without a charset meta tag rendered Chinese and café correctly; Poppler text extraction and page rendering both confirmed the output.

Reviewer Notes

  • The UTF-8 marker is added at the desktop export-file boundary, after sanitization, so the sanitizer's meta-tag policy remains unchanged.
  • The same hidden WebView path serves PDF and PNG slide rendering; both now receive unambiguous UTF-8 input.
  • AI-assisted; fully tested.

Checklist

  • This PR is focused and does not include secrets, temporary prompts, generated scratch files, or unrelated artifacts.
  • Relevant verification is recorded above, or skipped checks are explained.
  • User-facing strings, docs, and locales are updated where applicable.

@bobleer
bobleer merged commit 758c567 into GCWing:main Aug 6, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant