LMMS / LMMS/lmms

Vertical Zoom in Song Editor

Open
#3,763 5 comments 0 reactions 0 assignees View on GitHub
enhancement gui
Dominant language
C++
Stars
10.4k
Forks
1.3k
Avg merge
2d 13h
Merged PRs (30d)
7

Description

With the recent improvement to vertically larger patterns in the song editor (PR 3699), a vertical zoom makes more sense than before. This would allow every track to be scaled vertically by the same amount, and could be more convenient than shift+dragging even if you only want to focus on one track.

Right now the following shortcuts use the mouse wheel:

| Modifier | Modifier | Mousewheel = | Direction | Operation |
| ---: | ---: | :---: | :--- | :--- |
| | | Mousewheel = | Vertical | Scroll |
| | Shift + | Mousewheel = | Horizontal | Scroll |
| | Alt + | Mousewheel = | Horizontal | Scroll |
| | Ctrl + | Mousewheel = | Horizontal | Zoom |

Since there are two horizontal scroll shortcuts, ether Shift or Alt could in theory be used for vertical zoom. However, I think a modified Ctrl would make more sense. This would lead to something like this (excluding alt for brevity):

| Modifier | Modifier | Mousewheel = | Direction | Operation |
| ---: | ---: | :---: | :--- | :--- |
| | | Mousewheel = | Vertical | Scroll |
| | Shift + | Mousewheel = | Horizontal | Scroll |
| | Ctrl + | Mousewheel = | Horizontal | Zoom |
| Shift + | Ctrl + | Mousewheel = | Vertical | Zoom |

However, this would mean that an unmodified scroll is vertical, and an unmodified zoom is horizontal. Perhaps these should be unified, so an unmodified scroll and zoom operate on the same axis. I would then propose changing a regular unmodified mousewheel scroll to move horizontally, leading to:

| Modifier | Modifier | Mousewheel = | Direction | Operation |
| ---: | ---: | :---: | :--- | :--- |
| | | Mousewheel = | Horizontal | Scroll |
| | Shift + | Mousewheel = | Vertical | Scroll |
| | Ctrl + | Mousewheel = | Horizontal | Zoom |
| Ctrl + | Shift + | Mousewheel = | Vertical | Zoom |

This would make all mousewheel events horizontal by default. Shift becomes the "vertical" modifier, and Ctrl remains the "zoom" modifier.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in the song editor's existing mouse-wheel shortcut handling and review the behavior described around PR 3699. Confirm the proposed mapping: default horizontal scroll, Shift vertical scroll, Ctrl horizontal zoom, and Ctrl+Shift vertical zoom. Done means these four operations work consistently across tracks without breaking existing shortcuts.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.