darktable-org / darktable-org/darktable

Feature Request: Support for button chords in shortcuts

Open
#21,608 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Is your feature request related to a problem? Please describe.

I have a standalone scroll dial, its wonderful for adjusting settings in combination with a numpad. I get to preview the changes in fullscreen, without my eyes ever leaving the image to look at the UI.

For now, i have setup a kmonad script that maps button chords on my numpad to function keys, to increase the amount of settings i have available at my fingertips.

However, I'm running out of function keys that darktable recognizes, and kmonad scripting is quite cumbersome compared to just pressing two buttons and scrolling on the slider i would like to control.

Describe the solution you'd like

I believe button chord shortcuts would be a great value add to darktable.

It would greatly expand the amount of shortcuts reachable with one hand on the homerow, or on a numpad, and the other on the mouse.

It could also allow for shortcut mapping with "human logic", like:

c + scroll = Local contrast > details,
c + h + scroll = Lc > highlights,
c + s + scroll = Lc > shadows

should one want to do that.

Additional context

There is probably a lot of more pressing matters for you guys, but i just wanted to air the interest, should some of you find yourself in a situation where implementing such a function wouldn't be too complicated.

I really love darktable, and I'm really grateful for all the work you guys are doing. Maybe in the future, when my coding skills are more to write home about, I'll come and try to help out!

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

The issue names no files, tests, or entry points. Start by locating darktable's existing shortcut handling and clarifying how button chords, scrolling, conflicts, timing, and mappings should work; done would require agreed behavior and tests covering the proposed chord examples.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.