Commit Graph

8100 Commits

Author SHA1 Message Date
Dominic Clark
e76a99ee76 Suppress warnings in third-party code (#7319) 2024-06-17 22:48:04 +01:00
szeli1
2adbb166b5 arpeggiator sorted mode fixed (#7025)
Fixes an issue where sorted arpeggios over multiple notes used a largely
unusable algorithm. piano-octave-arp instead of octave-arp-piano.

Fixes #6499
Fixes #4491
2024-06-17 16:11:55 +02:00
saker
01ffa95578 Use src_set_ratio to fix artifacts within Sample playback (#7321) 2024-06-15 18:34:10 -04:00
Rossmaxx
68ea3f5bf2 Remove debian folder (#7311)
* removed debian folder

* removed debian entries from check-strings

* fixup verify script too
2024-06-15 08:29:14 +05:30
Michael Gregorius
beedbc18a6 Add support for "factorysample:" prefix / Fix "bassloopes" typo (#7236)
## Add support for "factorysample:" prefix
Add support to upgrade files with `src` tags that are prefixed with "factorysample:".

## Fix "bassloopes" typo
Fix projects that still reference files with the typo "bassloopes" in their name.

The upgrade is implemented in its own method because it is unrelated to the BPM renaming even if it is technically very similar in its solution.

Introduce the helper method `mapSrcAttributeInElementsWithResources` which replaces the `src` attribute in elements with resources (samples and AFP) if it can be found in a map.
2024-06-14 16:22:39 +02:00
Lost Robot
b1ee626633 Fix noise generator (#7318)
This noise generator doesn't work properly when multiple noise sources are being generated simultaneously.
2024-06-13 15:18:36 -07:00
Rossmaxx
43fbcca9cb Modernize compiler and linker flags (#7255) 2024-06-02 10:52:51 +01:00
Andrew Wiltshire
969943b335 Change the wording of Instrument Plugin Dialogue (#7301)
Drag an instrument into either the Song Editor, the Pattern Editor or ~~into~~ an existing instrument track.

The word "into" seems redundant
2024-06-01 11:23:21 -04:00
Michael Gregorius
042f8ac325 Add peak indicators (#7295)
Add peak indicators to the mixer strips. They show the maximum peak value
that was observed and can be reset by clicking on them.

## Implementation details
The implementation works via a signal/slot mechanism. The `Fader` class
has a new signal `peakChanged` which reports peak values as
amplifications. A new class `PeakIndicator` is added which has a slot
`updatePeak` which is connected to the new signal in `Fader`.

The `PeakIndicator` inherits from `QLabel` and mainly deals with updating
the label text from the current peak value.

Add a `PeakIndicator` instance to `MixerChannelView`. Add a `reset`
method to `MixerChannelView` so that the mixer channel can be reset on
the loading of new projects, etc. The current implementation resets the
peak indicator back to -inf dbFS. The `reset` method is called in
`MixerView::clear`.

Remove the clamping in `Fader::setPeak` so that all peaks are reported.
Emit the new signal if the peak changes.
2024-06-01 12:09:47 +02:00
Michael Gregorius
4e93f51b75 Adjust rendering of BarModelEditor (#7299)
Adjust the rendering of BarModelEditor to make it respect logarithmic
and linear models. The code now uses `inverseScaledValue` instead of
`value` just like the `Knob` class does when calculating the angle.
2024-05-31 23:39:09 +02:00
Michael Gregorius
37795ae20a Resizable mixer channels/strips (#7293)
## Make mixer channels resizable
Make the mixer channels resizable within the mixer view.

Remove the setting of the size policy from `MixerChannelView`. Add the
`Fader` widget with a stretch factor so that it is resized within the
layout of the mixer channel/strip. Remove the stretch that was added to
the layout because the fader now stretches.

In `MixerView` remove the top alignments when widgets are added to the
layout so that they can resize. Set the channel layout to align to the
left so that it behaves correctly when it is resized by the scroll area
it is contained in. Make the widget resizable in the scroll area so that
it always fills the space. Set the minimum height of the scroll area to
the minimum size of the widget plus the scrollbar height so that the
channel strips are never overlapped by the scrollbar.

Set the size policy of the "new channel" button so that it grows
vertically with the mixer view. Set a fixed size so that it is as wide as
a mixer strip.

## Enable maximization for mixer view

Enable the maximize button for the mixer view now that it is fully
resizable.
2024-05-31 13:11:45 +02:00
BoredGuy1
94b1a382dd fixed position line disappearing when zoomed out (#7296) 2024-05-31 08:19:34 +02:00
Tres Finocchiaro
a85c98648c Add macOS arm64 builds (#7285)
Add macOS arm64 builds
2024-05-30 22:41:26 -04:00
Raine M. Ekman
6ec1ced49c Don't recalculate the song length for every added TCO while loading (#5236)
Don't make LMMS calculate the song length for every added TCO when a new project is created or a project is loaded. Instead do it only once afterwards. This is accomplished by preventing any calculations in `Song::updateLength` if a song is currently loaded. `Song::updateLength` is then called immediately after the loading flag has been set to `false` in both cases.

---------

Co-authored-by: IanCaio <iancaio_dev@hotmail.com>
2024-05-30 18:37:08 +02:00
saker
bfeb781dc0 Redesign file browser searching (#7130) 2024-05-29 21:46:58 -04:00
FyiurAmron
e82e3f573a update veal submodule 2024-05-30 00:53:51 +02:00
Dalton Messmer
7197f1de39 Update upload-artifacts actions (#7263) 2024-05-29 20:47:25 +01:00
Raine M. Ekman
a262956ed3 Update CPU to Pentium 4 for win32 builds (#6155)
The CPU feature requirements for any currently supported 32-bit version of Windows (8.1 and 10) are PAE, NX and SSE2. That should mean a green light for bumping the CPU we build for to the minimum one with SSE2.
2024-05-29 17:46:35 +05:30
FyiurAmron
948bb4ac69 Fix to allow NSIS packaging to work for non-MSVC Windows builds (#7287) 2024-05-28 19:28:58 -04:00
FyiurAmron
d1a15e5ff8 Fix for Werror=self-move in test for GCC >= 13 (#7288) 2024-05-28 16:39:38 -04:00
Oskar Wallgren
4033406430 Automation Editor - Fix automation point forced snapping to integer value. (#7282)
* Revert "Fix glitch with automation points (#7269)"

This reverts commit d60fd0d022.

* Fix glitch in Automation Editor. This reverts the earlier fix and tries to solve the issue by instead rounding off the values of the top/bottom levels before comparison with the automation point value.

---------

Co-authored-by: Dalton Messmer <messmer.dalton@gmail.com>
2024-05-28 14:31:09 +02:00
Oskar Wallgren
0a93e1777b Bump SWH submodule to fix a crash with Reverse Delay (#7277) 2024-05-24 14:24:10 -04:00
Dalton Messmer
2e6545328c Update MinGW CI to Ubuntu 20.04 (#7259)
Update MinGW CI to Ubuntu 20.04
* Use ghcr.io/lmms/linux.mingw:20.04
* Fix deprecation in ClipView.cpp
* Fix ccache and simplify git configuration
* Apply patch by @DomClark for MinGW's SDL2 target
* Update excludelist-win
2024-05-23 13:21:57 -04:00
Rossmaxx
e9848dbbbb A few accessibility changes in default theme (#7202)
* some css tweaks for accessibility

* suggestions from review

* classic theme focus

* fix bug where button color disappears on focus

* More scrollbar color changes on hover.

* Commented the hover effect for now.

* Remove handle "hover" effect.

* scrollbar

* revert button active state
2024-05-23 17:46:15 +05:30
Rossmaxx
b803e92d63 Add menu option and hotkeys to move controllers/effects (#7139)
* added controller rack modules

* remove this-> from setFocusPolicy() and obsolete comment

Co-authored-by: saker <sakertooth@gmail.com>

* Use std::swap

Co-authored-by: saker <sakertooth@gmail.com>

* some more cleanup

Co-authored-by: saker <sakertooth@gmail.com>

* Replace slots with function pointers

Co-authored-by: saker <sakertooth@gmail.com>

* Apply fixes

---------

Co-authored-by: ejaaskel <esa.jaaskela@suomi24.fi>
Co-authored-by: saker <sakertooth@gmail.com>
2024-05-23 17:38:47 +05:30
Tres Finocchiaro
bd2362a8c0 FindWine improvements (#7268)
Improve WineHQ detection
Closes #7169 

---------

Co-authored-by: Rossmaxx <mrroshan127@gmail.com>
2024-05-23 01:25:18 -04:00
Tres Finocchiaro
c66af602ad Fix fftw linking when cross-compiling (#7276) 2024-05-22 23:52:53 -04:00
Johannes Lorenz
fa5f2aa41a Lv2Proc: Fix all code-style issues with {} 2024-05-23 00:34:00 +02:00
Tres Finocchiaro
32fe3e50e7 Add "natural" scrolling support for trackpads (#5510)
Adds QWheelEvent::inverted() support to spinboxes, knobs, sliders
2024-05-21 11:32:28 -04:00
Michael Gregorius
75d6be2eac Fix missing initialization (#7271)
Fix the missing initialization of some variables in `TrackContentWidget`.
This led to some performances issues when the widget was painted because
a for loop was executed for which the variable started at a very large
negative number and was then incremented.
2024-05-20 18:46:52 +02:00
BoredGuy1
a527427abf Changed bar lines to follow snap size (#7034)
* Added lines in between bars
* Changed bar lines to follow snap size
* Changed default zoom and quantization value
* Added constants for line widths
* Added QSS configuration for new grid line colors
* Tied line widths to QSS properties
* Changed default quantization to 1/4
* Removed clear() from destructor model
* Removed destructor in ComboBoxModel.h
* Changed member set/get functions to pass by value
* Updated signal connection with newer syntax
2024-05-20 12:37:18 +02:00
Oskar Wallgren
d60fd0d022 Fix glitch with automation points (#7269)
Co-authored-by: Dalton Messmer <messmer.dalton@gmail.com>
2024-05-20 00:18:11 +02:00
szeli1
76d8f65485 Fix lost connections when restoring automation clip (#7002) 2024-05-19 22:03:07 +01:00
Pascal
0071cb6f63 Fix UI freeze when zooming in on long samples (#7253) 2024-05-19 22:36:30 +02:00
wujekbrezniew
ca109f94f4 Migrate to new LV2 header paths (#6990) 2024-05-19 14:39:20 +01:00
Pascal
0ee05f5ad8 Fix crash in AFP when playing with loop while no sample is loaded (#7266) 2024-05-18 18:40:29 -04:00
Bimal Poudel
f891bb30eb Update widths of combo boxes (#7262)
* Update widths of combo boxes

* Update src/gui/editors/PianoRoll.cpp

no space right after brace

Co-authored-by: saker <sakertooth@gmail.com>

* Update src/gui/editors/PianoRoll.cpp

Co-authored-by: saker <sakertooth@gmail.com>

* Update src/gui/editors/PianoRoll.cpp

Co-authored-by: saker <sakertooth@gmail.com>

* Update src/gui/editors/PianoRoll.cpp

Co-authored-by: saker <sakertooth@gmail.com>

---------

Co-authored-by: saker <sakertooth@gmail.com>
2024-05-17 21:32:59 -04:00
Tres Finocchiaro
7859f1c72d Fix macOS CI builds (#7261) 2024-05-16 16:23:32 -04:00
Rossmaxx
321b2b4167 Remove the missing spoken.flac file in unfa - Spoken (#7208)
Remove spoken.flac using LMMS 1.0.3
---------

Co-authored-by: Tres Finocchiaro <tres.finocchiaro@gmail.com>
2024-05-16 15:51:46 -04:00
Tres Finocchiaro
a66d212221 Fix native linux VST on ARM64 (#7257) 2024-05-16 15:05:12 -04:00
Rossmaxx
36786dd83d Enable LADSPA plugins on MSVC (#6973)
Co-authored-by: Tres Finocchiaro <tres.finocchiaro@gmail.com>
Co-authored-by: Dominic Clark <mrdomclark@gmail.com>
Co-authored-by: Dalton Messmer <messmer.dalton@gmail.com>
2024-05-13 08:44:42 +01:00
Dominic Clark
95e5f97150 Revamp resource embedding (#7241) 2024-05-12 17:38:14 +01:00
Tres Finocchiaro
6d100d1bba Remove support for msys2 (#7251) 2024-05-12 01:35:10 -04:00
Alexander Medvedev
acdf05f347 Update zynaddsubfx (#7250)
Update instrument submodule
2024-05-11 15:40:54 -04:00
Oskar Wallgren
b71d4f2aab Remove demo project Greshz-CoolSnip.mmpz (#7248) 2024-05-09 15:25:51 +02:00
Dalton Messmer
d71116b82a Update Linux CI to Ubuntu 20.04 (#7015)
- Switch to Ubuntu 20.04 Docker image ghcr.io/lmms/linux.gcc:20.04
- Linux packages have migrated from Docker Hub to https://github.com/orgs/lmms/packages
- Built using the Dockerfiles from Update Linux images lmms-ci-docker#15
- Updated the veal submodule to the latest commit on the default ladspa branch
- Fixed an error when catching a polymorphic type with GCC 9. See: LMMS/veal@0ae9287
- Added GCC flag -Wno-format-truncation for ZynAddSubFx build.
- Adds GCC flag -Wno-format-overflow for calf/veal build.

Closes #6993
2024-05-08 13:06:54 -04:00
Tres Finocchiaro
acefd06f9b Bump veal submodule (#6771)
- Add MSVC support
- Sync upstream changes
2024-05-08 01:06:03 -04:00
saker
20102c4ae4 Replace processingSampleRate with outputSampleRate in Lb302 (#7239) 2024-05-05 05:44:25 -04:00
saker
9b6e33aa5c Remove global oversampling (#7228)
Oversampling can have many different effects to the audio signal such as latency, phase issues, clipping, smearing, etc, so this should really be an option on a per-plugin basis, not globally across all of LMMS (which, in some places, shouldn't really need to oversample at all but were oversampled anyways).
2024-05-05 04:37:43 -04:00
Michael Gregorius
9bdc8adf33 Inform effects about changes in enabled model (#7237)
Add the virtual method `Effect::onEnabledChanged` which can be overridden by effects so that they can react to state changes with regards to being enabled or bypassed. The call of this methods is connected to state changes of the enabled model in the constructor of `Effect`.

Implement the method in `DualFilterEffect` by resetting the history of the two filters. This is done to prevent pops that have been reported in #4612.
2024-05-05 10:05:22 +02:00