Commit Graph
2501 Commits
Author SHA1 Message Date
Triwarr 03c7afb42c Merge storytold/photocraft main into toolbar-side
Conflicts: 18 i18n catalogs (ar az bs da de fi he hi id ka nb ro sv ta th ur
zh-hans zh-hant), where this branch's two "Move Toolbar to the Right/Left"
entries and main's RAW Develop labels (d06ad7327, #12403) were both appended at
the end of the file. Kept both: this branch's entries, then main's.
2026-11-09 10:00:23 +01:00
Triwarr 7d101315b3 Document dock code, dedupe widths, harden toolbar_side load
- Add doc comments to the functions and tests this PR touches (Docstring Coverage).
- Share the toolbar width (toolbar_width/toolbar_columns), the rail widths and
  CANVAS_MIN_WIDTH instead of repeating the values; no values change.
- Document dockWidth as the requested model width, which a narrow window may draw
  narrower in either layout, and test model 520 / drawn <= 364 / canvas >= 200.
- Document that a dockWidth change is shared equally among columns within their
  minimums and iconic caps; tie ICONIC_WIDTH/ICONIC_MAX_WIDTH to craft-ui's
  DockStyle defaults (36/240) in a test.
- Replace the DOCK_ONLY thread-local and its guard with show_layout(dock_only).
- Move the test-only probe writes behind panel_docking::record, with no-op stubs
  outside tests.
- Read an unknown or malformed saved toolbar_side as Start instead of dropping
  the whole panel state; ui.set still refuses it.
2026-11-09 09:37:02 +01:00
FredApps d06ad73271 Naming: use RAW Develop for PhotoCraft's raw-processing feature (#12403)
Related to #5310. Display labels only; command ids (filter.cameraRaw, edit.preferences.rawDefaults), preference keys, serialized settings, PSD/action/XMP Adobe Camera Raw identifiers and .atn step names are unchanged.

