Commit Graph
1409 Commits
Author SHA1 Message Date
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 d151df0149 style: cargo fmt the moved test modules 2026-10-26 18:30:36 +00:00
aiongg 73adafbae0 refactor(lightcraft-engine): move tests_slide_template.rs to slide_template/tests.rs 2026-10-26 18:28:42 +00:00
aiongg 9cc8a1c765 refactor(lightcraft-engine): move tests_*.rs to tests/ 2026-10-26 18:24:54 +00:00
aiongg c579f226ab refactor(lightcraft-engine): move print/compose.rs tests to crates/engine/src/print/compose/tests.rs 2026-10-26 18:15:58 +00:00
aiongg e6b0b386a7 refactor(lightcraft-engine): move print/layout.rs tests to crates/engine/src/print/layout/tests.rs 2026-10-26 18:15:57 +00:00
aiongg 41064fabb5 refactor(lightcraft-engine): move crs.rs tests to crates/engine/src/crs/tests.rs 2026-10-26 18:15:57 +00:00
aiongg a3ec3eadef refactor(lightcraft-engine): move rename.rs tests to crates/engine/src/rename/tests.rs 2026-10-26 18:15:57 +00:00
aiongg 89083b6c77 refactor(lightcraft-engine): move camera_preview.rs tests to crates/engine/src/camera_preview/tests.rs 2026-10-26 18:15:56 +00:00
aiongg 68abc4d4ce refactor(lightcraft-engine): move slideshow.rs tests to crates/engine/src/slideshow/tests.rs 2026-10-26 18:15:55 +00:00
aiongg c0fe58a144 refactor(lightcraft-engine): move demo.rs tests to crates/engine/src/demo/tests.rs 2026-10-26 18:15:55 +00:00
aiongg 102fa85a9c refactor(lightcraft-engine): move files.rs tests to crates/engine/src/files/tests.rs 2026-10-26 18:15:55 +00:00
aiongg a70d39eacd refactor(lightcraft-engine): move slide_overlay.rs tests to crates/engine/src/slide_overlay/tests.rs 2026-10-26 18:15:54 +00:00
aiongg 34f15b567f refactor(lightcraft-engine): move lightroom_sqlite.rs tests to crates/engine/src/lightroom_sqlite/tests.rs 2026-10-26 18:15:53 +00:00
aiongg 698ca5a884 refactor(lightcraft-engine): move lightroom_catalog.rs tests to crates/engine/src/lightroom_catalog/tests.rs 2026-10-26 18:15:53 +00:00
aiongg 619f346e74 refactor(lightcraft-engine): move apple_photos.rs tests to crates/engine/src/apple_photos/tests.rs 2026-10-26 18:15:52 +00:00
aiongg 6cf21f552a refactor(lightcraft-engine): move crs_masks.rs tests to crates/engine/src/crs_masks/tests.rs 2026-10-26 18:15:52 +00:00
aiongg 47adb933db refactor(lightcraft-engine): move smart.rs tests to crates/engine/src/smart/tests.rs 2026-10-26 18:15:52 +00:00
aiongg 50116167a6 refactor(lightcraft-engine): move export.rs tests to crates/engine/src/export/tests.rs 2026-10-26 18:15:51 +00:00
aiongg 858046cc4f refactor(lightcraft-engine): move media.rs tests to crates/engine/src/media/tests.rs 2026-10-26 18:15:50 +00:00
aiongg 728f223ee5 refactor(lightcraft-engine): move crates/engine/src/segment/mod.rs to crates/engine/src/segment.rs 2026-10-26 18:15:08 +00:00
aiongg 15030abbb5 refactor(lightcraft-engine): move crates/engine/src/print/mod.rs to crates/engine/src/print.rs 2026-10-26 18:15:08 +00:00
aiongg 1ebee97353 refactor(lightcraft-engine): move crates/engine/src/cmd/mod.rs to crates/engine/src/cmd.rs 2026-10-26 18:15:07 +00:00
Brain Wang c7961df10b Camera profile: Sony ILCE-7RM5 (α7R V) (#3022)
* Camera profile: Sony ILCE-7RM5 (α7R V)

* Camera profile: register the bundled ILCE-7RM5 profile

* Camera profile: attribution for the ILCE-7RM5 profile

* Camera profile: list ILCE-7RM5 among the built-in profiles in the README

* Camera profile: list ILCE-7RM5 in the Simplified Chinese README

* Camera profile: list ILCE-7RM5 in the Traditional Chinese README

* Camera profile: ILCE-7RM5 calibration set used the Standard creative style only
2026-10-25 22:04:19 -04:00
skylar taylor-barrick 387bed199f chore(deps): refresh safe dependency bumps (#2994) 2026-10-25 19:30:51 -04:00
skylartaylor e7144adc1f M0.37: reconcile current LightCraft main and qualify the migration 2026-10-25 07:47:22 +01:00
aiongg 122859d269 Merge PR #2846: KEYC-METADATA: Alt+0 / Alt+Shift+0 go to the next / previous keyword set 2026-10-25 02:24:03 +00:00
aiongg eb9ef0a40e Merge PR #2824: KEYC-METADATA: Cmd+Alt+Shift+C / V copy and paste metadata 2026-10-25 02:23:21 +00:00
aiongg 5c46163e66 Merge PR #2778: LRC-PRINT-TEMPLATES: print templates export to a file and import from one 2026-10-25 02:23:20 +00:00
aiongg f923967c63 Merge PR #2786: LRC-SS-PLAYBACK: a manual slideshow waits for the arrow keys 2026-10-25 02:23:20 +00:00
skylartaylor c057ccc23f Migrate LightCraft to egui 0.37 and reconcile dependency and font locks
Preserve current main, adapt frame/input and IME handling, and keep library
check results stable across layout passes. Include the matching Nix font lock
and reviewed attribution changes.
2026-10-25 02:54:42 +01:00
dotCooCoo b572dee19f KEYC-METADATA: Alt+0 / Alt+Shift+0 go to the next / previous keyword set
Lightroom Classic's keyboard shortcut page lists Option+0 / Option+Shift+0
(Alt+0 / Alt+Shift+0 on Windows) for cycling forward and backward through
the keyword sets; LightCraft had no key or command for it. Next Keyword
Set (keyword.nextSet, Alt+0) and Previous Keyword Set
(keyword.previousSet, Alt+Shift+0) make the set after or before the
current one current, in the Keyword Set menu's order: Recent Keywords,
then the saved sets. The keys wrap around at either end, and Alt+1 to
Alt+9 then apply the new set's keywords.

The two command labels have rows in every catalog. The KEYC-METADATA and
LRC-LIB-KEYWORDS rows, docs/ui-parity.md and docs/library-shortcuts.md
list the keys.
2026-10-24 12:55:46 -07:00
dotCooCoo cc557e189d KEYC-METADATA: Cmd+Alt+Shift+C / V copy and paste metadata
Copy Metadata and Paste Metadata had no shortcut. They now use
Cmd+Option+Shift+C and Cmd+Option+Shift+V on macOS and
Ctrl+Alt+Shift+C and Ctrl+Alt+Shift+V on Windows and Linux, the keys
Lightroom Classic's keyboard shortcut page lists for copying and
pasting metadata in the Library module. Both keys also work when
Windows and Linux deliver them as clipboard events. The KEYC-METADATA
row now lists the keys LightCraft binds (Cmd+S, the two new keys and
Alt+1 to Alt+9 for keyword sets) and every other key of that table
that is still missing. Gap 28 in docs/gaps.md and the Library keys in
docs/ui-parity.md list the two new keys.
2026-10-24 09:13:54 -07:00
dotCooCoo a9d2c594b0 LRC-PRINT-TEMPLATES: print template tests clean up their folder on failure
The template file tests now create their folder through a Scratch guard
that removes it when the test ends, including when an assertion fails,
as tests_folders.rs and tests_slideshow_export.rs do.
2026-10-24 08:56:00 -07:00
Brandon Thomas 5f8593a074 Merge PR #673 2026-10-24 10:20:14 -04:00
Brandon Thomas 3f1e5c21d6 Merge PR #2775
# Conflicts:
#	docs/gaps.md
#	docs/parity-checklist.md
2026-10-24 10:20:13 -04:00
Brandon Thomas bb82525413 Merge PR #2755 2026-10-24 10:20:13 -04:00
Brandon Thomas 7ed3f0f046 Merge PR #1122
# Conflicts:
#	crates/catalog/src/tests_local.rs
2026-10-24 10:20:13 -04:00
Brandon Thomas 749928088a Merge PR #2699 2026-10-24 10:20:13 -04:00
Brandon Thomas 57c639246b Merge PR #2762
# Conflicts:
#	docs/parity-checklist.md
2026-10-24 10:20:13 -04:00
Brandon ThomasandClaude Opus 5.5 0deec1251f Merge main into #673
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 10:14:13 -04:00
Brandon Thomas 50874ad2f6 Merge main into #2755
# Conflicts:
#	crates/engine/src/cmd/library.rs
2026-10-24 10:00:50 -04:00
Marco Arnulfo ab28690d06 LR-FILT-LABEL: group the plural labels in the chip when label and labels exclude each other 2026-10-24 14:51:44 +02:00
Marco Arnulfo afbd931561 LR-FILT-LABEL: the label chip and filter bar show what label and labels let through together, not their union 2026-10-24 14:51:44 +02:00
dotCooCoo 1c60abb586 LRC-PRINT-TEMPLATES: template changes that can't be saved are undone
print.template.save, delete and import changed the template list before
saving the preferences, and left the change in place when the save failed.
A retried import then saw its own unsaved copy and stored another one as
"Name (2)". The list now goes back to what it was when the save fails, as
library.holdView and the slide templates do.
2026-10-24 02:42:21 -07:00
dotCooCoo adf94a87cb LRC-SS-PLAYBACK: a manual slideshow waits for the arrow keys
The slideshow always advanced on its own after the slide duration.
The new Manual slideshow setting (Settings > Slideshow > Playback, or
manual in slideshow.playback and view.slideshow) keeps each slide, the
intro and the ending up until the right or left arrow or the control
bar changes it. Space, Esc, random order and repeat work as before.
Exports still use the slide duration. The setting is saved with the
library and in slideshow templates; a template without it reads as off.
2026-10-24 01:46:49 -07:00
ronibalthazar 522ae832ec fix: scope relative-date expiry to referenced albums 2026-10-24 07:28:51 +01:00
dotCooCoo 59e9a6a4f3 LRC-PRINT-TEMPLATES: print templates export to a file and import from one
The Print dialog's templates could be saved, applied and deleted, but
not moved to another library or another computer. Each saved template
now has an Export… button that writes it to a .lcprint file, and
Import… beside Save adds templates from such files.

print.template.export {name, path} writes {format, version, name,
settings}. print.template.import {path} reads at most 256 KB, checks
the format, version, name and every setting as a saved template's
settings are checked, drops cell photos and guides, and adds the
template under its name, or under "name (2)" and so on when the name is
in use. The buttons appear where the host provides open and save
dialogs: the desktop app does, and the web build does not.
2026-10-23 23:18:35 -07:00
ronibalthazar 18c56f03d4 fix: expire relative-date view caches on minute change 2026-10-24 07:02:22 +01:00