LMMS doesn't update MIDI input/output port dropdowns after external connection changes
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.4k
- Forks
- 1.3k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 7
Description
### Bug Summary
I'm experiencing this issue using the ALSA sequencer interface under Linux. When I'm changing MIDI connections from/to LMMS instruments using external tools (MIDI patch bays, `aconnect`, etc.) LMMS doesn't update its GUI to reflect these connection changes.
#### Steps to reproduce
1. Grab some MIDI controller.
2. Add a new instrument track in LMMS.
3. Enable MIDI input, **do not** set the input port.
4. Open your favorite MIDI patch bay, connect your MIDI controller to the LMMS instrument in it. `aconnect` can also be used.
5. Play on your MIDI controller to confirm that it's connected to the LMMS instrument.
6. Check the MIDI input port dropdown in LMMS. It did not update, it incorrectly shows that there's no connection between the MIDI controller and the instrument track.
#### Expected behavior
I would expect LMMS to listen to the port subscription/unsubscription announcements and update its MIDI port dropdowns accordingly. At least when using the ALSA sequencer interface. I have zero idea how the other interfaces could handle this, or even if they're affected by this issue.
#### Actual behavior
MIDI input/output port dropdowns not getting updated after changing MIDI connections with external tools.
#### Screenshot
https://user-images.githubusercontent.com/1627292/122227765-7b6cd880-ceb7-11eb-9c92-e53172aca833.mp4
#### Affected LMMS versions
AppImage, Version 1.2.2 (Linux/x86_64, Qt 5.9.7, GCC 5.4.0 20160609)
Git, fadf8c611ef37cf51fa0dd5c0d188a314c51004b
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue with an ALSA sequencer connection made through a MIDI patch bay or `aconnect`, then trace how LMMS handles port subscription and unsubscription announcements. The relevant behavior is the MIDI input/output port dropdown refresh; done means those dropdowns reflect external connection changes, at least for the ALSA sequencer interface.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100