darktable-org / darktable-org/darktable

Rejecting everything in dynamic culling mode breaks image selection

Open
#19,990 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

no-issue-activity scope: UI
Dominant language
C
Stars
13.1k
Forks
1.4k
Avg merge
22h 14m
Merged PRs (30d)
198

Description

Is there an existing issue for this?
  • I checked and did not find my issue in the already reported ones
Describe the bug

In the lighttable's dynamic culling mode, after rejecting all the compared images, you're unable to select any other images to continue the culling process.

Steps to reproduce
  1. Open lighttable.
  2. Have groups of RAW+JPEG pairs collapsed.
  3. Have some filter enabled, i.e. "all except rejected".
  4. Click on one image on the film strip.
  5. Hold Ctrl and click the second image on the strip to add it to current selection.
  6. Switch to culling in dynamic mode. The two images should now be displayed side by side.
  7. Reject both images.
  8. No image is now selected or displayed. It's now impossible to select any images from the strip (see workarounds below).
Expected behavior
  1. I should be able to click on other images in the strip to be selected for culling in dynamic mode.
Where did you obtain darktable from?

distro packaging

darktable version

5.2.1

What OS are you using?

Linux

What is the version of your OS?

Arch

Please provide additional context if applicable. You can attach files too, but might need to rename to .txt or .zip
Workaround 1

Click "select all" and experience a huge lag, especially if you have 1000+ images in the strip, as all of the strip will be loaded for dynamic culling (it's kinda insane this is even allowed and not limited). Only then you're able to click on one of the images on the film strip to actually select it.

Workaround 2

Switch to the fixed culling layout and then switch back to the dynamic one. Some image should be selected at this point, but you could be thrown back to the beginning of the strip.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue in darktable's lighttable with collapsed RAW+JPEG groups, a filter enabled, and dynamic culling. Trace the selection state after both displayed images are rejected, then verify that clicking another film-strip image selects it for culling without requiring Select All or switching layouts.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.