diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/debian/changelog mixxx-2.4.0~alpha2~1084~gb0f19c3101/debian/changelog --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/debian/changelog 2022-01-19 01:30:23.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/debian/changelog 2022-01-19 01:30:25.000000000 +0000 @@ -1,8 +1,8 @@ -mixxx (2.4.0~alpha2~1083~g1d42f55fc0-1~hirsute) hirsute; urgency=medium +mixxx (2.4.0~alpha2~1084~gb0f19c3101-1~hirsute) hirsute; urgency=medium - * Build of 2.4.0~alpha2~1083~g1d42f55fc0 + * Build of 2.4.0~alpha2~1084~gb0f19c3101 - -- RJ Skerry-Ryan Wed, 19 Jan 2022 00:16:16 +0000 + -- RJ Skerry-Ryan Wed, 19 Jan 2022 01:28:22 +0000 mixxx (2.3.1-1~bionic) bionic; urgency=medium diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/control/control.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/control/control.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/control/control.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/control/control.h 2022-01-19 01:03:12.000000000 +0000 @@ -209,6 +209,7 @@ /// The constant ControlDoublePrivate version is used as dummy for default /// constructed control objects class ControlDoublePrivateConst : public ControlDoublePrivate { + Q_OBJECT public: ~ControlDoublePrivateConst() override = default; diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/bulk/bulkenumerator.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/bulk/bulkenumerator.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/bulk/bulkenumerator.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/bulk/bulkenumerator.h 2022-01-19 01:03:12.000000000 +0000 @@ -6,6 +6,7 @@ /// Locate supported USB bulk controllers class BulkEnumerator : public ControllerEnumerator { + Q_OBJECT public: explicit BulkEnumerator(UserSettingsPointer pConfig); virtual ~BulkEnumerator(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/delegates/midibytedelegate.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/delegates/midibytedelegate.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/delegates/midibytedelegate.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/delegates/midibytedelegate.h 2022-01-19 01:03:12.000000000 +0000 @@ -3,6 +3,7 @@ #include class MidiByteDelegate : public QStyledItemDelegate { + Q_OBJECT public: MidiByteDelegate(QObject* pParent); virtual ~MidiByteDelegate(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/delegates/midichanneldelegate.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/delegates/midichanneldelegate.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/delegates/midichanneldelegate.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/delegates/midichanneldelegate.h 2022-01-19 01:03:12.000000000 +0000 @@ -3,6 +3,7 @@ #include class MidiChannelDelegate : public QStyledItemDelegate { + Q_OBJECT public: MidiChannelDelegate(QObject* pParent); virtual ~MidiChannelDelegate(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/delegates/midiopcodedelegate.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/delegates/midiopcodedelegate.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/delegates/midiopcodedelegate.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/delegates/midiopcodedelegate.h 2022-01-19 01:03:12.000000000 +0000 @@ -3,6 +3,7 @@ #include class MidiOpCodeDelegate : public QStyledItemDelegate { + Q_OBJECT public: MidiOpCodeDelegate(QObject* pParent); virtual ~MidiOpCodeDelegate(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/hid/hidenumerator.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/hid/hidenumerator.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/controllers/hid/hidenumerator.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/controllers/hid/hidenumerator.h 2022-01-19 01:03:12.000000000 +0000 @@ -5,6 +5,7 @@ /// This class handles discovery and enumeration of DJ controllers that use the /// USB-HID protocol. class HidEnumerator : public ControllerEnumerator { + Q_OBJECT public: HidEnumerator() = default; ~HidEnumerator() override; diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/backends/effectmanifestparameter.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/backends/effectmanifestparameter.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/backends/effectmanifestparameter.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/backends/effectmanifestparameter.h 2022-01-19 01:03:12.000000000 +0000 @@ -7,6 +7,7 @@ #include "effects/defs.h" #include "util/assert.h" +#include "util/compatibility/qhash.h" class EffectManifestParameter; typedef QSharedPointer EffectManifestParameterPointer; @@ -277,6 +278,6 @@ typedef EffectManifestParameter::ParameterType EffectParameterType; -inline uint qHash(const EffectParameterType& parameterType) { - return static_cast(parameterType); +inline qhash_seed_t qHash(const EffectParameterType& parameterType) { + return static_cast(parameterType); } diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/equalizereffectchain.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/equalizereffectchain.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/equalizereffectchain.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/equalizereffectchain.h 2022-01-19 01:03:12.000000000 +0000 @@ -9,6 +9,7 @@ /// EqualizerEffectChain is hardwired to one input channel, always /// enabled, and has the mix knob fully enabled. class EqualizerEffectChain : public PerGroupEffectChain { + Q_OBJECT public: EqualizerEffectChain(const QString& group, EffectsManager* pEffectsManager, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/outputeffectchain.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/outputeffectchain.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/outputeffectchain.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/outputeffectchain.h 2022-01-19 01:03:12.000000000 +0000 @@ -5,6 +5,7 @@ /// OutputEffectChain is hardwired to only one of Mixxx's outputs. /// This is used for the main mix equalizer. class OutputEffectChain : public EffectChain { + Q_OBJECT public: OutputEffectChain(EffectsManager* pEffectsManager, EffectsMessengerPointer pEffectsMessenger); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/pergroupeffectchain.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/pergroupeffectchain.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/pergroupeffectchain.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/pergroupeffectchain.h 2022-01-19 01:03:12.000000000 +0000 @@ -5,6 +5,7 @@ /// PerGroupEffectChain is a base class hardwired for one input channel. /// The routing switches are not presented to the user. class PerGroupEffectChain : public EffectChain { + Q_OBJECT public: PerGroupEffectChain(const QString& group, const QString& chainSlotGroup, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/quickeffectchain.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/quickeffectchain.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/quickeffectchain.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/quickeffectchain.h 2022-01-19 01:03:12.000000000 +0000 @@ -8,6 +8,7 @@ /// then load it into QuickEffectChain. QuickEffectChain is hardwired to one /// input channel with the mix knob fully enabled. class QuickEffectChain : public PerGroupEffectChain { + Q_OBJECT public: QuickEffectChain(const QString& group, EffectsManager* pEffectsManager, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/standardeffectchain.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/standardeffectchain.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/chains/standardeffectchain.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/chains/standardeffectchain.h 2022-01-19 01:03:12.000000000 +0000 @@ -8,6 +8,7 @@ /// linkings. However, the chain enable switch is hidden because it /// is redundant with the input routing switches and effect enable switches. class StandardEffectChain : public EffectChain { + Q_OBJECT public: StandardEffectChain(unsigned int iChainNumber, EffectsManager* pEffectsManager, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/defs.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/defs.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/effects/defs.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/effects/defs.h 2022-01-19 01:03:12.000000000 +0000 @@ -20,8 +20,8 @@ Unknown }; -inline uint qHash(const EffectBackendType& backendType) { - return static_cast(backendType); +inline qhash_seed_t qHash(const EffectBackendType& backendType) { + return static_cast(backendType); } enum class SignalProcessingStage { diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/engine/bufferscalers/enginebufferscalelinear.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/engine/bufferscalers/enginebufferscalelinear.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/engine/bufferscalers/enginebufferscalelinear.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/engine/bufferscalers/enginebufferscalelinear.h 2022-01-19 01:03:12.000000000 +0000 @@ -8,6 +8,7 @@ class EngineBufferScaleLinear : public EngineBufferScale { + Q_OBJECT public: explicit EngineBufferScaleLinear( ReadAheadManager *pReadAheadManager); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/engine/enginepregain.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/engine/enginepregain.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/engine/enginepregain.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/engine/enginepregain.h 2022-01-19 01:03:12.000000000 +0000 @@ -12,6 +12,7 @@ // including user pregain adjustment, ReplayGain value, and vinyl-like // adjustments in volume relative to playback speed. class EnginePregain : public EngineObject { + Q_OBJECT public: EnginePregain(const QString& group); ~EnginePregain() override; diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/engine/positionscratchcontroller.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/engine/positionscratchcontroller.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/engine/positionscratchcontroller.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/engine/positionscratchcontroller.h 2022-01-19 01:03:12.000000000 +0000 @@ -10,6 +10,7 @@ class RateIIFilter; class PositionScratchController : public QObject { + Q_OBJECT public: PositionScratchController(const QString& group); virtual ~PositionScratchController(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/gitinfo.h.in mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/gitinfo.h.in --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/gitinfo.h.in 2022-01-19 01:30:23.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/gitinfo.h.in 2022-01-19 01:30:25.000000000 +0000 @@ -9,8 +9,8 @@ #endif #define GIT_BRANCH "main" -#define GIT_DESCRIBE "2.4-alpha-1083-g1d42f55fc0" -#define GIT_COMMIT_DATE "2022-01-19T01:00:19+01:00" +#define GIT_DESCRIBE "2.4-alpha-1084-gb0f19c3101" +#define GIT_COMMIT_DATE "2022-01-19T02:02:26+01:00" #define GIT_COMMIT_YEAR 2022 -#define GIT_COMMIT_COUNT 8454 +#define GIT_COMMIT_COUNT 8455 /* #undef GIT_DIRTY */ diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/export/dlglibraryexport.cpp mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/export/dlglibraryexport.cpp --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/export/dlglibraryexport.cpp 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/export/dlglibraryexport.cpp 2022-01-19 01:03:12.000000000 +0000 @@ -203,8 +203,8 @@ // Construct a request to export the library/crates. auto pRequest = QSharedPointer::create(); - pRequest->engineLibraryDbDir = QDir{databaseDirectory}; - pRequest->musicFilesDir = QDir{musicDirectory}; + pRequest->engineLibraryDbDir.setPath(databaseDirectory); + pRequest->musicFilesDir.setPath(musicDirectory); pRequest->exportVersion = exportVersion; if (m_pCratesList->isEnabled()) { const auto selectedItems = m_pCratesList->selectedItems(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/proxytrackmodel.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/proxytrackmodel.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/proxytrackmodel.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/proxytrackmodel.h 2022-01-19 01:03:12.000000000 +0000 @@ -13,6 +13,7 @@ // TrackModel search calls will not be delivered to the composed TrackModel // because filtering is handled by the QSortFilterProxyModel. class ProxyTrackModel : public QSortFilterProxyModel, public TrackModel { + Q_OBJECT public: // Construct a new ProxyTrackModel with pTrackModel as the TrackModel it // composes. If bHandleSearches is true, then search signals will not be diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/rekordbox/rekordboxfeature.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/rekordbox/rekordboxfeature.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/rekordbox/rekordboxfeature.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/rekordbox/rekordboxfeature.h 2022-01-19 01:03:12.000000000 +0000 @@ -40,6 +40,7 @@ class BaseExternalPlaylistModel; class RekordboxPlaylistModel : public BaseExternalPlaylistModel { + Q_OBJECT public: RekordboxPlaylistModel(QObject* parent, TrackCollectionManager* pTrackCollectionManager, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/serato/seratofeature.cpp mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/serato/seratofeature.cpp --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/serato/seratofeature.cpp 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/serato/seratofeature.cpp 2022-01-19 01:03:12.000000000 +0000 @@ -454,7 +454,7 @@ // Serato does not exist on Linux, if it did, it would probably just mirror // the way paths are handled on OSX. if (databaseRootDir.canonicalPath().startsWith(QDir::homePath())) { - databaseRootDir = QDir::root(); + databaseRootDir.setPath(QDir::rootPath()); } #endif diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/serato/seratoplaylistmodel.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/serato/seratoplaylistmodel.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/serato/seratoplaylistmodel.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/serato/seratoplaylistmodel.h 2022-01-19 01:03:12.000000000 +0000 @@ -7,6 +7,7 @@ class BaseExternalPlaylistModel; class SeratoPlaylistModel : public BaseExternalPlaylistModel { + Q_OBJECT public: SeratoPlaylistModel(QObject* parent, TrackCollectionManager* pTrackCollectionManager, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/traktor/traktorfeature.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/traktor/traktorfeature.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/library/traktor/traktorfeature.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/library/traktor/traktorfeature.h 2022-01-19 01:03:12.000000000 +0000 @@ -13,6 +13,7 @@ #include "library/treeitemmodel.h" class TraktorTrackModel : public BaseExternalTrackModel { + Q_OBJECT public: TraktorTrackModel(QObject* parent, TrackCollectionManager* pTrackCollectionManager, @@ -21,6 +22,7 @@ }; class TraktorPlaylistModel : public BaseExternalPlaylistModel { + Q_OBJECT public: TraktorPlaylistModel(QObject* parent, TrackCollectionManager* pTrackCollectionManager, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/qml/asyncimageprovider.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/qml/asyncimageprovider.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/qml/asyncimageprovider.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/qml/asyncimageprovider.h 2022-01-19 01:03:12.000000000 +0000 @@ -11,6 +11,7 @@ namespace qml { class AsyncImageResponse : public QQuickImageResponse, public QRunnable { + Q_OBJECT public: AsyncImageResponse(const QString& id, const QSize& requestedSize); QQuickTextureFactory* textureFactory() const override; diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/battery/batterylinux.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/battery/batterylinux.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/battery/batterylinux.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/battery/batterylinux.h 2022-01-19 01:03:13.000000000 +0000 @@ -3,6 +3,7 @@ #include "util/battery/battery.h" class BatteryLinux : public Battery { + Q_OBJECT public: explicit BatteryLinux(QObject* pParent=nullptr); ~BatteryLinux() override; diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/battery/batterymac.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/battery/batterymac.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/battery/batterymac.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/battery/batterymac.h 2022-01-19 01:03:13.000000000 +0000 @@ -3,6 +3,7 @@ #include "util/battery/battery.h" class BatteryMac : public Battery { + Q_OBJECT public: BatteryMac(QObject* pParent=nullptr); virtual ~BatteryMac(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/battery/batterywindows.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/battery/batterywindows.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/battery/batterywindows.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/battery/batterywindows.h 2022-01-19 01:03:13.000000000 +0000 @@ -3,6 +3,7 @@ #include "util/battery/battery.h" class BatteryWindows : public Battery { + Q_OBJECT public: BatteryWindows(QObject* pParent=nullptr); ~BatteryWindows() override = default; diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/desktophelper.cpp mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/desktophelper.cpp --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/desktophelper.cpp 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/desktophelper.cpp 2022-01-19 01:03:13.000000000 +0000 @@ -159,7 +159,7 @@ // Otherwise nothing would happen... if (!dir.exists()) { // it ensures a valid dir for any OS (Windows) - dir = QDir::home(); + dir.setPath(QDir::homePath()); } // not open the same dir twice dirPath = dir.absolutePath(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/workerthreadscheduler.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/workerthreadscheduler.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/util/workerthreadscheduler.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/util/workerthreadscheduler.h 2022-01-19 01:03:13.000000000 +0000 @@ -10,6 +10,7 @@ /// as a worker thread. The maximum number of worker threads is /// limited. class WorkerThreadScheduler : public WorkerThread { + Q_OBJECT public: explicit WorkerThreadScheduler( int maxWorkers, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/vinylcontrol/vinylcontrol.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/vinylcontrol/vinylcontrol.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/vinylcontrol/vinylcontrol.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/vinylcontrol/vinylcontrol.h 2022-01-19 01:03:13.000000000 +0000 @@ -9,6 +9,7 @@ class ControlProxy; class VinylControl : public QObject { + Q_OBJECT public: VinylControl(UserSettingsPointer pConfig, const QString& group); virtual ~VinylControl(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/vinylcontrol/vinylcontrolxwax.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/vinylcontrol/vinylcontrolxwax.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/vinylcontrol/vinylcontrolxwax.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/vinylcontrol/vinylcontrolxwax.h 2022-01-19 01:03:13.000000000 +0000 @@ -21,6 +21,7 @@ #define QUALITY_RING_SIZE 32 class VinylControlXwax : public VinylControl { + Q_OBJECT public: VinylControlXwax(UserSettingsPointer pConfig, const QString& group); virtual ~VinylControlXwax(); diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/wanalysislibrarytableview.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/wanalysislibrarytableview.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/wanalysislibrarytableview.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/wanalysislibrarytableview.h 2022-01-19 01:03:13.000000000 +0000 @@ -6,6 +6,7 @@ #include "widget/wtracktableview.h" class WAnalysisLibraryTableView : public WTrackTableView { + Q_OBJECT public: WAnalysisLibraryTableView( QWidget* parent, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/woverviewhsv.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/woverviewhsv.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/woverviewhsv.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/woverviewhsv.h 2022-01-19 01:03:13.000000000 +0000 @@ -3,6 +3,7 @@ #include "widget/woverview.h" class WOverviewHSV : public WOverview { + Q_OBJECT public: WOverviewHSV( const QString& group, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/woverviewlmh.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/woverviewlmh.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/woverviewlmh.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/woverviewlmh.h 2022-01-19 01:03:13.000000000 +0000 @@ -3,6 +3,7 @@ #include "widget/woverview.h" class WOverviewLMH : public WOverview { + Q_OBJECT public: WOverviewLMH( const QString& group, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/woverviewrgb.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/woverviewrgb.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/woverviewrgb.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/woverviewrgb.h 2022-01-19 01:03:13.000000000 +0000 @@ -3,6 +3,7 @@ #include "widget/woverview.h" class WOverviewRGB : public WOverview { + Q_OBJECT public: WOverviewRGB( const QString& group, diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/wsizeawarestack.cpp mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/wsizeawarestack.cpp --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/wsizeawarestack.cpp 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/wsizeawarestack.cpp 2022-01-19 01:03:13.000000000 +0000 @@ -6,71 +6,66 @@ #include "moc_wsizeawarestack.cpp" -class SizeAwareLayout : public QStackedLayout -{ - public: - QSize minimumSize() const override - { - QSize s(0, 0) ; - QWidget *w = widget(0); - if (w) { - // Minimum Widget is at index 0; - s = w->minimumSize(); - } - return s; +QSize SizeAwareLayout::minimumSize() const { + QSize s(0, 0); + QWidget* w = widget(0); + if (w) { + // Minimum Widget is at index 0; + s = w->minimumSize(); } + return s; +} - int setCurrentIndexForSize(const QSize& s) { - int n = count(); - if (n <= 0) { - return -1; - } +int SizeAwareLayout::setCurrentIndexForSize(const QSize& s) { + int n = count(); + if (n <= 0) { + return -1; + } - int i = currentIndex(); + int i = currentIndex(); - QWidget *wc = widget(i); - bool notFit = false; - if (i > 0) { - // Check minimum, but not for the smallest, it is the fallback - notFit = wc->minimumHeight() > s.height() || wc->minimumWidth() > s.width(); - } - if (i < n - 1 && !notFit) { - // Check maximum, but not for the biggest, it is the fallback - notFit = wc->maximumHeight() < s.height() || wc->maximumWidth() < s.width(); - } + QWidget* wc = widget(i); + bool notFit = false; + if (i > 0) { + // Check minimum, but not for the smallest, it is the fallback + notFit = wc->minimumHeight() > s.height() || wc->minimumWidth() > s.width(); + } + if (i < n - 1 && !notFit) { + // Check maximum, but not for the biggest, it is the fallback + notFit = wc->maximumHeight() < s.height() || wc->maximumWidth() < s.width(); + } - if (notFit) { - QWidget *w; - for (i = 0; i < n; ++i) { - w = widget(i); - if (w) { - if (w->maximumHeight() >= s.height() && w->maximumWidth() >= s.width() && - w->minimumHeight() <= s.height() && w->minimumWidth() <= s.width()) { - // perfectly fit - setCurrentIndex(i); - return i; - } + if (notFit) { + QWidget* w; + for (i = 0; i < n; ++i) { + w = widget(i); + if (w) { + if (w->maximumHeight() >= s.height() && w->maximumWidth() >= s.width() && + w->minimumHeight() <= s.height() && w->minimumWidth() <= s.width()) { + // perfectly fit + setCurrentIndex(i); + return i; } } - // no perfect fit, check minimum only to avoid chopping - for (i = n-1; i >= 0; --i) { - w = widget(i); - if (w) { - if (w->minimumHeight() <= s.height() && w->minimumWidth() <= s.width()) { - // fit with gap - setCurrentIndex(i); - return i; - } + } + // no perfect fit, check minimum only to avoid chopping + for (i = n - 1; i >= 0; --i) { + w = widget(i); + if (w) { + if (w->minimumHeight() <= s.height() && w->minimumWidth() <= s.width()) { + // fit with gap + setCurrentIndex(i); + return i; } } - // fallback: take smallest - setCurrentIndex(0); - return 0; } - - return i; + // fallback: take smallest + setCurrentIndex(0); + return 0; } -}; + + return i; +} WSizeAwareStack::WSizeAwareStack(QWidget* parent) : QWidget(parent), diff -Nru mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/wsizeawarestack.h mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/wsizeawarestack.h --- mixxx-2.4.0~alpha2~1083~g1d42f55fc0/src/widget/wsizeawarestack.h 2022-01-19 00:03:47.000000000 +0000 +++ mixxx-2.4.0~alpha2~1084~gb0f19c3101/src/widget/wsizeawarestack.h 2022-01-19 01:03:13.000000000 +0000 @@ -1,11 +1,18 @@ #pragma once -#include #include +#include +#include +#include #include "widget/wbasewidget.h" -class SizeAwareLayout; +class SizeAwareLayout : public QStackedLayout { + Q_OBJECT + public: + QSize minimumSize() const override; + int setCurrentIndexForSize(const QSize& s); +}; class WSizeAwareStack : public QWidget, public WBaseWidget { Q_OBJECT