Commit Graph
4040 Commits
Author SHA1 Message Date
insideTheFluxandClaude Opus 5.5 c0f4f54e7f LR-CROP-RECT: the crop's source size is counted in the turned photo (#2555)
`source_edge_needed` bounds the crop in the photo as shown (turned by its orientation), but counted
the rect's pixels with the unturned width and height. On a photo turned a quarter, a crop whose
aspect differs from the photo's then asked for too small a source: a square crop of a 3:2 photo
shown 2000 px long needs the full-size source, and got the 2560 px preview. It now counts them with
the turned size. The two tests that pinned the old count use the turned size too, and one checks
that square crop. Found by CodeRabbit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CvoftLURuf4uBmSatewB6V
2026-10-27 21:00:50 -07:00
insideTheFluxandClaude Opus 5.5 f860577c51 LR-CROP-RECT: the source level is sized from the bounded crop (#2555)
source_edge_needed read the turned crop's rect unbounded, so a crop
reaching far past the photo (from a sidecar or an agent) picked the
512 px thumbnail for a frame the render bounds to photo size, and the
view was stretched from it. It now bounds the crop as Frame does, in the
photo's oriented frame; crops on the photo keep their source level.
Found by CodeRabbit on #2623.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CvoftPiKeZ3QkVHvA5LmR6
2026-10-26 23:44:50 -07:00
insideTheFluxandClaude Opus 5.5 45e52e7409 Merge storytold/main into fix/2555-sidecar-settings-range
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GfjNkJiMUagz3DN3zoV2rV
2026-10-26 18:42:11 -07:00
aiongg c9860ea7a3 Merge pull request #3103 from aiongg/layout
refactor: shared module layout (craft-contrib#20)
2026-10-26 21:31:21 -04:00
aiongg 259208948b test: the format-message scan skips only inline test modules 2026-10-26 21:51:51 +00:00
aiongg 69048937d0 docs: update source paths after the layout moves 2026-10-26 21:39:56 +00:00
aiongg 26760e44d2 refactor(lightcraft-ui-egui): split app.rs into app/ 2026-10-26 21:39:56 +00:00
aiongg cb2a922383 refactor(lightcraft-ui-egui): split lib.rs into crate-root modules 2026-10-26 21:39:56 +00:00
aiongg 20c26b83c8 refactor(lightcraft-ui-egui): split dialogs/import.rs into dialogs/import/ 2026-10-26 21:39:56 +00:00
aiongg b0356787e3 refactor(lightcraft-ui-egui): split dialogs/settings.rs into dialogs/settings/ 2026-10-26 21:39:56 +00:00
aiongg 56494a1308 refactor(lightcraft-ui-egui): split dialogs.rs into dialogs/ 2026-10-26 21:39:56 +00:00
aiongg 0896aa86ce refactor(lightcraft-ui-egui): split state.rs into state/ 2026-10-26 21:39:56 +00:00
aiongg db31bf3e59 refactor(lightcraft-ui-egui): split panels/right.rs into panels/right/ 2026-10-26 21:39:56 +00:00
aiongg 8c194d155e refactor(lightcraft-ui-egui): split panels/edit.rs into panels/edit/ 2026-10-26 21:39:56 +00:00
aiongg 4e13f61ba0 refactor(lightcraft-ui-egui): split panels/left.rs into panels/left/ 2026-10-26 21:39:56 +00:00
aiongg 15ece5cbd0 refactor(lightcraft-ui-egui): split menus.rs into menus/ 2026-10-26 21:39:56 +00:00
aiongg 401e047acc refactor(lightcraft-ui-egui): split panels/detail.rs into panels/detail/ 2026-10-26 21:39:56 +00:00
aiongg 2e5597d48a refactor(lightcraft): split main.rs into crate-root modules 2026-10-26 21:39:56 +00:00
aiongg 59d1d6f0f8 refactor(xtask): point the raw corpus test and ci-quick map at the moved sources 2026-10-26 21:39:56 +00:00
aiongg 27abe75572 refactor(xtask): split main.rs into crate-root modules 2026-10-26 21:39:56 +00:00
aiongg 8d8994ec87 refactor(lightcraft-engine): split cmd/library.rs into cmd/library/ 2026-10-26 21:39:56 +00:00
aiongg ff614cbe43 refactor(lightcraft-engine): split import.rs into import/ 2026-10-26 21:39:56 +00:00
aiongg 39d6a8d668 refactor(lightcraft-engine): split rename.rs into rename/ 2026-10-26 21:39:55 +00:00
aiongg 8942984c35 refactor(lightcraft-engine): split denoise.rs into denoise/ 2026-10-26 21:39:55 +00:00
aiongg 21304db29b refactor(lightcraft-engine): split media.rs into media/ 2026-10-26 21:08:55 +00:00
aiongg 50509093b6 refactor(lightcraft-engine): split camera_preview.rs into camera_preview/ 2026-10-26 21:08:55 +00:00
aiongg e3c594cab8 refactor(lightcraft-engine): split export.rs into export/ 2026-10-26 21:08:55 +00:00
aiongg 9b197d8215 refactor(lightcraft-engine): split files.rs into files/ 2026-10-26 21:08:55 +00:00
aiongg 745111dc6d refactor(lightcraft-ui-egui): move panels/right tests to panels/right/tests.rs 2026-10-26 21:05:54 +00:00
aiongg 658f3c26d5 refactor(lightcraft-engine): move denoise gpu_tests to denoise/gpu_tests.rs 2026-10-26 21:05:53 +00:00
aiongg 7707047684 refactor(lightcraft-engine): move media thumbnail_hash_tests to media/thumbnail_hash_tests.rs 2026-10-26 21:05:53 +00:00
aiongg b17f6cbe93 refactor(lightcraft-ui-egui): move progress.rs to widgets/progress.rs 2026-10-26 20:41:12 +00:00
aiongg 0d3ee604f3 refactor(lightcraft-ui-egui): move text_field.rs to widgets/text_field.rs 2026-10-26 20:41:12 +00:00
aiongg 8a9de1f616 refactor(lightcraft-ui-egui): move rating.rs to widgets/rating.rs 2026-10-26 20:41:12 +00:00
aiongg 204f8ea365 refactor(lightcraft-ui-egui): move button.rs to widgets/button.rs 2026-10-26 20:41:12 +00:00
aiongg 2a4bd99a4d refactor(lightcraft-ui-egui): move date_picker.rs to widgets/date_picker.rs 2026-10-26 20:41:12 +00:00
aiongg 6ea7f1dc55 refactor(lightcraft-ui-egui): move album_picker.rs to widgets/album_picker.rs 2026-10-26 20:41:12 +00:00
aiongg 74836daa84 refactor(lightcraft-ui-egui): move menu_level.rs to menus/menu_level.rs 2026-10-26 20:41:12 +00:00
aiongg 64b6a0e3c2 refactor(lightcraft-ui-egui): move menubar.rs to menus/menubar.rs 2026-10-26 20:41:12 +00:00
aiongg c7171d6834 refactor(lightcraft-ui-egui): move panels/slide_titles.rs to dialogs/settings/slide_titles.rs 2026-10-26 20:41:12 +00:00
aiongg f3d8862239 refactor(lightcraft-ui-egui): move panels/slide_templates.rs to dialogs/settings/slide_templates.rs 2026-10-26 20:41:12 +00:00
aiongg 34daf9dd60 refactor(lightcraft-ui-egui): move panels/slide_overlays.rs to dialogs/settings/slide_overlays.rs 2026-10-26 20:41:12 +00:00
aiongg f6e6d5ebc4 refactor(lightcraft-ui-egui): move panels/slide_layout.rs to dialogs/settings/slide_layout.rs 2026-10-26 20:41:12 +00:00
aiongg 56640576e0 refactor(lightcraft-ui-egui): move panels/rules_move.rs to dialogs/rules_editor/rules_move.rs 2026-10-26 20:41:12 +00:00
aiongg 0419f5b38b refactor(lightcraft-ui-egui): move panels/rules_editor.rs to dialogs/rules_editor.rs 2026-10-26 20:41:12 +00:00
aiongg 1dd486dec9 refactor(lightcraft-ui-egui): move panels/keymap.rs to dialogs/keymap.rs 2026-10-26 20:41:12 +00:00
aiongg d6db5a34a7 refactor(lightcraft-ui-egui): move panels/faces.rs to dialogs/faces.rs 2026-10-26 20:41:12 +00:00
aiongg 906150ae50 refactor(lightcraft-ui-egui): move panels/settings.rs to dialogs/settings.rs 2026-10-26 20:41:12 +00:00
aiongg fb5334a167 refactor(lightcraft-ui-egui): move updates_ui.rs to dialogs/updates_ui.rs 2026-10-26 20:41:08 +00:00
aiongg 3371bb8de2 refactor(lightcraft-ui-egui): move credits.rs to dialogs/credits.rs 2026-10-26 20:41:08 +00:00