Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

increase gmz LUT selection box max height (200 -> 350), scroll wheel behavior #16395

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dev-dev-dev-dev-dev-dev-dev-dev

…now works to scroll

Overview

Currently, the LUT 3D iop gui has a specific UI for use with compressed LUTs (.gmz files). Once a .gmz file is selected, a list box is rendered, populated with all the LUT available from the selected .gmz file. This list box is currently rather short in height, making it difficult to view the list of available LUTs. The popular gmic ships gmic_clutz.gmz with hundreds (over a thousand?) contained LUTs - finding a specific one in a small box is difficult if the name isn't precisely known to use text search.

image

When browsing through the LUT list, a user will intuitively begin to scroll through with the mouse wheel. Instead of scrolling the list as expected, darktable will currently interpret the scroll input to cycle through the available LUTs, applying them as the user scrolls. Because the scroll wheel is not a particular precise input mechanism - a single flick of the wheel can create an unpredictable number of events - the user ends up changing the applied LUT. This is not intuitive. Nor is it a responsive operation - changing the LUT can and frequently will cause the UI to lag with every scroll as LUTs are decompressed and applied. There's no convenient way to scroll through the list without grabbing the scroll bar and going on a hunt.

Changed

  • The max height for the LUT select box is increased from 200 to 350 px (subject to dpi scaling as usual).

image

  • Special behavior to iterate through LUTs on scroll behavior is removed. Users can still use the keyboard up/down arrow to iterate through LUTs, but the mouse scroll wheel will now move through the list without changing the selected LUT. The UI is both more intuitive to use and faster to respond.

Potential future improvements

  • Adjustable LUT selection list height, similar to equalizer UI
  • Maybe use the existing scroll behavior with a modifier key? Open to input on this, not sure it's worth supporting LUT iteration by mouse wheel.

@TurboGit
Copy link
Member

TurboGit commented Mar 1, 2024

Adjustable LUT selection list height, similar to equalizer UI

Yes please, would be good to do that indeed. We have the same for collections too which is similar here (tree list).

@TurboGit TurboGit added this to the 4.8 milestone Mar 3, 2024
@TurboGit TurboGit added feature: enhancement current features to improve priority: low core features work as expected, only secondary/optional features don't scope: UI user interface and interactions documentation-pending a documentation work is required release notes: pending labels Mar 3, 2024
Copy link
Member

@TurboGit TurboGit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add support for changing size via mouse as for other views.

@TurboGit
Copy link
Member

@dev-dev-dev-dev-dev-dev-dev-dev : Any news on this?

@TurboGit TurboGit modified the milestones: 4.8, 5.0 May 18, 2024
@TurboGit
Copy link
Member

@dev-dev-dev-dev-dev-dev-dev-dev : Are you going to work on this or should I close this PR at this stage? Let me know, thanks!

@TurboGit TurboGit modified the milestones: 5.0, 5.2 Nov 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation-pending a documentation work is required feature: enhancement current features to improve priority: low core features work as expected, only secondary/optional features don't release notes: pending scope: UI user interface and interactions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants