htmlewislulu-html-ppt-skill/templates/full-decks
lewis b64ce0f832 perf(presenter): smooth navigation via postMessage (no reload, no flicker)
Problem: Switching slides reset iframe.src each time, causing visible
flicker (white flash → load → render) on every navigation.

Solution: load each preview iframe ONCE, then use postMessage for all
subsequent slide changes. The iframe stays mounted; only .is-active
class toggles between slides inside it.

Changes:
- runtime.js preview mode: now exposes a showSlide() function and
  listens for window.message events of type 'preview-goto'. Also
  posts 'preview-ready' to parent on init so the presenter window
  knows when each iframe is loaded.
- presenter window: tracks iframeReady state per iframe; first frame
  renders via iframe.src = ?preview=N (one-time), all subsequent
  navigation goes through postPreviewGoto() → postMessage. Notes,
  meta, and timer update directly without touching iframes.
- Init no longer calls update(idx) which used to reset iframe.src;
  instead inits notes/meta/count once and lets the load→ready flow
  populate previews.

Docs synced to match new architecture:
- SKILL.md: describes 4 magnetic cards, draggable/resizable, with
  the iframe ?preview=N pattern explained for AI consumers
- references/presenter-mode.md: updated ASCII diagram to show 4
  cards, removed old 58%/35% layout description, added explanation
  for why previews are pixel-perfect (iframe loads same HTML) and
  why navigation is flicker-free (postMessage, not reload)
- presenter-mode-reveal README: updated 4-card description
2026-04-17 23:27:05 +08:00
..
course-module fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
dir-key-nav-minimal fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
graphify-dark-graph fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
hermes-cyber-terminal fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
knowledge-arch-blueprint fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
obsidian-claude-gradient fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
pitch-deck fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
presenter-mode-reveal perf(presenter): smooth navigation via postMessage (no reload, no flicker) 2026-04-17 23:27:05 +08:00
product-launch fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
tech-sharing fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
testing-safety-alert fix: resolve DANGEROUS scan warnings on install 2026-04-17 21:47:11 +08:00
weekly-report fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
xhs-pastel-card fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
xhs-post fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00
xhs-white-editorial fix: v2 — iframe theme isolation, 8 full-deck templates from source decks, 20 FX animations (particles/graph/fireworks), +12 themes 2026-04-15 16:29:08 +08:00