- Camera Raw / Camera Raw Filter / Camera Raw Defaults -> RAW Develop / RAW Develop Filter / RAW Defaults in menus, preferences, filter names, diagnostics and all 34 catalogs.
- Saved Photoshop actions keep the "Camera Raw Filter" step name, so .atn files round-trip byte for byte (test extended).
- "Camera Raw" stays a command-search keyword.
- Removes dormant Adobe/Photoshop-branded catalog rows; display-name guard tests.
2026-11-09 08:30:33 +01:00
Triwarr d8970452fd Fix dock-edge resize bounds and cancellation 2026-11-09 02:56:23 +01:00
David Mann f88fa5e431 Merge remote-tracking branch 'origin/main' into pr-9272
# Conflicts:
#	docs/ui-parity.md
2026-11-09 00:49:57 +01:00
David Mann a76bb72b1f Merge pull request #10569 from hectorviov/feat/layer-copy-css
Layer › Copy CSS
2026-11-09 00:17:21 +01:00
David Mann bdcbb0fa93 Merge origin/main into fix/hue-range-zone-drag 2026-11-08 22:24:05 +01:00
David Mann 0832f01bb7 Merge origin/main into feat/smart-sharpen-canvas-preview 2026-11-08 22:24:00 +01:00
Triwarr eecb6e7c5c Merge remote-tracking branch 'origin/main' into toolbar-side-main 2026-11-08 21:18:38 +01:00
e9cac335b4 Regenerate the parity checklist and scorecard after merging main into #10569
Co-Authored-By: hectorviov <hectorviov@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 20:25:11 +01:00
David Mann a879c6ac0a Merge main into #10569
# Conflicts:
#	crates/ui-egui/src/menu_catalog.rs
2026-11-08 20:20:12 +01:00
David Mann 40c310dfa3 Merge pull request #5224 from augrclk/fix/brush-spacing-row
Brush Settings: combine the Spacing checkbox and percentage header
2026-11-08 19:22:06 +01:00
Triwarr c35bdc5ce1 Merge remote-tracking branch 'origin/main' into toolbar-side-main
# Conflicts:
#	ATTRIBUTION.md
2026-11-08 17:30:04 +01:00
David Mann 32ce08364b Merge pull request #9991 from ljkx/feat/raw-xmp-crop
Camera Raw sidecars: apply the crop, stop reporting RawFileName (#9985)
2026-11-08 16:55:43 +01:00
David Mann 2ffe5d1008 Merge pull request #12102 from Bobderto/fix/12085-zoom-menu-centre
Zoom tool menu: keep the view centre for Zoom In and Out
2026-11-08 16:51:19 +01:00
David Mann 848fa306f5 Merge pull request #12255 from SBaksa/patch-history-names
Patch: History names as the tool's (fixes #12117)
2026-11-08 15:25:52 +01:00
David Mann 85971ce95f Merge remote-tracking branch 'origin/main' into pr-5224
# Conflicts:
#	crates/ui-egui/src/panels/brush_panel/tests.rs
#	crates/ui-egui/src/panels/brush_sections/tests.rs
#	docs/brush-parity.md
#	docs/gaps.md
2026-11-08 14:51:51 +01:00
SBaksa 28d2d9095d History and plug-in names: trim the fillers and blank padding at the ends too
trim_name drops white space, ZWNJ/ZWJ and the blank characters (Braille blank, Hangul fillers,
invisible operators, tag and other default-ignorable blanks) from both ends. A variation or
Mongolian free variation selector or CGJ that belongs to a kept character stays, and so do Hangul
filler jamo that complete a syllable. History names use the same trim as plug-in names.
2026-11-08 22:40:53 +11:00
David Mann 320d285e1a Merge pull request #9887 from Firstbober/feat/indexed-color-matte
feat: add Indexed Color Matte options
2026-11-08 12:20:27 +01:00
David Mann 60ad38d4ae Merge pull request #5250 from augrclk/fix/brush-scatter-axes-header
Brush Settings: place Both Axes on the Scatter header
2026-11-08 12:19:26 +01:00
David Mann 342760093e Merge pull request #10823 from ljkx/fix/gradient-stop-drag-off
Gradient stops dragged off the bar are removed in every stop editor (#10742)
2026-11-08 12:16:52 +01:00
Hector VillarrealandClaude Opus 5.5 dfd21539f6 Regenerate scorecard
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 23:23:58 -06:00
Hector VillarrealandClaude Opus 5.5 fa5dfb3e19 Regenerate the parity checklist
Main added a Layer menu item of its own, so after the rebase the menu
counts 663 items; raise the floor to match.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 23:23:58 -06:00
Triwarr 2d16a609ea Merge remote-tracking branch 'origin/main' into pdf
# Conflicts:
#	docs/scorecard.md
2026-11-08 03:48:47 +01:00
David Mann fda05f7b02 Regenerate docs/scorecard.md (merge queue)
On main + #10448, so main's gate stays green after the merge.
2026-11-08 03:45:37 +01:00
517d0a9eea Merge origin/main into #9887 (Indexed Color Matte)
Keeps main's Fade preview path in filter_preview.rs and passes the PR's
tool colours to the non-Fade preview; catalogs keep both sides' rows.

Co-Authored-By: Firstbober <firstbober@tutanota.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 03:23:31 +01:00
David Mann 9da3cda6a7 Merge origin/main into feat/raw-xmp-crop
# Conflicts:
#	docs/file-format-parity.md
2026-11-08 02:56:35 +01:00
David Mann ce7706f041 Merge remote-tracking branch 'origin/main' into pr-5224
# Conflicts:
#	crates/ui-egui/src/panels/brush_panel/tests.rs
#	crates/ui-egui/src/panels/brush_sections/tests.rs
#	docs/brush-parity.md
#	docs/gaps.md
2026-11-08 02:49:33 +01:00
David Mann 4da02a98a6 Merge pull request #9975 from ljkx/feat/cli-metadata-option
CLI: --metadata none|all leaves document XMP out of convert, run --out and batch exports (#9466)
2026-11-08 02:40:35 +01:00
960bd438e3 Merge origin/main into PR #5250 (Both Axes on the Scatter header)
Co-Authored-By: augrclk <augrclk@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 02:37:20 +01:00
David Mann 8c6f5d538e Merge origin/main into fix/gradient-stop-drag-off (#10823)
# Conflicts:
#	docs/ui-parity.md
2026-11-08 02:33:41 +01:00
Triwarr 697a8a7def Toolbar side: honor the workspace lock, empty docks and the end-dock shape
- The dock-edge resize handle is inert while the workspace is locked (hover sense, no highlight) and set_end_dock_total refuses to write then; the drag test covers a locked workspace.
- An empty dock takes only the rail's width instead of a clamped blank column; dock_is_empty reports it and a test empties the dock.
- canvas_alone_layout now requires the second child to be the Dock itself, and end_dock_node/resize_end_dock follow horizontal splits only, so a layout the handle cannot resize keeps the standard layout instead of snapping back.
- Tests: DockOnlyGuard restores the flag on drop and unwinding; the theme test clicks the toolbar's move button instead of setting state; a dock-edge harness drags the edge, checks it persists and that a locked workspace refuses it; axis tests and a two-column ui.set {dockWidth} test.
- The flyout indicator follows the resolved toolbar side, the rail keeps its chrome fill and 4/8 inset with the separator inside it, ATTRIBUTION counts the new icon (116), and docs/control-protocol.md describes dockWidth as the whole end dock.
2026-11-08 02:16:49 +01:00
David Mann 0059bd597e Merge pull request #3498 from davidmann4/feat/auto-219-8-panel-command-check
xtask: check that every panel button routes through a command id (#3495)
2026-11-08 01:48:45 +01:00
David Mann 5c1b628973 Merge pull request #9970 from ljkx/feat/photo-filter-last-settings
Photo Filter opens at its last settings (#9879)
2026-11-08 01:40:42 +01:00
David Mann 81971d3e6b Merge remote-tracking branch 'origin/main' into pr-9272 2026-11-08 01:38:34 +01:00
David Mann 100997baaa Merge origin/main into feat/raw-xmp-crop
# Conflicts:
#	crates/ui-egui/src/dialogs/camera_raw_ui/open.rs
#	crates/ui-egui/src/dialogs/camera_raw_ui/sidecar.rs
#	docs/file-format-parity.md
2026-11-08 01:36:16 +01:00
50b877645f Merge origin/main into feat/cli-metadata-option (#9975)
Conflicts with main's --no-maximize-compatibility (#8064) in the CLI
export args, output mapping and dev-dependencies, and in the
file-format parity status line and revision history: both sides kept.

Co-Authored-By: ljkx <ljkx@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 01:26:47 +01:00
e812bfcbae Merge origin/main into feat/smart-sharpen-canvas-preview (#9981)
Conflict only in the docs/ui-parity.md status line: kept both entries.

Co-Authored-By: ljkx <ljkx@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 01:22:40 +01:00
Triwarr 0525197133 Merge remote-tracking branch 'origin/main' into pdf
# Conflicts:
#	docs/scorecard.md
2026-11-08 01:09:29 +01:00
47e14b5da2 Photo Filter keeps only Preserve Luminosity from its last OK (#9970)
#9970 reopened Image > Adjustments > Photo Filter... at the filter, colour,
density and Preserve Luminosity of its last OK. Measured in the reference
application: after OK at 60, 70 and 74 %, with a preset or with Color and a
custom colour, it reopens every time at Warming Filter (85), the orange
swatch and 25 %; only Preserve Luminosity carries over (off after an OK with
it off, on after an OK with it on). Opening now starts from the neutral
settings and takes just that one value from the last OK; Alt still reopens
at all the last settings (#8900). Tests and the ui-parity row follow the
measured behaviour.

Co-Authored-By: ljkx <177671075+ljkx@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 00:30:59 +01:00
David Mann 15be79be5e Merge pull request #9058 from Gotya-OFFCIAL/raw-hasselblad-3fr
raw: decode Hasselblad 3FR/FFF (X2D II 100C, uncompressed)
2026-11-08 00:29:05 +01:00
David Mann 2da9714b74 Merge origin/main into feat/photo-filter-last-settings
# Conflicts:
#	crates/ui-egui/src/panels/smart_ui.rs
#	docs/ui-parity.md
2026-11-08 00:16:29 +01:00
David Mann 49eabafbcb Merge pull request #11238 from NaufalDzz/layer-filter-find-layers
Select › Find Layers opens the Layers panel's Name filter (#10884)
2026-11-08 00:13:30 +01:00
David Mann 6d5254d319 Merge pull request #12134 from hectorviov/fix/atn-droplet-print-gradient-tool
Actions: map Create Droplet and cover the Gradient tool's recorded steps (#10710)
2026-11-08 00:01:17 +01:00
c751712a53 Merge origin/main into PR #5250 (Both Axes on the Scatter header)
Main added Brush Tip Shape Angle/Roundness tests and doc rows at the same places as
this PR's Scatter header tests and rows; both sides are kept, and the doc status
lines name both changes.

Co-Authored-By: augrclk <augrclk@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 23:45:02 +01:00
David Mann 977f80dc42 Merge origin/main into PR #9058 (raw: Hasselblad 3FR/FFF)
# Conflicts:
#	docs/gaps.md
2026-11-07 23:30:32 +01:00
David Mann 27ea4eddbc Merge pull request #5269 from augrclk/fix/brush-tip-geometry-layout
Brush Settings: align Angle and Roundness left of the tip widget
2026-11-07 23:23:49 +01:00
c951b80e27 Merge origin/main into fix/gradient-stop-drag-off (#10823)
#10797 landed the Gradient Map drag-off and a shared off_strip() on main.
Conflicts resolved to main's Gradient Map code and main's off_strip(): a
stop comes off the bar dragged up or down, as measured in the reference
application, so the PR's directional stop_dragged_off() is dropped and
Layer Style's Gradient Overlay uses off_strip() too.

Co-Authored-By: ljkx <ljkx@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 22:17:30 +01:00
David MannandClaude Opus 5.5 c5ebcd9dc7 Regenerate docs/scorecard.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 21:12:31 +01:00
David MannandClaude Opus 5.5 b6ab68ea3b Merge main into 3498
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 21:08:48 +01:00