Naseq and Claude Opus 5.5
feecee0a30
Slide show tests: check the pending preview and the one-render gate directly ( #964 )
...
A harness runs frames until no repaint is asked for, so the preview had
already landed when its first assertion ran. One raw frame now shows the
preview pending and one render started, and the paging test pins a pending
job and checks a page turn starts no other render.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-27 18:13:44 +04:30
Naseq and Claude Opus 5.5
356195ba33
Slide show: render the Presenter View's next-slide preview off the UI thread ( #964 )
...
Turning the page with Presenter View on re-rendered the next-slide preview
synchronously, single-threaded, on the UI thread. The preview now renders
on a worker thread and arrives on a later frame; the web build (no
threads), or a worker that dies, renders it inline. At most one render runs:
paging faster than it asks for the newest preview once it is done, and a
finished one no longer wanted is dropped. Job and texture are keyed by the
presentation as well as the slide, so a preview rendered before an edit is
rendered again. While a preview is on its way the box stays empty rather
than saying "End of slide show".
Rebased onto the show module split: show/presenter.rs.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-27 17:53:57 +04:30
aiongg
ee875abffa
Merge pull request #1433 from aiongg/layout
...
refactor: shared module layout (craft-contrib#20)
2026-10-26 21:30:28 -04:00
skylar taylor-barrick
020e53e7a0
Merge pull request #1429 from storytold/fix/nextest-0.9.150
...
ci: require nextest 0.9.150
2026-10-26 17:35:27 -06:00
aiongg
12001d14e7
refactor(engine): split cmd/shape.rs into cmd/shape/{size,appearance,picture,freeform}.rs
2026-10-26 22:10:40 +00:00
aiongg
bbf7a8b8c7
docs: update source paths after the module layout moves
2026-10-26 22:08:44 +00:00
aiongg
96f0ac204e
test(engine): read past #[cfg(test)] imports in the file-system scan
2026-10-26 22:08:44 +00:00
aiongg
6b57773373
refactor(geom): split preset.rs into preset/{catalog,builder,build,shapes}.rs
2026-10-26 22:08:44 +00:00
aiongg
838d51ed59
refactor(text): split lib.rs into {run,style,autonum,shape,symbol,breaking,layout}.rs
2026-10-26 22:08:44 +00:00
aiongg
5b02b1744c
refactor(render): split lib.rs into {raster,opts,slide,renderer,geometry,stroke,text_draw}.rs
2026-10-26 22:08:44 +00:00
aiongg
8b456dce41
refactor(engine): split tools.rs into tools/{hit,pointer,drag,click,geometry}.rs
2026-10-26 22:08:44 +00:00
aiongg
15bf821535
refactor(engine): split cmd/text.rs into cmd/text/{ime,layout,editing,autocorrect,caret,formatting}.rs
2026-10-26 22:08:44 +00:00
aiongg
d7c06b53eb
refactor(engine): split cmd/smartart.rs into cmd/smartart/{nodes,paint,layout,diagrams,edit}.rs
2026-10-26 22:08:44 +00:00
aiongg
97b98767f1
refactor(engine): split cmd/insert.rs into cmd/insert/{picture,album,chart,text_fields,links}.rs
2026-10-26 22:08:44 +00:00
aiongg
d5180fbb70
refactor(engine): split cmd/format.rs into cmd/format/{font,text_effects,paragraph,painter,ruler}.rs
2026-10-26 22:08:44 +00:00
aiongg
9c222be711
refactor(engine): split cmd/design.rs into cmd/design/{colors,slide_background,slide_setup,master_view}.rs
2026-10-26 22:08:44 +00:00
aiongg
28371e27d7
refactor(ui-egui): split backstage.rs into backstage/{files,info,print}.rs
2026-10-26 22:08:44 +00:00
aiongg
4bdd5b5bee
refactor(ui-egui): split icons.rs into icons/{geometry,draw}.rs
2026-10-26 22:08:44 +00:00
aiongg
99688fe45a
refactor(ui-egui): split show.rs into show/{render,keys,ui,media,presenter,zoom}.rs
2026-10-26 22:08:44 +00:00
aiongg
ada66524a2
refactor(ui-egui): split panels.rs into one file per pane under panels/
2026-10-26 22:08:44 +00:00
aiongg
e84ba9def1
refactor(ui-egui): split ribbon.rs into one file per tab under ribbon/
2026-10-26 22:08:44 +00:00
aiongg
9545ff4d61
refactor(ui-egui): move the zoom, trim, about and alt-text test modules to their dialog files
2026-10-26 22:08:44 +00:00
aiongg
c8a6363a0f
refactor(ui-egui): split dialogs.rs into one file per dialog under dialogs/
2026-10-26 22:08:44 +00:00
aiongg
462310faed
refactor(ui-egui): split canvas.rs into canvas/{input,scroll,ime,media,rulers,guides,overlays,context_menu}.rs
2026-10-26 22:08:44 +00:00
aiongg
d428b4804a
refactor(ui-egui): move the backstage test files beside backstage.rs
2026-10-26 22:08:44 +00:00
aiongg
9ab4ed9581
refactor(ui-egui): move the sorter test files beside sorter.rs
2026-10-26 22:08:44 +00:00
aiongg
a094f37ed9
refactor(ui-egui): move the ribbon test files beside ribbon.rs
2026-10-26 22:08:44 +00:00
aiongg
742e660afd
refactor(ui-egui): move the dialogs test files beside dialogs.rs
2026-10-26 22:08:44 +00:00
aiongg
8338e21ecf
refactor(ui-egui): move the canvas test files beside canvas.rs
2026-10-26 22:08:44 +00:00
aiongg
7ab59a0cd3
refactor(ui-egui): move qat to ribbon/qat.rs
2026-10-26 22:08:44 +00:00
aiongg
a730e66757
refactor(ui-egui): move updates_ui to dialogs/updates_ui.rs
2026-10-26 22:08:44 +00:00
aiongg
ac3c3b7b2a
refactor(ui-egui): move credits to dialogs/credits.rs
2026-10-26 22:08:44 +00:00
aiongg
1368d06eeb
refactor(ui-egui): move squiggles to canvas/squiggles.rs
2026-10-26 22:08:44 +00:00
aiongg
af61c1cf3a
refactor(ui-egui): move preview to canvas/preview.rs
2026-10-26 22:08:44 +00:00
aiongg
099dfa7670
refactor(ui-egui): move the panels test files beside panels.rs
2026-10-26 22:08:44 +00:00
aiongg
d1022cdaa4
refactor(ui-egui): move animtimeline to panels/animtimeline.rs
2026-10-26 22:08:44 +00:00
aiongg
dcd06db2d3
refactor(ui-egui): move fillui to panels/fillui.rs
2026-10-26 22:08:44 +00:00
aiongg
82fb8e7680
refactor(ui-egui): move notes to panels/notes.rs
2026-10-26 22:08:44 +00:00
aiongg
59e4b272d8
refactor(ui-egui): move selpane to panels/selpane.rs
2026-10-26 22:08:44 +00:00
aiongg
62aa7aa437
refactor(ui-egui): move thumbs to panels/thumbs.rs
2026-10-26 22:08:44 +00:00
aiongg
af9b8c1adb
refactor(ui-egui): rename panes to panels
2026-10-26 22:08:44 +00:00
aiongg
d6026de7c2
refactor(ui-egui): move SlideApp method groups to app/{commands,files,ime,input,keys,playback,clipboard,frame,control}.rs
2026-10-26 22:08:44 +00:00
aiongg
d9199598e1
refactor(ui-egui): move SlideApp methods to app.rs and lib.rs types to services.rs, state.rs, clock.rs, ime_hooks.rs
2026-10-26 22:08:44 +00:00
aiongg
a2194407a1
refactor(media): move player tests to player/tests.rs
2026-10-26 22:08:44 +00:00
aiongg
b440c2ff40
refactor(geom): move preset tests to preset/tests.rs
2026-10-26 22:08:44 +00:00
aiongg
65a3ddc8f0
refactor(format): move lib.rs tests to tests.rs
2026-10-26 22:08:44 +00:00
aiongg
00eb5caad6
refactor(fonts): move lib.rs tests to tests.rs
2026-10-26 22:08:44 +00:00
aiongg
50feadc965
refactor(deckcraft): move control_server tests to control_server/tests.rs
2026-10-26 22:08:44 +00:00
aiongg
e9a7413c87
refactor(engine): move insert icon_and_picture_tests to cmd/insert/icon_and_picture_tests.rs
2026-10-26 22:08:44 +00:00
aiongg
b48467943b
refactor(engine): move design browse_theme_tests to cmd/design/browse_theme_tests.rs
2026-10-26 22:08:44 +00:00