Commit Graph
3625 Commits
Author SHA1 Message Date
francoisgn 50cc4e293c Merge PR #1464: Bump quick-xml to 0.41 (RUSTSEC-2026-0194, RUSTSEC-2026-0195 2026-10-22 22:31:16 +03:00
francoisgn 5b4c0e79c2 Merge PR #1976: GUM-3201: Reduce guided-filter coefficient allocations 2026-10-22 22:31:15 +03:00
francoisgn 7a6299b953 Merge PR #1859: Workspace rust-version is 1.95, what the workspace needs (#1 2026-10-22 22:31:15 +03:00
francoisgn db7ab1d7ea Merge PR #2255: Contributors: add my name for the About window
# Conflicts:
#	contributors/people.toml
2026-10-22 22:31:15 +03:00
francoisgn d81600cf1c Merge PR #2507: docs: fix four dead links in README.zh-hans.md 2026-10-22 22:31:15 +03:00
francoisgn bddbcd46d2 Merge PR #1385: Issue #1184: a pull request template 2026-10-22 22:31:15 +03:00
francoisgn 9578651eab Merge PR #2541: Make control-server timeout tests independent of client resc 2026-10-22 22:31:14 +03:00
francoisgn ef0e27a140 Merge PR #2494: security: validate CLI paths/args in dev tools (SonarCloud S 2026-10-22 22:31:14 +03:00
francoisgn b3c5b25b9a Merge PR #2302: Gap 9: cargo xtask ci on every PR (Linux x64); ci --quick; o
# Conflicts:
#	CLAUDE.md
#	docs/gaps.md
#	docs/target-app-parity.md
2026-10-22 22:31:14 +03:00
francoisgn 7710af915a Merge PR #1878: LR-MERGE-HDR: click the merge preview to zoom in, drag to pa
# Conflicts:
#	docs/parity-checklist.md
2026-10-22 22:31:04 +03:00
francoisgn d1bd96187c Merge PR #2542: Write exact 1/N EXIF ExposureTime for fast shutter speeds 2026-10-22 22:31:04 +03:00
francoisgn 3807e9d5ae Merge PR #2482: LR-MERGE-HDR: full-size alignment refinement and local align 2026-10-22 22:31:04 +03:00
francoisgn 6ed7741f6f Merge PR #2502: LRC-LIB-IMPORT: month names in date templates (%B January, %
# Conflicts:
#	docs/whats-new.md
2026-10-22 22:31:04 +03:00
francoisgn b20f55ba75 Merge PR #2503: LRC-LIB-MISSING: the availability worker sweeps a list of fi 2026-10-22 22:31:04 +03:00
francoisgn 84444aa458 Merge PR #2424: LRC-LIB-SMARTCOLL: the move engine for reordering smart albu 2026-10-22 22:31:03 +03:00
francoisgn 1938bc3845 Merge PR #2422: PERF-SMART: count every smart album once per pass, not once
# Conflicts:
#	docs/whats-new.md
2026-10-22 22:31:03 +03:00
francoisgn 51d3eceb0a Merge PR #2015: #1944: keyword.export refuses library originals and writes d 2026-10-22 22:31:03 +03:00
francoisgn 007047a3bb Merge PR #2205: LR-IMP-DRAGDROP: files dragged over the window show what a d
# Conflicts:
#	crates/ui-egui/locales/cs.json
#	crates/ui-egui/locales/de.json
#	crates/ui-egui/locales/es.json
#	crates/ui-egui/locales/fi.json
#	crates/ui-egui/locales/fr.json
#	crates/ui-egui/locales/id.json
#	crates/ui-egui/locales/it.json
#	crates/ui-egui/locales/ja.json
#	crates/ui-egui/locales/ka.json
#	crates/ui-egui/locales/pl.json
#	crates/ui-egui/locales/pt-br.json
#	crates/ui-egui/locales/ru.json
#	crates/ui-egui/locales/sv.json
#	crates/ui-egui/locales/uk.json
#	crates/ui-egui/locales/vi.json
#	crates/ui-egui/locales/zh-hans.json
#	crates/ui-egui/locales/zh-hant.json
#	crates/ui-egui/src/state.rs
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-22 22:30:24 +03:00
francoisgn e297b9ab7a Merge PR #1846: i18n(pl): finish the format messages, counts right for every
# Conflicts:
#	crates/ui-egui/locales/pl-formats.json
#	docs/localization-parity.md
#	docs/localization.md
#	docs/parity-checklist.md
2026-10-22 22:30:06 +03:00
francoisgn 77f313a0f2 Merge PR #2506: Edit Capture Time leaves a capture time it can't fully read
# Conflicts:
#	crates/ui-egui/src/lib.rs
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-22 22:29:19 +03:00
francoisgn 927e071873 Merge PR #2453: Web: the page title names the open photo and unsaved changes
# Conflicts:
#	docs/web.md
2026-10-22 22:28:50 +03:00
francoisgn cbedf7b5b1 Merge PR #2455: Web: lightcraft.command refuses params that aren't a JSON ob 2026-10-22 22:28:42 +03:00
francoisgn 4abb3bc860 Merge PR #2430: fix(web): import picker accept list misses many raw formats 2026-10-22 22:28:42 +03:00
francoisgn f2ffc34b14 Merge PR #2468: Print: Japanese photo and postcard paper sizes (L判・2L・KG・はがき
# Conflicts:
#	docs/gaps.md
#	docs/parity-checklist.md
2026-10-22 22:28:41 +03:00
francoisgn 139ff42984 Merge PR #1417: Edit in PhotoCraft: say why it didn't open; find PhotoCraft 2026-10-22 22:28:41 +03:00
francoisgn a52a709ef5 Merge PR #2279: LR-LIB-CULL: adjustable burst gap and similarity in Assisted
# Conflicts:
#	docs/parity-checklist.md
2026-10-22 22:28:41 +03:00
francoisgn cd6bc4be6f Merge PR #2513: KEY-GRID: show the cycle shortcut in the View menu (#2500)
# Conflicts:
#	docs/parity-checklist.md
2026-10-22 22:28:41 +03:00
francoisgn 1bbea3346f Merge PR #2345: feat(shortcuts): Lock Aspect Ratio as a listed row on A 2026-10-22 22:28:40 +03:00
francoisgn 4e75723da5 Merge PR #2327: #2312: culling goes on from a photo rated out of the view
# Conflicts:
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-22 22:28:40 +03:00
francoisgn be5735abf4 Merge PR #2501: LR-VIEW-INFOOVERLAY: the info overlay clears the macOS windo 2026-10-22 22:28:40 +03:00
francoisgn b32b4383f5 Merge PR #1074: LR-VIEW-ZOOM: diagnostic overlays render zoom windows; soft
# Conflicts:
#	docs/gaps.md
#	docs/parity-checklist.md
#	docs/ui-parity.md
2026-10-22 22:28:28 +03:00
francoisgn 3e273e9fbb Merge PR #1922: LR-VIEW-ZOOM: a middle-button drag pans the photo whatever t
# Conflicts:
#	docs/parity-checklist.md
2026-10-22 22:27:59 +03:00
francoisgn 878f49cac6 Merge PR #1979: LR-EDIT-COLOR-GRADING: a wheel drag holds the pointer and pu
# Conflicts:
#	crates/ui-egui/src/lib.rs
2026-10-22 22:27:59 +03:00
francoisgn 5bbf12dfcd Merge PR #1914: LR-BEHAV-DIALOGS: optionally close a dialog by clicking outs 2026-10-22 22:27:50 +03:00
francoisgn e08255a825 Merge PR #1313: Help ▸ Debug ▸ Show Frame Rate: a frame-rate display for wat 2026-10-22 22:27:50 +03:00
francoisgn 86c650f840 Merge PR #2195: MENU-BAR: menu switches are named for what they show, and no
# Conflicts:
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-22 22:27:50 +03:00
francoisgn 1489f47384 Merge PR #2077: LR-BEHAV-BG-TASKS: one progress bar, spinner and busy button
# Conflicts:
#	crates/ui-egui/src/lib.rs
#	docs/whats-new.md
2026-10-22 22:27:49 +03:00
francoisgn a05bc77ce0 Merge PR #2076: LR-LIB-RATING: one shared star rating for every rating on sc
# Conflicts:
#	docs/whats-new.md
2026-10-22 22:27:34 +03:00
francoisgn 9556aaf921 Merge PR #1287: LR-PREF-GENERAL: the Settings window is one size on every ta 2026-10-22 22:27:19 +03:00
helgehelge123andClaude Opus 5.5 6b3cc777c1 LR-LIB-CULL: a typed similarity keeps its thousandths (#2275)
The similarity slider stepped and showed whole hundredths, and egui applies both
to a typed value too, so 0.995 became 1.00 before photo.analyze saw it. It now
steps by a thousandth and shows two or three decimals: dragging still lands on
round values, and a typed 0.995 is kept.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 20:49:20 +02:00
helgehelge123andClaude Opus 5.5 6f056745e1 LR-LIB-CULL: the culling dialog's value fields take any burst gap and similarity photo.analyze accepts (#2275)
The burst-gap and similarity sliders still drag over 1 s-10 min and 0.70-0.99, but
their value fields no longer clamp to that: a typed gap of 0 s to a day ("1800",
"30 min", "1 day") and a similarity of 0 to 1.0 are kept and sent to photo.analyze
as typed; values past the API range are held at its limits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 20:20:54 +02:00
Nathaniel Ledford 5626550640 LR-BEHAV-BG-TASKS: one whole-percent rule for the bar text and its announced value 2026-10-22 13:46:24 -04:00
midasdf 767c4a39b6 Print: export the はがき alias in the paper-size test
The Japanese paper-size test exported only the canonical names and then
checked `print.set` with はがき, so the alias-to-MediaBox path was not
covered. Export はがき through `print.exportPdf` as well and read the
same 283.46 × 419.53 pt page as postcard.
2026-10-23 02:28:33 +09:00
Nathaniel Ledford 0198375edf LR-BEHAV-BG-TASKS: activity bars are named after their task, denoise percentage matches its announced value, Describe waits for a pending detail pass 2026-10-22 13:23:53 -04:00
Nathaniel Ledford 8ec606c655 LR-IMP-DRAGDROP: a drop is refused while a Local folder browse scan runs, not only an import or review scan 2026-10-22 11:45:39 -04:00
Nathaniel Ledford 0457d38a76 LR-BEHAV-BG-TASKS: a failed filmstrip thumbnail with no file name is announced without a leading comma 2026-10-22 11:13:29 -04:00
Nathaniel Ledford 66a4cf8a5c MENU-BAR: drop the two renamed menu labels the cs, it and pl catalogs still carry 2026-10-22 10:48:11 -04:00
midasdf 867284656e Merge origin/main into #2468: keep main's work and the Japanese paper sizes
Both sides' revision-history rows and change lines are kept (newest first);
print_view.rs auto-merged, so main's shared context_menu call sits beside the
PR's current_paper()/paper_name() punctuation and alias fixes.

# Conflicts:
#	ROADMAP.md
#	docs/gaps.md
#	docs/parity-checklist.md
2026-10-22 23:37:29 +09:00
midasdf 6b0c891333 Print: match paper names past punctuation and resolve aliases
The paper-name normalisation promised punctuation-insensitive names but
dropped only whitespace, hyphens, underscores and parentheses, so `L判。`
did not resolve; keep letters and digits only instead. The Print dialog
also lower-cased the stored name without resolving it to a canonical
paper, so a paper set through an alias (`はがき`) showed `はがき in` and
selected no option; add `paper_name` and use it for the selector's
current value and option comparison.

Tests: the layout aliases test covers periods and Japanese punctuation,
and the Print view test covers the resolved current paper.
2026-10-22 23:24:53 +09:00
mahmatias 206d73e898 test(keymap): the aspect-lock test reads the tool's own lock
The integration brought #1864: a fresh crop keeps the raw develop
aspect untouched, and the first toggle only records "free" for the
tool (lib.rs interceptor), so reading develop.crop.aspect never
changes on an untouched photo. The lock the row controls is the
effective one - crop_tool_aspect(), which now starts engaged on
"original" - and that is what the test asserts, like main's own
crop_keys. The feature behavior was already right; only the test's
observation point was stale.

1139/1139 ui-egui lib; fmt clean.
2026-10-22 10:05:28 -03:00