r3d42-git and Codex
dd7c2bfe14
LR-EDIT-OPTICS-PROFILE: synchronize unknown-crop fix with main
...
Merge upstream main at 496524ced5 without rewriting published history. Preserve current upstream fixes and retain only the independent feature change in the resulting PR diff.
Co-authored-by: Codex <noreply@openai.com >
2026-11-01 18:56:04 +01:00
Nathaniel Ledford
a26512c39c
Docs: the accessibility bus access is untested with Orca
2026-10-31 07:33:54 -04:00
Nathaniel Ledford
e845b97d8d
LR-BEHAV-ACCESS: the Flatpak may talk to the accessibility bus, so Orca can read LightCraft
2026-10-31 07:33:45 -04:00
aiongg
e80c3e3e13
Merge upstream main into integration-r3
2026-10-31 05:09:34 +00:00
aiongg
a9ac47cbce
docs: tidy wording
2026-10-31 04:25:37 +00:00
aiongg
ffd5a4a22b
docs: tidy agent, contributor and asset docs
2026-10-31 04:17:15 +00:00
aiongg
a4dc70c07b
Integration: sort modules, merge duplicated checklist and gap rows from the combined tracks
2026-10-31 02:42:54 +00:00
aiongg
ee0a627536
Merge track r3-t10
...
# Conflicts:
# crates/engine/src/cmd/masks.rs
# crates/ui-egui/locales/de.json
# crates/ui-egui/locales/es.json
# crates/ui-egui/locales/fr.json
# crates/ui-egui/locales/ja.json
# crates/ui-egui/locales/ka.json
# crates/ui-egui/locales/pt-br.json
# crates/ui-egui/locales/ru.json
# crates/ui-egui/locales/uk.json
# crates/ui-egui/locales/zh-hant.json
# docs/gaps.md
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-31 02:31:38 +00:00
aiongg
56c842d8fe
Merge track r3-t09
...
# Conflicts:
# docs/parity-checklist.md
# docs/raw-parity.md
# docs/ui-parity.md
# docs/whats-new.md
2026-10-31 02:31:25 +00:00
aiongg
e05c4f7e7c
Merge track r3-t08
...
# Conflicts:
# crates/meta/README.md
# 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-formats.json
# crates/ui-egui/locales/id.json
# crates/ui-egui/locales/it.json
# crates/ui-egui/locales/ja.json
# crates/ui-egui/locales/ka-formats.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-formats.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/panels/grid.rs
# crates/ui-egui/tests/it/main.rs
# docs/gaps.md
# docs/library-shortcuts.md
# docs/parity-checklist.md
# docs/raw-parity.md
# docs/user/guides/export-photos.md
# docs/whats-new.md
2026-10-31 02:31:16 +00:00
aiongg
1f111b5e80
Merge track r3-t07
...
# Conflicts:
# crates/engine/src/tests/libops.rs
# docs/gaps.md
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-31 02:30:21 +00:00
aiongg
8415fd6a90
Merge track r3-t06
...
# Conflicts:
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-31 02:30:12 +00:00
aiongg
0fa59f8846
Merge track r3-t05
...
# Conflicts:
# crates/ui-egui/locales/cs-formats.json
# crates/ui-egui/locales/cs.json
# crates/ui-egui/locales/de-formats.json
# crates/ui-egui/locales/de.json
# crates/ui-egui/locales/es-formats.json
# crates/ui-egui/locales/es.json
# crates/ui-egui/locales/fi-formats.json
# crates/ui-egui/locales/fi.json
# crates/ui-egui/locales/fr-formats.json
# crates/ui-egui/locales/fr.json
# crates/ui-egui/locales/id-formats.json
# crates/ui-egui/locales/id.json
# crates/ui-egui/locales/it-formats.json
# crates/ui-egui/locales/it.json
# crates/ui-egui/locales/ja-formats.json
# crates/ui-egui/locales/ja.json
# crates/ui-egui/locales/ka-formats.json
# crates/ui-egui/locales/ka.json
# crates/ui-egui/locales/pl-formats.json
# crates/ui-egui/locales/pl.json
# crates/ui-egui/locales/pt-br-formats.json
# crates/ui-egui/locales/pt-br.json
# crates/ui-egui/locales/ru-formats.json
# crates/ui-egui/locales/ru.json
# crates/ui-egui/locales/sv-formats.json
# crates/ui-egui/locales/sv.json
# crates/ui-egui/locales/uk-formats.json
# crates/ui-egui/locales/uk.json
# crates/ui-egui/locales/vi-formats.json
# crates/ui-egui/locales/vi.json
# crates/ui-egui/locales/zh-hans-formats.json
# crates/ui-egui/locales/zh-hans.json
# crates/ui-egui/locales/zh-hant-formats.json
# crates/ui-egui/locales/zh-hant.json
# docs/gaps.md
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-31 02:30:12 +00:00
aiongg
5e56e9536b
Merge track r3-t04
...
# Conflicts:
# docs/gaps.md
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-31 02:30:01 +00:00
aiongg
67b636329a
Merge track r3-t03
...
# Conflicts:
# crates/ui-egui/src/tests/drop_import.rs
# crates/ui-egui/tests/it/main.rs
# docs/gaps.md
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-31 02:29:52 +00:00
aiongg
46982a5c4f
Merge track r3-t02
...
# Conflicts:
# docs/gaps.md
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-31 02:29:22 +00:00
aiongg
1e0289cb37
Merge PR #3403 : LRC-LIB-CATALOG-SWITCH: files waiting for a library wait for a running import instead of being dropped
...
crates/ui-egui/src/dialogs/settings/libraries.rs: can_switch_library keeps both refusals (folder.move pick pending, files waiting to import).
docs/whats-new.md: the PR's entry added under the 2026-10-30 heading.
2026-10-31 02:12:00 +00:00
aiongg
e235ac71e2
Merge PR #3375 : LR-IMP-FORMATS: a Samsung panorama JPEG with its SEF trailer imports
...
docs/whats-new.md: the PR's 2026-10-30 section added above main's sections.
2026-10-31 02:11:48 +00:00
aiongg
9b5a339ac5
Merge PR #3325 : LRC-LIB-FOLDERS: Move Folder To… asks for the destination without freezing the window
...
crates/ui-egui/src/panels/left/folders.rs: main's built-in-place guard around Rename and Move kept; the Move item is the PR's move_folder_item inside it.
docs/parity-checklist.md: the PR's edits to its rows applied to main's rows.
docs/whats-new.md: the PR's entry added under the 2026-10-29 heading.
2026-10-31 02:11:38 +00:00
aiongg
d8f45ed5a5
Merge PR #3322 : LRC-LIB-CATALOG-SWITCH: a library missing at launch is reported instead of being made anew with demo photos
...
docs/parity-checklist.md: the PR's edit to the LRC-LIB-CATALOG-SWITCH row applied to main's row.
docs/whats-new.md: the PR's 2026-10-29 section added above main's sections.
2026-10-31 02:11:23 +00:00
aiongg
c2155326d6
Merge PR #2942 : Issue #2936 : build the GPU kernels on parallel threads
2026-10-31 02:11:04 +00:00
aiongg
e619c977b9
Merge PR #3276 : LRC-LIB-FOLDERS: the home folder and Local's built-in places can't be renamed or moved
...
docs/parity-checklist.md: header keeps main's newer date plus the PR's item; the PR's edit to the LRC-LIB-FOLDERS row applied to main's row; revision rows union, newest first.
docs/whats-new.md: the PR's 2026-10-28 section added above 2026-10-27.
2026-10-31 02:11:01 +00:00
aiongg
c9c69ddd4c
Merge PR #2919 : PERF-WINDOW: the window queues one frame, not two (eframe's low-latency surface)
...
# Conflicts:
# docs/whats-new.md
2026-10-31 02:11:01 +00:00
aiongg
c034f5bc52
Merge PR #2848 : LRC-SS-LAYOUT: the Slideshow settings page no longer moves when the slide preview finishes rendering
...
docs/whats-new.md, docs/parity-checklist.md: both sides kept; header keeps the newer date.
2026-10-31 02:10:51 +00:00
aiongg
8f9e146217
Merge PR #3286 : FACES: a person's page finds its look-alikes in seconds, not minutes
...
docs/whats-new.md, docs/parity-checklist.md: both sides kept; header keeps the newer date.
2026-10-31 02:10:50 +00:00
aiongg
3af32798f3
Merge PR #2821 : LR-META-LOCATION: reject malformed typed GPS coordinates
...
crates/engine/src/cmd/library.rs: kept main's split; the PR's parse_gps changes and tests are ported to crates/engine/src/cmd/library/gps.rs.
docs/gaps.md, docs/parity-checklist.md: both sides kept (header items, rows, LR-META-LOCATION note).
2026-10-31 02:10:49 +00:00
aiongg
a1ef1bf5fd
Merge PR #3176 : LR-IMP-ADD-DIALOG: an import's probe opens each file once
...
docs/whats-new.md: the PR's entry added under the 2026-10-27 heading after main's entry.
2026-10-31 02:10:38 +00:00
aiongg
b38bb32185
Merge PR #3386 : Never crash: strip byte counts near u64::MAX don't overflow their sum in ORF, SRW, ARW and PEF
...
docs/whats-new.md: both entries under 2026-10-30
2026-10-31 02:10:25 +00:00
aiongg
b3ddfefa5d
Merge PR #3141 : Issue #2589 : a reference app import never creates a photo already in Recently Deleted
...
crates/engine/src/import/job.rs: union of the imports (main's Seen, reusable_probes, sidecars_of plus the PR's FileFacts); the sidecar read uses main's batched found_sidecar and the PR's skip for duplicates with a known capture time.
2026-10-31 02:10:23 +00:00
aiongg
5062acc601
Merge PR #2421 : fix(windows): add opt-in DirectComposition workaround for VRR flicker
...
apps/lightcraft/src/main.rs: kept main's split; hunks ported (clear_color, compose_window, with_transparent); test moved to tests.rs
crates/ui-egui/src/panels/settings.rs: deleted on main; checkbox ported to dialogs/settings/performance.rs
crates/ui-egui/src/state.rs: compose_window field and default ported to state/settings.rs
crates/ui-egui/locales/*.json: main's file plus the new key
docs/gaps.md, docs/parity-checklist.md: main's header and rows plus the PR's additions; duplicated header line and blank lines dropped
2026-10-31 02:10:21 +00:00
aiongg
1d10bc70e1
Merge PR #3321 : LR-IMP-FORMATS: decode compressed RAF 13–17 % faster with a buffered bit reader
2026-10-31 02:10:18 +00:00
aiongg
acf0f6b938
Merge PR #2698 : LR-IMP-FORMATS: AHD blends its candidates where noise alone would pick one, no maze in noisy raws ( #2094 )
...
docs/whats-new.md: both entries kept
2026-10-31 02:10:17 +00:00
aiongg
bfb9572eb1
Merge PR #2529 : LR-MAP-TRACKLOG: Decode XML character references in GPX
...
docs/gaps.md, docs/whats-new.md, docs/parity-checklist.md: both sides' header items, entries and rows kept.
2026-10-31 02:10:14 +00:00
aiongg
b54f299e55
Merge PR #3398 : Never crash: a photo renders at most 64 red eye corrections ( #2556 )
...
docs/whats-new.md: both entries under 2026-10-30
2026-10-31 02:10:08 +00:00
aiongg
9d4de0518a
Merge PR #2979 : LRC-LIB-CATALOG-SWITCH: a library's catalog.snap or folder given at launch opens that library
...
docs/parity-checklist.md: header keeps main's newer date plus the PR's item; revision rows union.
2026-10-31 02:10:05 +00:00
aiongg
35d2fc957b
Merge PR #3402 : RAW.colour: fit the per-file look on the vignetting-corrected sensor
...
Conflicts: crates/engine/src/camera_preview.rs: LOOK_VERSION stays 13, all three version notes kept; docs/raw-parity.md header merged (newer date, both changes)
2026-10-31 02:10:02 +00:00
aiongg
f6b9c3ee8f
Merge PR #3331 : LR-VIEW-HISTOGRAM: the histogram's clipping buttons read in every theme
...
docs/parity-checklist.md: header from main with this PR's date and text; Histogram row gets this PR's clause; revision rows both kept
docs/whats-new.md: both entries, newest first
2026-10-31 02:09:58 +00:00
aiongg
847fc7558d
Merge PR #3027 : LR-PROF-CAMERACOLOR: docs count 9 bundled camera profiles, not 5
2026-10-31 02:09:51 +00:00
aiongg
e8566e839a
Merge PR #2952 : LR-EDIT-COLOR-TEMP: a one-field white balance partial keeps the other field's look ( #2910 )
...
Conflicts: docs unioned
2026-10-31 02:09:50 +00:00
aiongg
b28ef86773
Merge PR #2724 : fix(codecs): validate JPEG ICC APP2 chunk sequences
...
Conflicts: docs/gaps.md header merged (newer date, both change lists), rows kept; other docs unioned
2026-10-31 02:09:46 +00:00
aiongg
5a7a1b2ad9
Merge PR #2964 : LR-IMP-ADD-DIALOG: handle rename sequence exhaustion
...
crates/engine/src/import.rs, cmd/library.rs: main split these files; kept main's side here and ported the PR's hunks to import/job.rs, cmd/library/import.rs and cmd/library/specs.rs (module doc stays in import.rs).
docs: headers keep main's newer date plus the PR's item; the PR's row additions applied to main's rows; revision rows and What's New entries kept, one heading per date.
2026-10-31 02:09:36 +00:00
aiongg
42254ce585
Merge PR #2809 : LR-CROP-AUTO: Auto straighten reads the vertical vanishing point and the horizon
...
docs/parity-checklist.md: LR-CROP-STRAIGHTEN row from main (moved test path); LR-CROP-AUTO row from the PR; header and revision rows both kept.
docs/whats-new.md: both entries kept.
2026-10-31 02:09:32 +00:00
aiongg
d68af705a0
Merge PR #2981 : Issue #2819 : the histogram stays SDR when HDR is switched off
...
crates/ui-egui/src/panels/edit/histogram.rs: live_hdr_histogram added above main's histogram() (now in edit/histogram.rs, pub(crate))
docs/parity-checklist.md: main's Histogram row with this PR's HDR-off clause
2026-10-31 02:09:32 +00:00
aiongg
dc946d9876
Merge PR #3265 : LR-BEHAV-ACCESS: the grid's Thumbnail size reads as a slider
...
crates/ui-egui/tests/it/main.rs: all mod lines kept. docs: both sides kept; header keeps the newer date.
2026-10-31 02:09:27 +00:00
aiongg
0cc014c79a
Merge PR #2514 : Kelvin for Fujifilm X-Trans III bodies from the RAF's own neutral pair ( #730 )
2026-10-31 02:09:20 +00:00
aiongg
8241145ba7
Merge PR #3332 : LR-BEHAV-TITLEBAR: a dialog leaves the macOS title bar undimmed
...
Conflicts: docs unioned
2026-10-31 02:09:20 +00:00
aiongg
866ed3846c
Merge PR #3385 : Never crash: a mask id at the u32 limit doesn't overflow the next mask's id
...
# Conflicts:
# docs/whats-new.md
2026-10-31 02:09:14 +00:00
aiongg
f597811c3b
Merge PR #3273 : LR-BEHAV-ACCESS: panels and bars are named as landmarks and toolbars
...
Conflicts: docs unioned, locales/ru.json and sv.json keys unioned
2026-10-31 02:09:13 +00:00
aiongg
69eaf50db9
Merge PR #3262 : LR-BEHAV-ACCESS: the photo in Detail is named with its file name
...
crates/ui-egui/tests/it/main.rs: all mod lines kept. docs: both sides kept; header keeps the newer date.
2026-10-31 02:09:11 +00:00
aiongg
ac36428e6d
Merge PR #3384 : LR-MASK-OBJECTS: a SAM 3 checkpoint in Meta's original format is named as such, not as an unsupported dtype ( #3378 )
...
# Conflicts:
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-31 02:09:05 +00:00