diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5f76a436386..6aa78b6aa7d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,106 +2,148 @@
## [2.4.0](https://launchpad.net/mixxx/+milestone/2.4.0) (Unreleased)
-### Cover Art
-
-* Prevent wrong cover art display due to hash conflicts [#2524](https://github.com/mixxxdj/mixxx/pull/2524) [#4904](https://github.com/mixxxdj/mixxx/pull/4904)
-* Add background color for quick cover art preview [#2524](https://github.com/mixxxdj/mixxx/pull/2524)
-* Fix coverart tooltip if cover is not cached [#12087](https://github.com/mixxxdj/mixxx/pull/12087)
-* Add cover art fetcher to the Musicbrainz dialog
- [#10908](https://github.com/mixxxdj/mixxx/pull/10908)
- [#4871](https://github.com/mixxxdj/mixxx/pull/4871)
- [#10795](https://github.com/mixxxdj/mixxx/issues/10795)
- [#10796](https://github.com/mixxxdj/mixxx/issues/10796)
- [#10902](https://github.com/mixxxdj/mixxx/pull/10902)
- [#4851](https://github.com/mixxxdj/mixxx/pull/4851)
- [#11938](https://github.com/mixxxdj/mixxx/pull/11938)
- [#11086](https://github.com/mixxxdj/mixxx/issues/11086)
- [#12041](https://github.com/mixxxdj/mixxx/pull/12041)
- [#12300](https://github.com/mixxxdj/mixxx/pull/12300)
- [#12543](https://github.com/mixxxdj/mixxx/pull/12543)
- [#12532](https://github.com/mixxxdj/mixxx/issues/12532)
- [#12543](https://github.com/mixxxdj/mixxx/pull/12543)
-* CoverArtCache refactoring + Fix scrolling lag after updating Mixxx [#12009](https://github.com/mixxxdj/mixxx/pull/12009)
+### Music Library: Tracks Table & Track Menu
+
+* Remember track selection when switching library features, fix initial selection etc.
+ [#4177](https://github.com/mixxxdj/mixxx/pull/4177)
+ [#4536](https://github.com/mixxxdj/mixxx/pull/4536)
+ [#12321](https://github.com/mixxxdj/mixxx/pull/12321)
+ [#12064](https://github.com/mixxxdj/mixxx/issues/12064)
+ [#11196](https://github.com/mixxxdj/mixxx/pull/11196)
+ [#11130](https://github.com/mixxxdj/mixxx/pull/11130)
+* Add new library column that shows the last time a track was played
+ [#3140](https://github.com/mixxxdj/mixxx/pull/3140)
+ [#3457](https://github.com/mixxxdj/mixxx/pull/3457)
+ [#3494](https://github.com/mixxxdj/mixxx/pull/3494)
+ [#3596](https://github.com/mixxxdj/mixxx/pull/3596)
+ [#3740](https://github.com/mixxxdj/mixxx/pull/3740)
+* Add keyboard shortcut Ctrl+Enter to open track properties [#4347](https://github.com/mixxxdj/mixxx/pull/4347)
+* Home/End keys jump to first/last row [#4850](https://github.com/mixxxdj/mixxx/pull/4850)
+* Wrap selection around at the bottom/top, only if Shift is not pressed
+ [#11090](https://github.com/mixxxdj/mixxx/pull/11090)
+ [#11100](https://github.com/mixxxdj/mixxx/pull/11100)
+ [#12391](https://github.com/mixxxdj/mixxx/pull/12391)
+* Allow to hide/remove tracks from the library by pressing the Delete key
+ [#4330](https://github.com/mixxxdj/mixxx/pull/4330)
+ [#7176](https://github.com/mixxxdj/mixxx/issues/7176)
+ [#9793](https://github.com/mixxxdj/mixxx/issues/9793)
+ [#9837](https://github.com/mixxxdj/mixxx/issues/9837)
+ [#10537](https://github.com/mixxxdj/mixxx/issues/10537)
+ [#11239](https://github.com/mixxxdj/mixxx/pull/11239)
+ [#4577](https://github.com/mixxxdj/mixxx/pull/4577)
+ [#1947992](https://github.com/mixxxdj/mixxx/issues/10577)
+* Fix Recording table refresh issues [#4648](https://github.com/mixxxdj/mixxx/pull/4648)
+* Show time in addition to the date in the timestamp column
+ [#4900](https://github.com/mixxxdj/mixxx/pull/4900)
+ [#10726](https://github.com/mixxxdj/mixxx/issues/10726)
+ [#11020](https://github.com/mixxxdj/mixxx/pull/11020)
+* Show only the date in Date Added / Last Played columns. Move the time of day to tooltips [#3945](https://github.com/mixxxdj/mixxx/pull/3945)
+* Right-align BPM, duration & bitrate values [#11634](https://github.com/mixxxdj/mixxx/pull/11634) [#11668](https://github.com/mixxxdj/mixxx/pull/11668) [#11657](https://github.com/mixxxdj/mixxx/issues/11657)
+* Remove parenthesis from play counter display [#11357](https://github.com/mixxxdj/mixxx/pull/11357)
+* Refocus library, after editing skin controls [#11767](https://github.com/mixxxdj/mixxx/pull/11767)
+* Fix performance with large playlists [#11851](https://github.com/mixxxdj/mixxx/pull/11851) [#11724](https://github.com/mixxxdj/mixxx/issues/11724)
+* Add multi-line editor delegate for comment column [#11752](https://github.com/mixxxdj/mixxx/pull/11752)
+* Keep current item visible when the view shrinks vertically [#11273](https://github.com/mixxxdj/mixxx/pull/11273)
+* macOS scrollbar: Make sure last track is shown in library [#11669](https://github.com/mixxxdj/mixxx/pull/11669) [#9495](https://github.com/mixxxdj/mixxx/issues/9495)
+* Add action to select loaded track in library [#4740](https://github.com/mixxxdj/mixxx/pull/4740)
+* Add menu for Analyze and Reanalyze
+ [#4806](https://github.com/mixxxdj/mixxx/pull/4806)
+ [#11873](https://github.com/mixxxdj/mixxx/pull/11873)
+ [#11872](https://github.com/mixxxdj/mixxx/issues/11872)
+* Add support for overriding analyzis settings about variable/constant BPM on a per-track basis [#10931](https://github.com/mixxxdj/mixxx/pull/10931)
+* Add menu for looking up track metadata at Discogs, Soundcoud and LastFM [#4772](https://github.com/mixxxdj/mixxx/pull/4772) [#4836](https://github.com/mixxxdj/mixxx/pull/4836)
+* Add "Delete Track Files" action, does "Move to Trash" with Qt >= 5.15
+ [#4560](https://github.com/mixxxdj/mixxx/pull/4560)
+ [#4831](https://github.com/mixxxdj/mixxx/pull/4831)
+ [#10763](https://github.com/mixxxdj/mixxx/issues/10763)
+ [#11580](https://github.com/mixxxdj/mixxx/pull/11580)
+ [#11577](https://github.com/mixxxdj/mixxx/issues/11577)
+ [#11583](https://github.com/mixxxdj/mixxx/pull/11583)
+ [#3212](https://github.com/mixxxdj/mixxx/pull/3212)
+ [#11842](https://github.com/mixxxdj/mixxx/pull/11842)
+* Allow to clear the comment field
+ [#4722](https://github.com/mixxxdj/mixxx/pull/4722)
+ [#10615](https://github.com/mixxxdj/mixxx/issues/10615)
+* Allow to reset loops and also via "[ChannelN], loop_remove" control object
+ [#4802](https://github.com/mixxxdj/mixxx/pull/4802)
+ [#10748](https://github.com/mixxxdj/mixxx/issues/10748)
+ [#12392](https://github.com/mixxxdj/mixxx/pull/12392)
+ [#12521](https://github.com/mixxxdj/mixxx/pull/12521)
+* Show 'Update ReplayGain' only in decks' menus [#4719](https://github.com/mixxxdj/mixxx/pull/4719)
+* Fix showing wrong Remove hotkey [#11171](https://github.com/mixxxdj/mixxx/pull/11171) [#10761](https://github.com/mixxxdj/mixxx/issues/10761)
+* Restore "Remove from playlist" in History [#11591](https://github.com/mixxxdj/mixxx/pull/11591) [#10974](https://github.com/mixxxdj/mixxx/issues/10974)
+* Enable Lock BPM action if any selected track BPM is unlocked [#12385](https://github.com/mixxxdj/mixxx/pull/12385)
-### Music Library
+### Music Library: Sidebar & Searchbar
-* Ensure that tracks with an invalid BPM are re-analyzed [#2776](https://github.com/mixxxdj/mixxx/pull/2776)
-* Add support for exporting crates, playlists and the library to Engine Prime and Denon standalone controllers
- [#2753](https://github.com/mixxxdj/mixxx/pull/2753)
- [#2932](https://github.com/mixxxdj/mixxx/pull/2932)
- [#3102](https://github.com/mixxxdj/mixxx/pull/3102)
- [#3155](https://github.com/mixxxdj/mixxx/pull/3155)
- [#3621](https://github.com/mixxxdj/mixxx/pull/3621)
- [#3776](https://github.com/mixxxdj/mixxx/pull/3776)
- [#3787](https://github.com/mixxxdj/mixxx/pull/3787)
- [#3797](https://github.com/mixxxdj/mixxx/pull/3797)
- [#3798](https://github.com/mixxxdj/mixxx/pull/3798)
- [#4025](https://github.com/mixxxdj/mixxx/pull/4025)
- [#4087](https://github.com/mixxxdj/mixxx/pull/4087)
- [#4102](https://github.com/mixxxdj/mixxx/pull/4102)
- [#4143](https://github.com/mixxxdj/mixxx/pull/4143)
- [#4463](https://github.com/mixxxdj/mixxx/pull/4463)
- [#11815](https://github.com/mixxxdj/mixxx/pull/11815)
- [#12309](https://github.com/mixxxdj/mixxx/pull/12309)
- [#12005](https://github.com/mixxxdj/mixxx/pull/12005)
- [#11816](https://github.com/mixxxdj/mixxx/pull/11816)
- [#11720](https://github.com/mixxxdj/mixxx/pull/11720)
- [#11834](https://github.com/mixxxdj/mixxx/pull/11834)
- [#12452](https://github.com/mixxxdj/mixxx/pull/12452)
- [#11979](https://github.com/mixxxdj/mixxx/pull/11979)
-* Rekordbox: Save all loops and correct AAC timing offset for CoreAudio [#2779](https://github.com/mixxxdj/mixxx/pull/2779)
-* Rekordbox: Fix missing playlists due to invalid child ID [#10955](https://github.com/mixxxdj/mixxx/pull/10955)
-* Rekordbox: Fix unhandled exception when parsing corrupt PDB files
- [#10452](https://github.com/mixxxdj/mixxx/issues/10452)
- [#4040](https://github.com/mixxxdj/mixxx/pull/4040)
-* Improve log messages during schema migration [#2979](https://github.com/mixxxdj/mixxx/pull/2979)
-* Search related tracks in collection
- [#3181](https://github.com/mixxxdj/mixxx/pull/3181)
- [#3213](https://github.com/mixxxdj/mixxx/pull/3213)
- [#2796](https://github.com/mixxxdj/mixxx/pull/2796)
- [#4207](https://github.com/mixxxdj/mixxx/pull/4207)
+* Add F2 and Del/Backspace shortcuts for renaming & deleting playlists and crates
+ [#11172](https://github.com/mixxxdj/mixxx/pull/11172)
+ [#11235](https://github.com/mixxxdj/mixxx/pull/11235)
+ [#4697](https://github.com/mixxxdj/mixxx/pull/4697)
+ [#4700](https://github.com/mixxxdj/mixxx/pull/4700)
+ [#10294](https://github.com/mixxxdj/mixxx/issues/10294)
+* Improve presentation of the History library tree
+ [#2996](https://github.com/mixxxdj/mixxx/pull/2996)
+ [#4298](https://github.com/mixxxdj/mixxx/pull/4298)
+ [#10533](https://github.com/mixxxdj/mixxx/issues/10533)
+* History: Fix sidebar context menu actions
+ [#4384](https://github.com/mixxxdj/mixxx/pull/4384)
+ [#4297](https://github.com/mixxxdj/mixxx/pull/4297)
+ [#10529](https://github.com/mixxxdj/mixxx/issues/10529)
+* History: Add cleanup options
+ [#4726](https://github.com/mixxxdj/mixxx/pull/4726)
+ [#9259](https://github.com/mixxxdj/mixxx/issues/9259)
+ [#10714](https://github.com/mixxxdj/mixxx/issues/10714)
+* History: Fix update of play count after removing tracks
+ [#12258](https://github.com/mixxxdj/mixxx/pull/12258)
+ [#12046](https://github.com/mixxxdj/mixxx/issues/12046)
+ [#12256](https://github.com/mixxxdj/mixxx/issues/12256)
+* Improve UX with right-click and selection after add, rename, delete, duplicate etc.
+ [#11208](https://github.com/mixxxdj/mixxx/pull/11208)
+ [#4193](https://github.com/mixxxdj/mixxx/pull/4193)
+ [#10488](https://github.com/mixxxdj/mixxx/issues/10488)
+ [#11574](https://github.com/mixxxdj/mixxx/pull/11574)
+ [#11208](https://github.com/mixxxdj/mixxx/pull/11208)
+ [#11712](https://github.com/mixxxdj/mixxx/pull/11712)
+* Map Left Arrow Key to jump to parent node and activates it
+ [#4253](https://github.com/mixxxdj/mixxx/pull/4253)
+* Crates: only store or activate sibling crate if it's valid
+ [#11770](https://github.com/mixxxdj/mixxx/pull/11770)
+ [#11769](https://github.com/mixxxdj/mixxx/issues/11769)
* Add recent searches to a drop down menu of the search box
[#3171](https://github.com/mixxxdj/mixxx/pull/3171)
[#3262](https://github.com/mixxxdj/mixxx/pull/3262)
-* Search: Save queries across restarts
+ [#4505](https://github.com/mixxxdj/mixxx/pull/4505)
+* Save search queries across restarts
[#4458](https://github.com/mixxxdj/mixxx/pull/4458)
[#10517](https://github.com/mixxxdj/mixxx/issues/10517)
[#10561](https://github.com/mixxxdj/mixxx/issues/10561)
[#4571](https://github.com/mixxxdj/mixxx/pull/4571)
* Enable search in Browse & Recording views [#11014](https://github.com/mixxxdj/mixxx/pull/11014) [#11012](https://github.com/mixxxdj/mixxx/issues/11012) [#4382](https://github.com/mixxxdj/mixxx/pull/4382)
-* Search: Update Clear button when search is disabled [#4447](https://github.com/mixxxdj/mixxx/pull/4447)
+* Update Clear button when search is disabled [#4447](https://github.com/mixxxdj/mixxx/pull/4447)
* Fix reset to default of search timeout in preferences [#4504](https://github.com/mixxxdj/mixxx/pull/4504) [#10589](https://github.com/mixxxdj/mixxx/issues/10589)
-* Search: Ctrl+F in focused search box selects the entire search string [#4515](https://github.com/mixxxdj/mixxx/pull/4515)
-* Search: Improve keypress handling, fix glitch in popup, strip whitespaces [#4658](https://github.com/mixxxdj/mixxx/pull/4658)
-* Search: Enter jumps to track table if search query was transmitted [#4844](https://github.com/mixxxdj/mixxx/pull/4844)
- Search: Push completion entry to top, to make up/down behave naturally
+* Ctrl+F in focused search box selects the entire search string [#4515](https://github.com/mixxxdj/mixxx/pull/4515)
+* Improve keypress handling, fix glitch in popup, strip whitespaces [#4658](https://github.com/mixxxdj/mixxx/pull/4658)
+* Enter jumps to track table if search query was transmitted [#4844](https://github.com/mixxxdj/mixxx/pull/4844)
+ Push completion entry to top, to make up/down behave naturally
+* Remove ESC shortcut in favour of new `[Library],focused_widget` [#4571](https://github.com/mixxxdj/mixxx/pull/4571)
[#11030](https://github.com/mixxxdj/mixxx/pull/11030)
[#10975](https://github.com/mixxxdj/mixxx/issues/10975)
-* Search: Restore previous search term when switching between playlists and crates
+* Restore previous search term when switching between playlists and crates
[#11129](https://github.com/mixxxdj/mixxx/pull/11129)
[#11015](https://github.com/mixxxdj/mixxx/issues/11015)
[#11477](https://github.com/mixxxdj/mixxx/pull/11477)
[#11476](https://github.com/mixxxdj/mixxx/issues/11476)
-* Search: Add options to disable auto-completion and history [#10942](https://github.com/mixxxdj/mixxx/pull/10942) [#10634](https://github.com/mixxxdj/mixxx/issues/10634)
-* Search: Require Enter or Right key to search for auto completed strings
+* Add options to disable auto-completion and history [#10942](https://github.com/mixxxdj/mixxx/pull/10942) [#10634](https://github.com/mixxxdj/mixxx/issues/10634)
+* Require Enter or Right key to search for auto completed strings
[#11207](https://github.com/mixxxdj/mixxx/pull/11207)
[#11289](https://github.com/mixxxdj/mixxx/pull/11289)
[#11287](https://github.com/mixxxdj/mixxx/issues/11287)
-* Search: Allow to use := and quotes to find exact matches [#12063](https://github.com/mixxxdj/mixxx/pull/12063) [#10699](https://github.com/mixxxdj/mixxx/issues/10699)
+* Allow to use := and quotes to find exact matches [#12063](https://github.com/mixxxdj/mixxx/pull/12063) [#10699](https://github.com/mixxxdj/mixxx/issues/10699)
+
+### Music Library: Backend & Database
+
* Add new "[AutoDJ],add_random_track" to make this feature accessible from controllers [#3076](https://github.com/mixxxdj/mixxx/pull/3076)
-* Add new library column that shows the last time a track was played
- [#3140](https://github.com/mixxxdj/mixxx/pull/3140)
- [#3457](https://github.com/mixxxdj/mixxx/pull/3457)
- [#3494](https://github.com/mixxxdj/mixxx/pull/3494)
- [#3596](https://github.com/mixxxdj/mixxx/pull/3596)
- [#3740](https://github.com/mixxxdj/mixxx/pull/3740)
-* Improve presentation of the History library tree
- [#2996](https://github.com/mixxxdj/mixxx/pull/2996)
- [#4298](https://github.com/mixxxdj/mixxx/pull/4298) [#10533](https://github.com/mixxxdj/mixxx/issues/10533)
-* History: Fix sidebar context menu actions [#4384](https://github.com/mixxxdj/mixxx/pull/4384)
-* Fix assertion when navigating History playlists [#4297](https://github.com/mixxxdj/mixxx/pull/4297) [#10529](https://github.com/mixxxdj/mixxx/issues/10529)
-* Add History cleanup options [#4726](https://github.com/mixxxdj/mixxx/pull/4726) [#9259](https://github.com/mixxxdj/mixxx/issues/9259) [#10714](https://github.com/mixxxdj/mixxx/issues/10714)
-* Fix update of play count after removing tracks from history playlist [#12258](https://github.com/mixxxdj/mixxx/pull/12258) [#12046](https://github.com/mixxxdj/mixxx/issues/12046) [#12256](https://github.com/mixxxdj/mixxx/issues/12256)
* Don't store or update metadata of missing tracks in the Mixxx database to prevent inconsistencies with file tags [#3811](https://github.com/mixxxdj/mixxx/pull/3811)
* Update library schema to 37 for synchronizing file modified time with track source on metadata import/export
[#3978](https://github.com/mixxxdj/mixxx/pull/3978)
@@ -113,7 +155,6 @@
* Track Metadata: Do not overwrite unchanged multi-valued fields [#12613](https://github.com/mixxxdj/mixxx/pull/12613) [#12587](https://github.com/mixxxdj/mixxx/issues/12587)
* Optionally reset metadata on reimport if file tags are missing, enabled by "[Library] ResetMissingTagMetadataOnImport 1"). [#4873](https://github.com/mixxxdj/mixxx/pull/4873)
* Logging: Suppress expected and harmless schema migration errors [#4248](https://github.com/mixxxdj/mixxx/pull/4248)
-* Only show the date in Date Added / Last Played columns. Move the time of day to tooltips [#3945](https://github.com/mixxxdj/mixxx/pull/3945)
* Fix handling of undefined BPM values
[#4062](https://github.com/mixxxdj/mixxx/pull/4062)
[#4063](https://github.com/mixxxdj/mixxx/pull/4063)
@@ -121,82 +162,21 @@
[#4154](https://github.com/mixxxdj/mixxx/pull/4154)
[#4165](https://github.com/mixxxdj/mixxx/pull/4165)
[#4168](https://github.com/mixxxdj/mixxx/pull/4168)
-* Adjust ReplayGain: Allow user to update the replaygain value based on a deck pregain value [#4031](https://github.com/mixxxdj/mixxx/pull/4031)
* Automatic analyze and optimize database [#4199](https://github.com/mixxxdj/mixxx/pull/4199)
* Re-import and update metadata after files have been modified when loading tracks [#4218](https://github.com/mixxxdj/mixxx/pull/4218)
-* Fix playlists sidebar navigation/activation [#4193](https://github.com/mixxxdj/mixxx/pull/4193) [#10488](https://github.com/mixxxdj/mixxx/issues/10488)
-* Sidebar: Improve UX (right-click and selection after add, rename, delete, duplicate etc.) [#11208](https://github.com/mixxxdj/mixxx/pull/11208)
-* Sidebar: Map Left Arrow Key to jump to parent node and activates it [#4253](https://github.com/mixxxdj/mixxx/pull/4253)
-* Library sidebar: add F2 and Del/Backspace shortcuts for renaming & deleting playlists and crates
- [#11172](https://github.com/mixxxdj/mixxx/pull/11172)
- [#11235](https://github.com/mixxxdj/mixxx/pull/11235)
-* Tracks table: Add keyboard shortcut Ctrl+Enter to open track properties [#4347](https://github.com/mixxxdj/mixxx/pull/4347)
-* Tracks table: Home/End keys jump to first/last row [#4850](https://github.com/mixxxdj/mixxx/pull/4850)
-* Tracks table: dont wrap around if Shift is pressed [#12391](https://github.com/mixxxdj/mixxx/pull/12391)
-* Tracks table: avoid wrong pre-selection with no tracks selected previously [#12321](https://github.com/mixxxdj/mixxx/pull/12321) [#12064](https://github.com/mixxxdj/mixxx/issues/12064)
-* Tracks table: Fix initial track selection with BackTab [#11130](https://github.com/mixxxdj/mixxx/pull/11130)
-* Tracks table: Try to restore selection position after track removal [#11196](https://github.com/mixxxdj/mixxx/pull/11196)
-* Tracks table: Remove parenthesis from play counter display [#11357](https://github.com/mixxxdj/mixxx/pull/11357)
* Re-enable shortcuts after editing controls
[#4360](https://github.com/mixxxdj/mixxx/pull/4360)
[#10184](https://github.com/mixxxdj/mixxx/issues/10184)
[#10523](https://github.com/mixxxdj/mixxx/issues/10523)
-* Allow to remove tracks from the library by pressing the Delete key
- [#4330](https://github.com/mixxxdj/mixxx/pull/4330)
- [#7176](https://github.com/mixxxdj/mixxx/issues/7176)
- [#9793](https://github.com/mixxxdj/mixxx/issues/9793)
- [#9837](https://github.com/mixxxdj/mixxx/issues/9837)
- [#10537](https://github.com/mixxxdj/mixxx/issues/10537)
-* Remember track selection when switching library features, save model state [#4177](https://github.com/mixxxdj/mixxx/pull/4177) [#4536](https://github.com/mixxxdj/mixxx/pull/4536)
* Allow to remove a track form the disk [#3212](https://github.com/mixxxdj/mixxx/pull/3212) [#4639](https://github.com/mixxxdj/mixxx/pull/4639)
* Fix accasional resetting of played counter in database [#4578](https://github.com/mixxxdj/mixxx/pull/4578) [#10617](https://github.com/mixxxdj/mixxx/issues/10617)
-* Recording: Fix table refresh issues [#4648](https://github.com/mixxxdj/mixxx/pull/4648)
-* Add popup before deletion playlist and crates [#4697](https://github.com/mixxxdj/mixxx/pull/4697) [#4700](https://github.com/mixxxdj/mixxx/pull/4700) [#10294](https://github.com/mixxxdj/mixxx/issues/10294)
* Experimental: Fix writing of undefined MusicBrainz Recording ID [#4694](https://github.com/mixxxdj/mixxx/pull/4694)
* Traktor library: fix importing track key [#4701](https://github.com/mixxxdj/mixxx/pull/4701)
-* Track Menu: Add action to select loaded track in library [#4740](https://github.com/mixxxdj/mixxx/pull/4740)
-* Track Menu: Add menu for Analyze and Reanalyze
- [#4806](https://github.com/mixxxdj/mixxx/pull/4806)
- [#11873](https://github.com/mixxxdj/mixxx/pull/11873)
- [#11872](https://github.com/mixxxdj/mixxx/issues/11872)
-* Track Menu: Add support for overriding analyzis settings about variable/constant BPM on a per-track basis [#10931](https://github.com/mixxxdj/mixxx/pull/10931)
-* Track Menu: Add menu for looking up track metadata at Discogs, Soundcoud and LastFM [#4772](https://github.com/mixxxdj/mixxx/pull/4772) [#4836](https://github.com/mixxxdj/mixxx/pull/4836)
-* Track Menu: Add Remove from disk and fix undeleted message and progress dialog
- [#4560](https://github.com/mixxxdj/mixxx/pull/4560)
- [#4831](https://github.com/mixxxdj/mixxx/pull/4831)
- [#10763](https://github.com/mixxxdj/mixxx/issues/10763)
- [#11580](https://github.com/mixxxdj/mixxx/pull/11580)
- [#11577](https://github.com/mixxxdj/mixxx/issues/11577)
- [#11583](https://github.com/mixxxdj/mixxx/pull/11583)
-* Track Menu: Allow to clear the comment field [#4722](https://github.com/mixxxdj/mixxx/pull/4722) [#10615](https://github.com/mixxxdj/mixxx/issues/10615)
-* Track Menu: Allow to reset loops and also via "[ChannelN], loop_remove" control object
- [#4802](https://github.com/mixxxdj/mixxx/pull/4802)
- [#10748](https://github.com/mixxxdj/mixxx/issues/10748)
- [#12392](https://github.com/mixxxdj/mixxx/pull/12392)
- [#12521](https://github.com/mixxxdj/mixxx/pull/12521)
-* Track Menu: Show 'Update ReplayGain' only in decks' menus [#4719](https://github.com/mixxxdj/mixxx/pull/4719)
-* Track Menu: Fix showing wrong Remove hotkey [#11171](https://github.com/mixxxdj/mixxx/pull/11171) [#10761](https://github.com/mixxxdj/mixxx/issues/10761)
-* Track Menu: Restore "Remove from playlist" in History [#11591](https://github.com/mixxxdj/mixxx/pull/11591) [#10974](https://github.com/mixxxdj/mixxx/issues/10974)
-* Track menu: Enable Lock BPM action if any selected track BPM is unlocked [#12385](https://github.com/mixxxdj/mixxx/pull/12385)
-* Track menu: Add "Delete Track Files" entry as move to trash with Qt >= 5.15 [#3212](https://github.com/mixxxdj/mixxx/pull/3212) [#11842](https://github.com/mixxxdj/mixxx/pull/11842)
-* Remove/hide tracks dialog: Add 'Don't ask again' checkbox [#11239](https://github.com/mixxxdj/mixxx/pull/11239)
* Fix exporting m3u files with tracks and special characters by using the URL format [#4752](https://github.com/mixxxdj/mixxx/pull/4752)
* Library Scanner: Sort files before adding them [#10919](https://github.com/mixxxdj/mixxx/pull/10919)
* Library Scanner: Fix track relocation query [#12462](https://github.com/mixxxdj/mixxx/pull/12462)
-* Show time in addition to the date in the timestamp column [#4900](https://github.com/mixxxdj/mixxx/pull/4900) [#10726](https://github.com/mixxxdj/mixxx/issues/10726) [#11020](https://github.com/mixxxdj/mixxx/pull/11020)
-* Wrap selection around at the bottom/top of the library's tracks list [#11090](https://github.com/mixxxdj/mixxx/pull/11090) [#11100](https://github.com/mixxxdj/mixxx/pull/11100)
* MenuBar: Add shortcut for rescanning library [#11136](https://github.com/mixxxdj/mixxx/pull/11136)
-* macOS scrollbar: Make sure last track is shown in library [#11669](https://github.com/mixxxdj/mixxx/pull/11669) [#9495](https://github.com/mixxxdj/mixxx/issues/9495)
-* library: right align BPM, duration & bitrate values [#11634](https://github.com/mixxxdj/mixxx/pull/11634) [#11668](https://github.com/mixxxdj/mixxx/pull/11668) [#11657](https://github.com/mixxxdj/mixxx/issues/11657)
-* Lib sidebar: right click selection fixes
- [#11574](https://github.com/mixxxdj/mixxx/pull/11574)
- [#11208](https://github.com/mixxxdj/mixxx/pull/11208)
- [#11712](https://github.com/mixxxdj/mixxx/pull/11712)
-* Refocus library, after editing skin controls [#11767](https://github.com/mixxxdj/mixxx/pull/11767)
-* Crates: only store or activate sibling crate if it's valid [#11770](https://github.com/mixxxdj/mixxx/pull/11770) [#11769](https://github.com/mixxxdj/mixxx/issues/11769)
-* Library: fix performance with large playlists [#11851](https://github.com/mixxxdj/mixxx/pull/11851) [#11724](https://github.com/mixxxdj/mixxx/issues/11724)
* Playlists: simplify import function, add whitespace before the # suffix [#12246](https://github.com/mixxxdj/mixxx/pull/12246)
-* Library: add multi-line editor delegate for comment column [#11752](https://github.com/mixxxdj/mixxx/pull/11752)
* Destroy PlayerInfo after EngineRecord is stopped to fix a debug assertion [#12341](https://github.com/mixxxdj/mixxx/pull/12341) [#12242](https://github.com/mixxxdj/mixxx/issues/12242)
* iTunes: Modularize importer and use `iTunesLibrary` on macOS for compatibility with `Music.app`
[#11353](https://github.com/mixxxdj/mixxx/pull/11353)
@@ -210,8 +190,41 @@
* iTunes: Permit duplicate playlist names by identifying playlists by id (rather than name) [#11794](https://github.com/mixxxdj/mixxx/pull/11794)
* iTunes: Re-enable test and add `composer`, `playCount`, `lastPlayedAt` and `dateAdded` to model [#11948](https://github.com/mixxxdj/mixxx/pull/11948)
* Fix setting the wrong default cue color [#11554](https://github.com/mixxxdj/mixxx/pull/11554) [#11260](https://github.com/mixxxdj/mixxx/issues/11260)
-* Tweak remove/hide track confirm message to match confirm exit message [#4577](https://github.com/mixxxdj/mixxx/pull/4577) [#1947992](https://github.com/mixxxdj/mixxx/issues/10577)
-* Tracks table: Keep current item visible when the view shrinks vertically [#11273](https://github.com/mixxxdj/mixxx/pull/11273)
+* Ensure that tracks with an invalid BPM are re-analyzed [#2776](https://github.com/mixxxdj/mixxx/pull/2776)
+* Add support for exporting crates, playlists and the library to Engine Prime and Denon standalone controllers
+ [#2753](https://github.com/mixxxdj/mixxx/pull/2753)
+ [#2932](https://github.com/mixxxdj/mixxx/pull/2932)
+ [#3102](https://github.com/mixxxdj/mixxx/pull/3102)
+ [#3155](https://github.com/mixxxdj/mixxx/pull/3155)
+ [#3621](https://github.com/mixxxdj/mixxx/pull/3621)
+ [#3776](https://github.com/mixxxdj/mixxx/pull/3776)
+ [#3787](https://github.com/mixxxdj/mixxx/pull/3787)
+ [#3797](https://github.com/mixxxdj/mixxx/pull/3797)
+ [#3798](https://github.com/mixxxdj/mixxx/pull/3798)
+ [#4025](https://github.com/mixxxdj/mixxx/pull/4025)
+ [#4087](https://github.com/mixxxdj/mixxx/pull/4087)
+ [#4102](https://github.com/mixxxdj/mixxx/pull/4102)
+ [#4143](https://github.com/mixxxdj/mixxx/pull/4143)
+ [#4463](https://github.com/mixxxdj/mixxx/pull/4463)
+ [#11815](https://github.com/mixxxdj/mixxx/pull/11815)
+ [#12309](https://github.com/mixxxdj/mixxx/pull/12309)
+ [#12005](https://github.com/mixxxdj/mixxx/pull/12005)
+ [#11816](https://github.com/mixxxdj/mixxx/pull/11816)
+ [#11720](https://github.com/mixxxdj/mixxx/pull/11720)
+ [#11834](https://github.com/mixxxdj/mixxx/pull/11834)
+ [#12452](https://github.com/mixxxdj/mixxx/pull/12452)
+ [#11979](https://github.com/mixxxdj/mixxx/pull/11979)
+* Rekordbox: Save all loops and correct AAC timing offset for CoreAudio [#2779](https://github.com/mixxxdj/mixxx/pull/2779)
+* Rekordbox: Fix missing playlists due to invalid child ID [#10955](https://github.com/mixxxdj/mixxx/pull/10955)
+* Rekordbox: Fix unhandled exception when parsing corrupt PDB files
+ [#10452](https://github.com/mixxxdj/mixxx/issues/10452)
+ [#4040](https://github.com/mixxxdj/mixxx/pull/4040)
+* Improve log messages during schema migration [#2979](https://github.com/mixxxdj/mixxx/pull/2979)
+* Search related tracks in collection
+ [#3181](https://github.com/mixxxdj/mixxx/pull/3181)
+ [#3213](https://github.com/mixxxdj/mixxx/pull/3213)
+ [#2796](https://github.com/mixxxdj/mixxx/pull/2796)
+ [#4207](https://github.com/mixxxdj/mixxx/pull/4207)
### Sync
@@ -295,16 +308,26 @@
[#11003](https://github.com/mixxxdj/mixxx/issues/11003)
[#12637](https://github.com/mixxxdj/mixxx/pull/12637)
[#12632](https://github.com/mixxxdj/mixxx/pull/12632)
+ [#12623](https://github.com/mixxxdj/mixxx/pull/12623)
+ [#12618](https://github.com/mixxxdj/mixxx/issues/12618)
* Fix an issue when pressing multiple cue buttons at the same time [#3382](https://github.com/mixxxdj/mixxx/pull/3382)
* Fix synchronization of main cue point/position
[#4137](https://github.com/mixxxdj/mixxx/pull/4137)
[#10478](https://github.com/mixxxdj/mixxx/issues/10478)
[#4153](https://github.com/mixxxdj/mixxx/pull/4153)
+* Adjust ReplayGain: Allow user to update the replaygain value based on a deck pregain value [#4031](https://github.com/mixxxdj/mixxx/pull/4031)
* Add halve/double controls for beatjump size [#4269](https://github.com/mixxxdj/mixxx/pull/4269)
+* Implement Un-eject by pressing eject again
+ [#4668](https://github.com/mixxxdj/mixxx/pull/4668)
+ [#11246](https://github.com/mixxxdj/mixxx/pull/11246)
+* Implement Un-replace by double-clicking eject
+ [#11246](https://github.com/mixxxdj/mixxx/pull/11246)
+* Allow to cancel active loops via beatloop_activate [#4328](https://github.com/mixxxdj/mixxx/pull/4328) [#9950](https://github.com/mixxxdj/mixxx/issues/9950)
+* Slip Mode: Preserve active (regular) loop when leaving Slip Mode [#11435](https://github.com/mixxxdj/mixxx/pull/11435) [#6993](https://github.com/mixxxdj/mixxx/issues/6993)
* Fix possible segfault when ejecting track [#4362](https://github.com/mixxxdj/mixxx/pull/4362) [#10497](https://github.com/mixxxdj/mixxx/issues/10497)
+* Fix: possible cash when ejecting track from a controller [#11884](https://github.com/mixxxdj/mixxx/pull/11884) [#11819](https://github.com/mixxxdj/mixxx/issues/11819)
* Fix an assertion when loop is before track start [#4383](https://github.com/mixxxdj/mixxx/pull/4383) [#10556](https://github.com/mixxxdj/mixxx/issues/10556)
* Fix and improve snapping to beats in various situations [#4366](https://github.com/mixxxdj/mixxx/pull/4366) [#10541](https://github.com/mixxxdj/mixxx/issues/10541)
-* Allow to cancel active loops via beatloop_activate [#4328](https://github.com/mixxxdj/mixxx/pull/4328) [#9950](https://github.com/mixxxdj/mixxx/issues/9950)
* Don't wipe inapplicable sound config immediately [#4544](https://github.com/mixxxdj/mixxx/pull/4544)
* Rubberband: Support Version 3 "finer" (near-hi-fi quality) setting, on Windows and MacOs and when available on Linux
[#4853](https://github.com/mixxxdj/mixxx/pull/4853)
@@ -314,37 +337,36 @@
* Rubberband: Improve mono-compatibility for R3 "finer" [#11418](https://github.com/mixxxdj/mixxx/pull/11418)
* Fix a possible crash when ejecting a track [#11334](https://github.com/mixxxdj/mixxx/pull/11334) [#11257](https://github.com/mixxxdj/mixxx/issues/11257)
* Add a range limits for beatjump_size of 512 [#11248](https://github.com/mixxxdj/mixxx/pull/11248) [#11203](https://github.com/mixxxdj/mixxx/issues/11203)
-* Slip Mode: Preserve active (regular) loop when leaving Slip Mode [#11435](https://github.com/mixxxdj/mixxx/pull/11435) [#6993](https://github.com/mixxxdj/mixxx/issues/6993)
* Auto DJ: Fix sharp cut transition after cueing a track without a defined intro [#11629](https://github.com/mixxxdj/mixxx/pull/11629) [#11621](https://github.com/mixxxdj/mixxx/issues/11621)
* Auto DJ: Don't use removed Intro end and outro start makers, use transition time instead [#11830](https://github.com/mixxxdj/mixxx/pull/11830)
* Auto DJ: Fix GUI freeze when updating duration for many selected tracks
[#12530](https://github.com/mixxxdj/mixxx/pull/12530)
[#12520](https://github.com/mixxxdj/mixxx/issues/12520)
[#12537](https://github.com/mixxxdj/mixxx/pull/12537)
-* Fix: possible cash when ejecting track from a controller [#11884](https://github.com/mixxxdj/mixxx/pull/11884) [#11819](https://github.com/mixxxdj/mixxx/issues/11819)
* KeyControl: fix keylock/unlock bugs, reset pitch_adjust [4710](https://github.com/mixxxdj/mixxx/pull/4710)
* Looping: fix asserts for loop move [#11735](https://github.com/mixxxdj/mixxx/pull/11735)
* ReadAheadManager: fix loop wraparound reader condition [#11717](https://github.com/mixxxdj/mixxx/pull/11717)
-* Fix wrong visual play position when inside loop [#11840](https://github.com/mixxxdj/mixxx/pull/11840) [#11836](https://github.com/mixxxdj/mixxx/issues/11836)
* Slip mode: consider loop for background position only if it was enabled before slip [#11848](https://github.com/mixxxdj/mixxx/pull/11848) [#11844](https://github.com/mixxxdj/mixxx/issues/11844)
* Looping: reset loop_end_pos on eject [#12224](https://github.com/mixxxdj/mixxx/pull/12224) [#12223](https://github.com/mixxxdj/mixxx/issues/12223)
-* Hotcue: allow setting hotcue inside active, saved loop [#12623](https://github.com/mixxxdj/mixxx/pull/12623) [#12618](https://github.com/mixxxdj/mixxx/issues/12618)
-* make decks' xfader assignment persistent [#12074](https://github.com/mixxxdj/mixxx/pull/12074) [#10122](https://github.com/mixxxdj/mixxx/issues/10122)
+* Make decks' xfader assignment persistent [#12074](https://github.com/mixxxdj/mixxx/pull/12074) [#10122](https://github.com/mixxxdj/mixxx/issues/10122)
### Controller Mappings
+* new: Hercules DJControl MIX controller mapping [#11279](https://github.com/mixxxdj/mixxx/pull/11279)
+* new: Pioneer DDJ-FLX4 controller mapping based on DDJ-400 [#11245](https://github.com/mixxxdj/mixxx/pull/11245)
+* new: Traktor Kontrol S4 Mk3 controller mapping [#11284](https://github.com/mixxxdj/mixxx/pull/11284)
+* new: Traktor Kontrol Z1 HID controller mapping [#12366](https://github.com/mixxxdj/mixxx/pull/12366) [#12426](https://github.com/mixxxdj/mixxx/pull/12426)
+* new: Yaeltex MiniMixxx controller mapping [#4350](https://github.com/mixxxdj/mixxx/pull/4350)
* Behringer DDM4000 mixer: Update controller mapping [#4262](https://github.com/mixxxdj/mixxx/pull/4262) [#4799](https://github.com/mixxxdj/mixxx/pull/4799)
-* Hercules DJControl MIX: New mapping [#11279](https://github.com/mixxxdj/mixxx/pull/11279)
* Hercules DJ Console RMX: Replace not defined CO name pitch_reset by pitch_set_default [#12441](https://github.com/mixxxdj/mixxx/pull/12441)
-* Korg nanoKONTROL2: Removed Mixco scripts [#2682](https://github.com/mixxxdj/mixxx/pull/2682)
* Korg nanoKONTROL2: Don't try to configure more than 4 main decks [#12322](https://github.com/mixxxdj/mixxx/pull/12322) [#12317](https://github.com/mixxxdj/mixxx/issues/12317)
+* Korg nanoKONTROL2: Removed along with Mixco scripts [#2682](https://github.com/mixxxdj/mixxx/pull/2682)
* MAudio Xponent: Removed along with Mixco scripts [#2682](https://github.com/mixxxdj/mixxx/pull/2682)
* MIDI4lights: Give beginTimer callbacks the anonymous function expression form [#12048](https://github.com/mixxxdj/mixxx/pull/12048)
* Novation Twitch: Removed along with Mixco scripts [#2682](https://github.com/mixxxdj/mixxx/pull/2682)
* Novation Launchpad: Update controller scripts [#2600](https://github.com/mixxxdj/mixxx/pull/2600) [#11914](https://github.com/mixxxdj/mixxx/pull/11914)
* Numark DJ2GO2 Touch: Fix sampler, hotcue, beatloop buttons [#4287](https://github.com/mixxxdj/mixxx/pull/4287) [#11595](https://github.com/mixxxdj/mixxx/pull/11595)
* Numark MixTrack Pro 3: Fix beginTimer callback syntax [#12401](https://github.com/mixxxdj/mixxx/pull/12401) [#12369](https://github.com/mixxxdj/mixxx/issues/12369)
-* Pioneer DDJ-FLX4: New mapping base on DDJ-400 [#11245](https://github.com/mixxxdj/mixxx/pull/11245)
* Roland DJ-505: Make blinking lights blink in sync and other improvements [#4159](https://github.com/mixxxdj/mixxx/pull/4159) [#4517](https://github.com/mixxxdj/mixxx/pull/4517)
* Traktor Kontrol S2 MK1: Add calibration and refactor [#11237](https://github.com/mixxxdj/mixxx/pull/11237)
* Traktor Kontrol S2 MK2 fix loaded chain preset CO [#11823](https://github.com/mixxxdj/mixxx/pull/11823) [#10667](https://github.com/mixxxdj/mixxx/issues/10667)
@@ -355,9 +377,6 @@
[#10645](https://github.com/mixxxdj/mixxx/issues/10645)
[#12409](https://github.com/mixxxdj/mixxx/pull/12409)
[#12510](https://github.com/mixxxdj/mixxx/pull/12510)
-* Traktor Kontrol S4 Mk3: add controller mapping [#11284](https://github.com/mixxxdj/mixxx/pull/11284)
-* Traktor Kontrol Z1: Add new HID mapping [#12366](https://github.com/mixxxdj/mixxx/pull/12366) [#12426](https://github.com/mixxxdj/mixxx/pull/12426)
-* Yaeltex MiniMixxx: Add controller mapping [#4350](https://github.com/mixxxdj/mixxx/pull/4350)
* Various mappings: Fix `waveform_zoom` ranges [#12393](https://github.com/mixxxdj/mixxx/pull/12393)
### Controller Backend
@@ -376,34 +395,32 @@
* HID mappings: Small fixes for common-hid-packet-parser.js [#11925](https://github.com/mixxxdj/mixxx/pull/11925)
* HID mappings: Add [Main] to the list of valid groups [#12102](https://github.com/mixxxdj/mixxx/pull/12102) [#12406](https://github.com/mixxxdj/mixxx/pull/12406)
* Consistently use "mapping" instead of "preset" to refer to controller mappings [#3472](https://github.com/mixxxdj/mixxx/pull/3472)
-* Library: Add control object `[Library],show_track_menu` to open/close the track menu [#4465](https://github.com/mixxxdj/mixxx/pull/4465)
-* Library: Add control object `[Library],sort_focused_column` [#4749](https://github.com/mixxxdj/mixxx/pull/4749) [#4763](https://github.com/mixxxdj/mixxx/pull/4763) [#10719](https://github.com/mixxxdj/mixxx/issues/10719)
+* Introduce new control object `[Library],show_track_menu` to open/close the track menu [#4465](https://github.com/mixxxdj/mixxx/pull/4465)
+* Introduce new control object `[Library],sort_focused_column` [#4749](https://github.com/mixxxdj/mixxx/pull/4749) [#4763](https://github.com/mixxxdj/mixxx/pull/4763) [#10719](https://github.com/mixxxdj/mixxx/issues/10719)
* Introduce new control objects `[Master],indicator_250millis` and `[Master],indicator_500millis` [#4157](https://github.com/mixxxdj/mixxx/pull/4157)
* Introduce new control object `[Library],clear_search` [#4331](https://github.com/mixxxdj/mixxx/pull/4331)
* Introduce new control object `[Library],focused_widget` to focus library directly [#4369](https://github.com/mixxxdj/mixxx/pull/4369) [#4490](https://github.com/mixxxdj/mixxx/pull/4490)
* Introduce new control object `LoadTrackFromDeck` and `LoadTrackFromSampler` [#11244](https://github.com/mixxxdj/mixxx/pull/11244)
-* Search bar: Remove ESC shortcut in favour of new `[Library],focused_widget` [#4571](https://github.com/mixxxdj/mixxx/pull/4571)
-* Beat spinBox/AutoDJ spinbox: Enter & Esc also move focus to library [#4617](https://github.com/mixxxdj/mixxx/pull/4617) [#4845](https://github.com/mixxxdj/mixxx/pull/4845)
* Don't automatically enable controller if it was disabled before [#4244](https://github.com/mixxxdj/mixxx/pull/4244) [#10503](https://github.com/mixxxdj/mixxx/issues/10503)
* Enable Qt logging categories for controller logging [#4523](https://github.com/mixxxdj/mixxx/pull/4523)
* Fix segfault during Mixxx shutdown due to a stale controller connection [#4476](https://github.com/mixxxdj/mixxx/pull/4476) [#10553](https://github.com/mixxxdj/mixxx/issues/10553)
* Components JS: Fix syncbutton [#4329](https://github.com/mixxxdj/mixxx/pull/4329)
* Components JS: Add script.posMod for euclidean modulo [#11415](https://github.com/mixxxdj/mixxx/pull/11415)
* Components JS: make JogWheelBasic correctly switch which deck it controls [#11913](https://github.com/mixxxdj/mixxx/pull/11913) [#11867](https://github.com/mixxxdj/mixxx/issues/11867)
-* Added Trace for the mapping connections, to allow JS profiling [#4766](https://github.com/mixxxdj/mixxx/pull/4766)
+* Add Trace for the mapping connections, to allow JS profiling [#4766](https://github.com/mixxxdj/mixxx/pull/4766)
* Controller preferences: Allow creating a new mapping with 'No Mapping' selected
[#4905](https://github.com/mixxxdj/mixxx/pull/4905)
[#10540](https://github.com/mixxxdj/mixxx/issues/10540)
[#10539](https://github.com/mixxxdj/mixxx/issues/10539)
-* Added TypeScript declarations for engine and controller scripting API to improve IDE code completion during mapping developent [#4759](https://github.com/mixxxdj/mixxx/pull/4759)
+* Add TypeScript declarations for engine and controller scripting API to improve IDE code completion during mapping developent [#4759](https://github.com/mixxxdj/mixxx/pull/4759)
* Retire Mixco Scripts [#2682](https://github.com/mixxxdj/mixxx/pull/2682)
* Relax strictness of `ControllerScriptInterfaceLegacy` methods. [#11474](https://github.com/mixxxdj/mixxx/pull/11474) [#11473](https://github.com/mixxxdj/mixxx/issues/11473)
-* feat(control): Do not show CO aliases in developer tools window [#12265](https://github.com/mixxxdj/mixxx/pull/12265)
+* Do not show ControlObject aliases in developer tools window [#12265](https://github.com/mixxxdj/mixxx/pull/12265)
* Do not use deprecated COs in C++ code/Keyboard Mapping/Skins [#11990](https://github.com/mixxxdj/mixxx/pull/11990)
-* Fix creation of Sampler "end_of_track" CO [#12305](https://github.com/mixxxdj/mixxx/pull/12305) [#12304](https://github.com/mixxxdj/mixxx/issues/12304)
-* Adds a test SoftTakeoverTest.CatchOutOfBounds [#12114](https://github.com/mixxxdj/mixxx/pull/12114) [#12011](https://github.com/mixxxdj/mixxx/issues/12011)
-* make WHotcueButton learnable with the MIDI Wizard [#12252](https://github.com/mixxxdj/mixxx/pull/12252)
-* Control picker menu: add 'waveform_zoom_set_default' [#12247](https://github.com/mixxxdj/mixxx/pull/12247)
+* Fix creation of Sampler `end_of_track` ControlObjects [#12305](https://github.com/mixxxdj/mixxx/pull/12305) [#12304](https://github.com/mixxxdj/mixxx/issues/12304)
+* Add a test SoftTakeoverTest.CatchOutOfBounds [#12114](https://github.com/mixxxdj/mixxx/pull/12114) [#12011](https://github.com/mixxxdj/mixxx/issues/12011)
+* Make WHotcueButton learnable with the MIDI Wizard [#12252](https://github.com/mixxxdj/mixxx/pull/12252)
+* Control picker menu: add `waveform_zoom_set_default` [#12247](https://github.com/mixxxdj/mixxx/pull/12247)
* CO Renaming
[#12022](https://github.com/mixxxdj/mixxx/pull/12022)
[#12021](https://github.com/mixxxdj/mixxx/pull/12021)
@@ -411,12 +428,12 @@
[#11996](https://github.com/mixxxdj/mixxx/pull/11996)
[#11980](https://github.com/mixxxdj/mixxx/pull/11980)
[#12007](https://github.com/mixxxdj/mixxx/pull/12007)
-* Fix use of deprecated COs in Skins [#12030](https://github.com/mixxxdj/mixxx/pull/12030)
+* Remove deprecated ControlObjects from Skins [#12030](https://github.com/mixxxdj/mixxx/pull/12030)
* Log warning if deprecated control is used [#11972](https://github.com/mixxxdj/mixxx/pull/11972)
* ControlObject alias improvements [#11973](https://github.com/mixxxdj/mixxx/pull/11973)
-* Repeat certain control actions if keyboard key is held [#12474](https://github.com/mixxxdj/mixxx/pull/12474)
+* Keyboard: Repeat certain control actions if key is held [#12474](https://github.com/mixxxdj/mixxx/pull/12474)
* Keyboard mapping: Return triggers doubleclick, move Preview functions to P / Shift+P [#12639](https://github.com/mixxxdj/mixxx/pull/12639)
-* Keyboard sheet update [#12578](https://github.com/mixxxdj/mixxx/pull/12578)
+* Update keyboard sheet [#12578](https://github.com/mixxxdj/mixxx/pull/12578)
* Logging: Add support for `QT_MESSAGE_PATTERN` environment variable
[#3204](https://github.com/mixxxdj/mixxx/pull/3204)
[#3518](https://github.com/mixxxdj/mixxx/pull/3518)
@@ -428,31 +445,25 @@
[#1695](https://github.com/mixxxdj/mixxx/pull/1695)
[#3622](https://github.com/mixxxdj/mixxx/pull/3622)
[#3624](https://github.com/mixxxdj/mixxx/pull/3624)
-* Make beat indicator control behaviour more natural [#3608](https://github.com/mixxxdj/mixxx/pull/3608)
* Allow skin scaling from preferences
[#3960](https://github.com/mixxxdj/mixxx/pull/3960)
[#11588](https://github.com/mixxxdj/mixxx/pull/11588)
[#11586](https://github.com/mixxxdj/mixxx/issues/11586)
-* Increased pixmapCache size limit and made it dependent on devicePixelRatio (for HiDPI/Retina displays) [#12416](https://github.com/mixxxdj/mixxx/pull/12416)
-* Fix Icon rendering on HiDPI/retina screens [#12407](https://github.com/mixxxdj/mixxx/pull/12407) [#12361](https://github.com/mixxxdj/mixxx/issues/12361)
+* Fix icon rendering on HiDPI/Retina screens [#12407](https://github.com/mixxxdj/mixxx/pull/12407) [#12361](https://github.com/mixxxdj/mixxx/issues/12361)
+* Increase pixmapCache size limit and made it dependent on devicePixelRatio (for HiDPI/Retina displays) [#12416](https://github.com/mixxxdj/mixxx/pull/12416)
+* Make beat indicator control behaviour more natural [#3608](https://github.com/mixxxdj/mixxx/pull/3608)
* Fix crash if no skin is available
[#3918](https://github.com/mixxxdj/mixxx/pull/3918)
[#3939](https://github.com/mixxxdj/mixxx/pull/3939)
+* Fix crash when starting without a valid skin directory [#4575](https://github.com/mixxxdj/mixxx/pull/4575) [#10461](https://github.com/mixxxdj/mixxx/issues/10461)
* Fix leaked controls [#4213](https://github.com/mixxxdj/mixxx/pull/4213) [#10293](https://github.com/mixxxdj/mixxx/issues/10293)
-* Shade: Remove initial setting of now accessible effect controls [#4398](https://github.com/mixxxdj/mixxx/pull/4398) [#10557](https://github.com/mixxxdj/mixxx/issues/10557)
-* Shade: Audio Latency meter fix [#11601](https://github.com/mixxxdj/mixxx/pull/11601)
* Fix switching from Shade to other skins [#4421](https://github.com/mixxxdj/mixxx/pull/4421) [#10558](https://github.com/mixxxdj/mixxx/issues/10558)
* Use double click to reset knobs and sliders [#4509](https://github.com/mixxxdj/mixxx/pull/4509) [#9947](https://github.com/mixxxdj/mixxx/issues/9947)
* Use info not warning for skin COs [#4525](https://github.com/mixxxdj/mixxx/pull/4525)
* Spinny: Allow to toggle cover art at runtime [#4565](https://github.com/mixxxdj/mixxx/pull/4565) [#10015](https://github.com/mixxxdj/mixxx/issues/10015)
-* Add new searchbox styles [#4505](https://github.com/mixxxdj/mixxx/pull/4505)
-* Add new Quick Effect selector and effect chain buttons [#4501](https://github.com/mixxxdj/mixxx/pull/4501) [#4502](https://github.com/mixxxdj/mixxx/pull/4502) [#4503](https://github.com/mixxxdj/mixxx/pull/4503) [#4590](https://github.com/mixxxdj/mixxx/pull/4590) [#4593](https://github.com/mixxxdj/mixxx/pull/4593)
* Passthrough: improve UI / UX [#4794](https://github.com/mixxxdj/mixxx/pull/4794)
-* Fix crash when starting without a valid skin directory [#4575](https://github.com/mixxxdj/mixxx/pull/4575) [#10461](https://github.com/mixxxdj/mixxx/issues/10461)
* Knob: Hide cursor on wheel event for .8s [#11077](https://github.com/mixxxdj/mixxx/pull/11077)
-* Effect parameter label: set hand cursor to make dragability more discoverable [#11062](https://github.com/mixxxdj/mixxx/pull/11062)
* Move skin control hack to c++ (spinny/cover controls, mic/ducking controls) [#11183](https://github.com/mixxxdj/mixxx/pull/11183)
-* Show effect parameter units in parameter name label [#11041](https://github.com/mixxxdj/mixxx/pull/11041) [#11194](https://github.com/mixxxdj/mixxx/pull/11194)
* LateNight: Move logo to the right [#4677](https://github.com/mixxxdj/mixxx/pull/4677)
* LateNight: Use correct tooltip for key control toggle [#4696](https://github.com/mixxxdj/mixxx/pull/4696)
* LateNight: Add toggles to show loop and beatjump controls [#4713](https://github.com/mixxxdj/mixxx/pull/4713)
@@ -460,13 +471,15 @@
* LateNight: Add buffer underflow indicator [#4906](https://github.com/mixxxdj/mixxx/pull/4906) [#10978](https://github.com/mixxxdj/mixxx/pull/10978)
* LateNight: Fix xfader icons in samplers and aux units [#12477](https://github.com/mixxxdj/mixxx/pull/12477)
* Add LateNight (64 Samplers) [#11715](https://github.com/mixxxdj/mixxx/pull/11715)
+* Deere: fix skin/library layout (library missing in default view with Qt6) [#11912](https://github.com/mixxxdj/mixxx/pull/11912)
+* Deere: use decks' waveform colors for sliders (Vol + pitch) [#12129](https://github.com/mixxxdj/mixxx/pull/12129) [#10240](https://github.com/mixxxdj/mixxx/issues/10240)
+* Shade: Remove initial setting of now accessible effect controls [#4398](https://github.com/mixxxdj/mixxx/pull/4398) [#10557](https://github.com/mixxxdj/mixxx/issues/10557)
+* Shade: Audio Latency meter fix [#11601](https://github.com/mixxxdj/mixxx/pull/11601)
* Fix outdated tooltips
[#11387](https://github.com/mixxxdj/mixxx/pull/11387)
[#11384](https://github.com/mixxxdj/mixxx/issues/11384)
[#11860](https://github.com/mixxxdj/mixxx/pull/11860)
* Add settings directory link to Help menu [#11670](https://github.com/mixxxdj/mixxx/pull/11670) [#11667](https://github.com/mixxxdj/mixxx/issues/11667)
-* Deere: fix skin/library layout (library missing in default view with Qt6) [#11912](https://github.com/mixxxdj/mixxx/pull/11912)
-* Deere: use decks' waveform colors for sliders (Vol + pitch) [#12129](https://github.com/mixxxdj/mixxx/pull/12129) [#10240](https://github.com/mixxxdj/mixxx/issues/10240)
* Fix sidebar item styling
[#11975](https://github.com/mixxxdj/mixxx/pull/11975)
[#11957](https://github.com/mixxxdj/mixxx/issues/11957)
@@ -477,11 +490,7 @@
* Fix inconsistent/wrong musical keys in the UI [#12051](https://github.com/mixxxdj/mixxx/pull/12051) [#12044](https://github.com/mixxxdj/mixxx/issues/12044)
* Add `skins:` path alias [#12463](https://github.com/mixxxdj/mixxx/pull/12463)
* Remove `Text`, use `TrackProperty` or `Label` [#12004](https://github.com/mixxxdj/mixxx/pull/12004)
-* Implement Un-eject by pressing eject again
- [#4668](https://github.com/mixxxdj/mixxx/pull/4668)
- [#11246](https://github.com/mixxxdj/mixxx/pull/11246)
-* Implement Un-replace by double-clicking eject
- [#11246](https://github.com/mixxxdj/mixxx/pull/11246)
+* Beat spinBox/AutoDJ spinbox: Enter & Esc also move focus to library [#4617](https://github.com/mixxxdj/mixxx/pull/4617) [#4845](https://github.com/mixxxdj/mixxx/pull/4845)
### Waveforms and GL Widgets
@@ -497,26 +506,32 @@
* Default to 60 Hz waveform refresh rate [#11918](https://github.com/mixxxdj/mixxx/pull/11918)
* Introduce a VSsync mode driven by a phase locked loop [#12469](https://github.com/mixxxdj/mixxx/pull/12469)
* Make VSync mode 0 refer to the default mode and make ST_PLL the default on macOS, ST_TIMER otherwise [#12489](https://github.com/mixxxdj/mixxx/pull/12489)
-* Fix micro jitter from clamping position offset to vsync interval [#12470](https://github.com/mixxxdj/mixxx/pull/12470)
-* Avoid flickering when resizing [#12487](https://github.com/mixxxdj/mixxx/pull/12487)
* Use WaveformWidgetType::AllShaderRGBWaveform as autoChooseWidgetType [#11822](https://github.com/mixxxdj/mixxx/pull/11822)
* Add new "RGB Stacked" waveform [#3153](https://github.com/mixxxdj/mixxx/pull/3153)
+* Fix micro jitter from clamping position offset to vsync interval [#12470](https://github.com/mixxxdj/mixxx/pull/12470)
+* Avoid flickering when resizing [#12487](https://github.com/mixxxdj/mixxx/pull/12487)
* Invert scroll wheel waveform zoom direction to mach other applications [#4195](https://github.com/mixxxdj/mixxx/pull/4195)
* Waveform scrolling: Use set interval setting to fix performance degradation for AMD graphics adapters [#11681](https://github.com/mixxxdj/mixxx/pull/11681) [#11617](https://github.com/mixxxdj/mixxx/issues/11617)
* Fix waveform zooming [#11650](https://github.com/mixxxdj/mixxx/pull/11650) [#11626](https://github.com/mixxxdj/mixxx/issues/11626)
* Fix OpenGL version detection [#11673](https://github.com/mixxxdj/mixxx/pull/11673)
* Fix crash when no GL context is available [#11963](https://github.com/mixxxdj/mixxx/pull/11963) [#11929](https://github.com/mixxxdj/mixxx/issues/11929)
* Fix stopped waveform rendering in case of vinyl control [#11977](https://github.com/mixxxdj/mixxx/pull/11977) [#10764](https://github.com/mixxxdj/mixxx/issues/10764)
+* Fix visual play position related to looping
+ [#11840](https://github.com/mixxxdj/mixxx/pull/11840)
+ [#11836](https://github.com/mixxxdj/mixxx/issues/11836)
+ [#12538](https://github.com/mixxxdj/mixxx/pull/12538)
+ [#12506](https://github.com/mixxxdj/mixxx/issues/12506)
+ [#12513](https://github.com/mixxxdj/mixxx/issues/12513)
+* Fix for visual position while scratching outside of an activated loop [#12281](https://github.com/mixxxdj/mixxx/pull/12281) [#12274](https://github.com/mixxxdj/mixxx/issues/12274)
* Spinny: Fix drawing of non-square cover arts [#11971](https://github.com/mixxxdj/mixxx/pull/11971) [#11967](https://github.com/mixxxdj/mixxx/issues/11967)
* Spinny/VU-Meter: Fix drawing [#12010](https://github.com/mixxxdj/mixxx/pull/12010) [#11930](https://github.com/mixxxdj/mixxx/issues/11930)
-* Don't use OpenGL for the VU-Meters by default [#11722](https://github.com/mixxxdj/mixxx/pull/11722)
+* VU-Meter: Don't use OpenGL by default [#11722](https://github.com/mixxxdj/mixxx/pull/11722)
* Improve GLSL pre-roll triangles [#12100](https://github.com/mixxxdj/mixxx/pull/12100) [#12015](https://github.com/mixxxdj/mixxx/issues/12015)
* Make scaling of GLSL RGB and RGB L/R waveform amplitudes consistent with simple waveform [#12205](https://github.com/mixxxdj/mixxx/pull/12205) [#12356](https://github.com/mixxxdj/mixxx/pull/12356)
* Improve rendering of waveform marks [#12203](https://github.com/mixxxdj/mixxx/pull/12203) [#12237](https://github.com/mixxxdj/mixxx/pull/12237)
-* Fix for visual waveform position while scratching outside of an activated loop [#12281](https://github.com/mixxxdj/mixxx/pull/12281) [#12274](https://github.com/mixxxdj/mixxx/issues/12274)
* avoid overlapping marks [#12273](https://github.com/mixxxdj/mixxx/pull/12273)
* gradually "compact" the markers if the waveform height is reduced [#12501](https://github.com/mixxxdj/mixxx/pull/12501)
-* fix clamping of the index for drawing the waveform left of zero position [#12411](https://github.com/mixxxdj/mixxx/pull/12411)
+* Fix clamping of the index for drawing the waveform left of zero position [#12411](https://github.com/mixxxdj/mixxx/pull/12411)
* Fix possible crash when closing Mixxx [#12314](https://github.com/mixxxdj/mixxx/pull/12314) [#11737](https://github.com/mixxxdj/mixxx/issues/11737)
* Fix EGL support
[#11982](https://github.com/mixxxdj/mixxx/pull/11982)
@@ -527,45 +542,33 @@
[#11995](https://github.com/mixxxdj/mixxx/pull/11995)
[#11994](https://github.com/mixxxdj/mixxx/pull/11994)
[#12607](https://github.com/mixxxdj/mixxx/pull/12607)
-* Preferences waveforms: recall correct waveform type when selecting an overview type
+* Preferences: recall correct waveform type when selecting an overview type
[#12231](https://github.com/mixxxdj/mixxx/pull/12231)
[#12226](https://github.com/mixxxdj/mixxx/issues/12226)
-* Fix for LoopIn/LoopOut visualisation in waveforms
- [#12538](https://github.com/mixxxdj/mixxx/pull/12538)
- [#12506](https://github.com/mixxxdj/mixxx/issues/12506)
- [#12513](https://github.com/mixxxdj/mixxx/issues/12513)
+
+### Cover Art
+
+* Prevent wrong cover art display due to hash conflicts [#2524](https://github.com/mixxxdj/mixxx/pull/2524) [#4904](https://github.com/mixxxdj/mixxx/pull/4904)
+* Add background color for quick cover art preview [#2524](https://github.com/mixxxdj/mixxx/pull/2524)
+* Fix coverart tooltip if cover is not cached [#12087](https://github.com/mixxxdj/mixxx/pull/12087)
+* Add cover art fetcher to the Musicbrainz dialog
+ [#10908](https://github.com/mixxxdj/mixxx/pull/10908)
+ [#4871](https://github.com/mixxxdj/mixxx/pull/4871)
+ [#10795](https://github.com/mixxxdj/mixxx/issues/10795)
+ [#10796](https://github.com/mixxxdj/mixxx/issues/10796)
+ [#10902](https://github.com/mixxxdj/mixxx/pull/10902)
+ [#4851](https://github.com/mixxxdj/mixxx/pull/4851)
+ [#11938](https://github.com/mixxxdj/mixxx/pull/11938)
+ [#11086](https://github.com/mixxxdj/mixxx/issues/11086)
+ [#12041](https://github.com/mixxxdj/mixxx/pull/12041)
+ [#12300](https://github.com/mixxxdj/mixxx/pull/12300)
+ [#12543](https://github.com/mixxxdj/mixxx/pull/12543)
+ [#12532](https://github.com/mixxxdj/mixxx/issues/12532)
+ [#12543](https://github.com/mixxxdj/mixxx/pull/12543)
+* CoverArtCache refactoring + Fix scrolling lag after updating Mixxx [#12009](https://github.com/mixxxdj/mixxx/pull/12009)
### Effects
-* Add a noise effect [#2921](https://github.com/mixxxdj/mixxx/pull/2921)
-* Add a pitch shift effect
- [#4775](https://github.com/mixxxdj/mixxx/pull/4775)
- [#7389](https://github.com/mixxxdj/mixxx/issues/7389)
- [#4810](https://github.com/mixxxdj/mixxx/pull/4810)
- [#4901](https://github.com/mixxxdj/mixxx/pull/4901)
- [#10858](https://github.com/mixxxdj/mixxx/pull/10858)
-* Fix gain compensation for the Moog filter [#11177](https://github.com/mixxxdj/mixxx/pull/11177)
-* Fix memory leak in AutoPan [#11346](https://github.com/mixxxdj/mixxx/pull/11346)
-* Add a distortion effect [#10932](https://github.com/mixxxdj/mixxx/pull/10932)
-* Use '---' instead of 'None' for empty slots to spot them easier [#4469](https://github.com/mixxxdj/mixxx/pull/4469)
-* EngineFilterDelay: clamp wrong delay values [#4869](https://github.com/mixxxdj/mixxx/pull/4869)
-* Fix crash when changing effect unit routing [#4707](https://github.com/mixxxdj/mixxx/pull/4707) [#9331](https://github.com/mixxxdj/mixxx/issues/9331)
-* Clear effect buffer after ejecting a track [#10692](https://github.com/mixxxdj/mixxx/issues/10692)
-* Effect parameter: Briefly show value in parameter name widget
- [#11032](https://github.com/mixxxdj/mixxx/pull/11032)
- [#9022](https://github.com/mixxxdj/mixxx/issues/9022)
- [#11034](https://github.com/mixxxdj/mixxx/pull/11034)
-* Effect parameter knobs: implement ValueScaler::Integral, snap value to int [#11061](https://github.com/mixxxdj/mixxx/pull/11061)
-* Allow clearing chains with empty '---' preset [#10859](https://github.com/mixxxdj/mixxx/pull/10859) [#10777](https://github.com/mixxxdj/mixxx/issues/10777)
-* Show Effectchain tooltip [#11902](https://github.com/mixxxdj/mixxx/pull/11902) [#10605](https://github.com/mixxxdj/mixxx/issues/10605)
-* Center Super knob when loading empty (QuickEffect) chain preset [#12320](https://github.com/mixxxdj/mixxx/pull/12320)
-* Read effect data for decks added after initial setup [#12282](https://github.com/mixxxdj/mixxx/pull/12282) [#12277](https://github.com/mixxxdj/mixxx/issues/12277)
-* Fix deletion of effect chain presets created in current session [#11886](https://github.com/mixxxdj/mixxx/pull/11886)
-* Don't reset "super" and "mix" knob on startup [#11781](https://github.com/mixxxdj/mixxx/pull/11781) [#11773](https://github.com/mixxxdj/mixxx/issues/11773)
-* Re-add empty chain preset when resetting to defaults [#11705](https://github.com/mixxxdj/mixxx/pull/11705)
-* Add a missing early return [#11809](https://github.com/mixxxdj/mixxx/pull/11809) [#111808](https://github.com/mixxxdj/mixxx/issues/11808)
-* Pitch Shift effect: set Meta default to 0.5 (center) [#12481](https://github.com/mixxxdj/mixxx/pull/12481)
-* Update EffectSlot meta default value according to loaded effect [#12480](https://github.com/mixxxdj/mixxx/pull/12480) [#12479](https://github.com/mixxxdj/mixxx/issues/12479)
* Effect refactoring: Effect chain saving/loading, parameter hiding/rearrangement, effect preferences overhaul
[#4467](https://github.com/mixxxdj/mixxx/pull/4467)
[#4431](https://github.com/mixxxdj/mixxx/pull/4431)
@@ -594,8 +597,11 @@
[#4691](https://github.com/mixxxdj/mixxx/pull/4691)
[#4704](https://github.com/mixxxdj/mixxx/pull/4704)
[#4748](https://github.com/mixxxdj/mixxx/pull/4748)
- [#4833](https://github.com/mixxxdj/mixxx/pull/4833) [#10762](https://github.com/mixxxdj/mixxx/issues/10762)
- [#4884](https://github.com/mixxxdj/mixxx/pull/4884) [#10802](https://github.com/mixxxdj/mixxx/issues/10802) [#10801](https://github.com/mixxxdj/mixxx/issues/10801)
+ [#4833](https://github.com/mixxxdj/mixxx/pull/4833)
+ [#10762](https://github.com/mixxxdj/mixxx/issues/10762)
+ [#4884](https://github.com/mixxxdj/mixxx/pull/4884)
+ [#10802](https://github.com/mixxxdj/mixxx/issues/10802)
+ [#10801](https://github.com/mixxxdj/mixxx/issues/10801)
[#4899](https://github.com/mixxxdj/mixxx/pull/4899)
[#8817](https://github.com/mixxxdj/mixxx/pull/8817)
[#10868](https://github.com/mixxxdj/mixxx/pull/10868)
@@ -605,11 +611,54 @@
[#11242](https://github.com/mixxxdj/mixxx/pull/11242)
[#10837](https://github.com/mixxxdj/mixxx/pull/10837)
[#10834](https://github.com/mixxxdj/mixxx/issues/10834)
- [#11424](https://github.com/mixxxdj/mixxx/pull/11424) [#11376](https://github.com/mixxxdj/mixxx/pull/11376)
- [#11456](https://github.com/mixxxdj/mixxx/pull/11456) [#11454](https://github.com/mixxxdj/mixxx/issues/11454)
+ [#11424](https://github.com/mixxxdj/mixxx/pull/11424)
+ [#11376](https://github.com/mixxxdj/mixxx/pull/11376)
+ [#11456](https://github.com/mixxxdj/mixxx/pull/11456)
+ [#11454](https://github.com/mixxxdj/mixxx/issues/11454)
[#11695](https://github.com/mixxxdj/mixxx/pull/11695)
[#12633](https://github.com/mixxxdj/mixxx/pull/12633)
[#12561](https://github.com/mixxxdj/mixxx/pull/12561)
+ [#10859](https://github.com/mixxxdj/mixxx/pull/10859)
+ [#10777](https://github.com/mixxxdj/mixxx/issues/10777)
+ [#11886](https://github.com/mixxxdj/mixxx/pull/11886)
+ [#12282](https://github.com/mixxxdj/mixxx/pull/12282)
+ [#12277](https://github.com/mixxxdj/mixxx/issues/12277)
+ [#11705](https://github.com/mixxxdj/mixxx/pull/11705)
+ [#4469](https://github.com/mixxxdj/mixxx/pull/4469)
+ [#11902](https://github.com/mixxxdj/mixxx/pull/11902)
+ [#10605](https://github.com/mixxxdj/mixxx/issues/10605)
+ [#4702](https://github.com/mixxxdj/mixxx/pull/4702)
+ [#10579](https://github.com/mixxxdj/mixxx/issues/10579)
+ [#4501](https://github.com/mixxxdj/mixxx/pull/4501)
+ [#4502](https://github.com/mixxxdj/mixxx/pull/4502)
+ [#4503](https://github.com/mixxxdj/mixxx/pull/4503)
+ [#4590](https://github.com/mixxxdj/mixxx/pull/4590)
+ [#4593](https://github.com/mixxxdj/mixxx/pull/4593)
+ [#11062](https://github.com/mixxxdj/mixxx/pull/11062)
+* Add Noise effect [#2921](https://github.com/mixxxdj/mixxx/pull/2921)
+* Add Pitch Shift effect
+ [#4775](https://github.com/mixxxdj/mixxx/pull/4775)
+ [#7389](https://github.com/mixxxdj/mixxx/issues/7389)
+ [#4810](https://github.com/mixxxdj/mixxx/pull/4810)
+ [#4901](https://github.com/mixxxdj/mixxx/pull/4901)
+ [#10858](https://github.com/mixxxdj/mixxx/pull/10858)
+ [#12481](https://github.com/mixxxdj/mixxx/pull/12481)
+* Add Distortion effect [#10932](https://github.com/mixxxdj/mixxx/pull/10932)
+* Effect parameter knobs: Briefly show parameter value in parameter name widget
+ [#11032](https://github.com/mixxxdj/mixxx/pull/11032)
+ [#9022](https://github.com/mixxxdj/mixxx/issues/9022)
+ [#11034](https://github.com/mixxxdj/mixxx/pull/11034)
+* Effect parameter knobs: Implement ValueScaler::Integral, snap value to int [#11061](https://github.com/mixxxdj/mixxx/pull/11061)
+* Show effect parameter units in parameter name label [#11041](https://github.com/mixxxdj/mixxx/pull/11041) [#11194](https://github.com/mixxxdj/mixxx/pull/11194)
+* Fix gain compensation for the Moog filter [#11177](https://github.com/mixxxdj/mixxx/pull/11177)
+* Fix memory leak in AutoPan [#11346](https://github.com/mixxxdj/mixxx/pull/11346)
+* EngineFilterDelay: clamp wrong delay values [#4869](https://github.com/mixxxdj/mixxx/pull/4869)
+* Fix crash when changing effect unit routing [#4707](https://github.com/mixxxdj/mixxx/pull/4707) [#9331](https://github.com/mixxxdj/mixxx/issues/9331)
+* Clear effect buffer after ejecting a track [#10692](https://github.com/mixxxdj/mixxx/issues/10692)
+* Center Super knob when loading empty (QuickEffect) chain preset [#12320](https://github.com/mixxxdj/mixxx/pull/12320)
+* Don't reset "super" and "mix" knob on startup [#11781](https://github.com/mixxxdj/mixxx/pull/11781) [#11773](https://github.com/mixxxdj/mixxx/issues/11773)
+* Add a missing early return [#11809](https://github.com/mixxxdj/mixxx/pull/11809) [#111808](https://github.com/mixxxdj/mixxx/issues/11808)
+* Update EffectSlot meta default value according to loaded effect [#12480](https://github.com/mixxxdj/mixxx/pull/12480) [#12479](https://github.com/mixxxdj/mixxx/issues/12479)
### Target Support
@@ -696,24 +745,24 @@
### Preferences
-* Always show tooltips in preferences [#4198](https://github.com/mixxxdj/mixxx/pull/4198) [#9716](https://github.com/mixxxdj/mixxx/issues/9716)
-* Preferences > Effects: Fix Tab key navigation / UX [#4702](https://github.com/mixxxdj/mixxx/pull/4702) [#10579](https://github.com/mixxxdj/mixxx/issues/10579)
-* Preferences: Added option to keep deck playing on track load [#10944](https://github.com/mixxxdj/mixxx/pull/10944) [#10548](https://github.com/mixxxdj/mixxx/issues/10548)
-* Preferences: always enable Alt shortcut keys [#11145](https://github.com/mixxxdj/mixxx/pull/11145) [#10413](https://github.com/mixxxdj/mixxx/issues/10413)
-* Preferences: simplification & layout fixes [#12429](https://github.com/mixxxdj/mixxx/pull/12429)
-* Pref Sound: auto select free device channels [#11859](https://github.com/mixxxdj/mixxx/pull/11859) [#10163](https://github.com/mixxxdj/mixxx/issues/10163)
-* minor Preferences fixes [#12399](https://github.com/mixxxdj/mixxx/pull/12399)
-* Preferences: use helper for input widget scroll safeguard [#11663](https://github.com/mixxxdj/mixxx/pull/11663)
+* Always show tooltips [#4198](https://github.com/mixxxdj/mixxx/pull/4198) [#9716](https://github.com/mixxxdj/mixxx/issues/9716)
+* Add option to keep deck playing on track load [#10944](https://github.com/mixxxdj/mixxx/pull/10944) [#10548](https://github.com/mixxxdj/mixxx/issues/10548)
+* Always enable Alt shortcut keys [#11145](https://github.com/mixxxdj/mixxx/pull/11145) [#10413](https://github.com/mixxxdj/mixxx/issues/10413)
+* Sound Hardware: auto select free device channels [#11859](https://github.com/mixxxdj/mixxx/pull/11859) [#10163](https://github.com/mixxxdj/mixxx/issues/10163)
+* Various layout and UX fixes
+ [#12429](https://github.com/mixxxdj/mixxx/pull/12429)
+ [#12399](https://github.com/mixxxdj/mixxx/pull/12399)
+ [#11663](https://github.com/mixxxdj/mixxx/pull/11663)
+ [#11926](https://github.com/mixxxdj/mixxx/pull/11926)
* macOS: set preferences dialog title to the selected page title [#11696](https://github.com/mixxxdj/mixxx/pull/11696)
* macOS: fix the preferences menu and opening the settings directory [#11679](https://github.com/mixxxdj/mixxx/pull/11679)
* macOS: fix slider styling in preferences dialog [#11647](https://github.com/mixxxdj/mixxx/pull/11647)
-* Preferences Vinyl control Improve quality indicator [#3279](https://github.com/mixxxdj/mixxx/pull/3279)
-* Preferences > Mixer: apply & save settings only in slotApply(), fix bugs, improve UX [#11527](https://github.com/mixxxdj/mixxx/pull/11527)
-* Preferences > Mixer: fix reset of EQ auto-reset checkbox [#11818](https://github.com/mixxxdj/mixxx/pull/11818) [#11817](https://github.com/mixxxdj/mixxx/issues/11817)
-* Preferences > Interface: avoid unneeded skin reload, clean up [#11853](https://github.com/mixxxdj/mixxx/pull/11853)
-* Preferences > Hardware: sound tab order [#11926](https://github.com/mixxxdj/mixxx/pull/11926)
-* Library Preferences: Added link to settings files info in the manual [#4367](https://github.com/mixxxdj/mixxx/pull/4367)
-* Controller preferences: add search bars to mapping tables [#11165](https://github.com/mixxxdj/mixxx/pull/11165)
+* Vinyl control: Improve quality indicator [#3279](https://github.com/mixxxdj/mixxx/pull/3279)
+* Mixer: apply & save settings only in slotApply(), fix bugs, improve UX [#11527](https://github.com/mixxxdj/mixxx/pull/11527)
+* Mixer: fix reset of EQ auto-reset checkbox [#11818](https://github.com/mixxxdj/mixxx/pull/11818) [#11817](https://github.com/mixxxdj/mixxx/issues/11817)
+* Interface: avoid unneeded skin reload, clean up [#11853](https://github.com/mixxxdj/mixxx/pull/11853)
+* Library: Add link to settings files info in the manual [#4367](https://github.com/mixxxdj/mixxx/pull/4367)
+* Controllers: add search bars to mapping tables [#11165](https://github.com/mixxxdj/mixxx/pull/11165)
* Add 13 new translation languages [#4785](https://github.com/mixxxdj/mixxx/pull/4785) [#9702](https://github.com/mixxxdj/mixxx/issues/9702)
### Known issues
diff --git a/res/linux/org.mixxx.Mixxx.metainfo.xml b/res/linux/org.mixxx.Mixxx.metainfo.xml
index c8eb50a91ce..f00e4c1c069 100644
--- a/res/linux/org.mixxx.Mixxx.metainfo.xml
+++ b/res/linux/org.mixxx.Mixxx.metainfo.xml
@@ -96,110 +96,223 @@
Do not edit it manually.
-->
- Cover Art
+ Music Library: Tracks Table & Track Menu
- Music Library
+ Music Library: Sidebar & Searchbar
+ Music Library: Backend & Database
+
@@ -800,6 +741,8 @@
#11003
#12637
#12632
+ #12623
+ #12618
+
@@ -1493,14 +1407,6 @@ Make VSync mode 0 refer to the default mode and make ST_PLL the default on macOS, ST_TIMER otherwise #12489 -
- Effects + Cover Art
+ Effects +
+@@ -1918,41 +1864,31 @@