From 27f35feee89bb4f4a6dc19027b0412e99331198d Mon Sep 17 00:00:00 2001 From: srcejon Date: Thu, 9 Nov 2023 21:41:59 +0000 Subject: [PATCH 1/4] Save scope sink pointer for when baseband is recreated. --- plugins/channelrx/demoddsd/dsddemod.cpp | 12 +++++++++++- plugins/channelrx/demoddsd/dsddemod.h | 4 ++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/plugins/channelrx/demoddsd/dsddemod.cpp b/plugins/channelrx/demoddsd/dsddemod.cpp index b61ced5d04..008e2ad0d1 100644 --- a/plugins/channelrx/demoddsd/dsddemod.cpp +++ b/plugins/channelrx/demoddsd/dsddemod.cpp @@ -59,7 +59,8 @@ DSDDemod::DSDDemod(DeviceAPI *deviceAPI) : ChannelAPI(m_channelIdURI, ChannelAPI::StreamSingleSink), m_deviceAPI(deviceAPI), m_running(false), - m_basebandSampleRate(0) + m_basebandSampleRate(0), + m_scopeXYSink(nullptr) { qDebug("DSDDemod::DSDDemod"); setObjectName(m_channelId); @@ -175,6 +176,7 @@ void DSDDemod::start() if (m_basebandSampleRate != 0) { m_basebandSink->setBasebandSampleRate(m_basebandSampleRate); } + m_basebandSink->setScopeXYSink(m_scopeXYSink); m_thread->start(); @@ -198,6 +200,14 @@ void DSDDemod::stop() m_thread->wait(); } +void DSDDemod::setScopeXYSink(BasebandSampleSink* sampleSink) +{ + m_scopeXYSink = sampleSink; + if (m_running) { + m_basebandSink->setScopeXYSink(sampleSink); + } +} + bool DSDDemod::handleMessage(const Message& cmd) { qDebug() << "DSDDemod::handleMessage"; diff --git a/plugins/channelrx/demoddsd/dsddemod.h b/plugins/channelrx/demoddsd/dsddemod.h index 498605905c..49116ba05c 100644 --- a/plugins/channelrx/demoddsd/dsddemod.h +++ b/plugins/channelrx/demoddsd/dsddemod.h @@ -155,7 +155,7 @@ class DSDDemod : public BasebandSampleSink, public ChannelAPI { SWGSDRangel::SWGChannelSettings& response); uint32_t getNumberOfDeviceStreams() const; - void setScopeXYSink(BasebandSampleSink* sampleSink) { if (m_running) { m_basebandSink->setScopeXYSink(sampleSink); } } + void setScopeXYSink(BasebandSampleSink* sampleSink); void configureMyPosition(float myLatitude, float myLongitude) { if (m_running) { m_basebandSink->configureMyPosition(myLatitude, myLongitude); } } double getMagSq() { return m_running ? m_basebandSink->getMagSq() : 0.0; } bool getSquelchOpen() const { return m_running && m_basebandSink->getSquelchOpen(); } @@ -186,7 +186,7 @@ class DSDDemod : public BasebandSampleSink, public ChannelAPI { DSDDemodSettings m_settings; int m_basebandSampleRate; //!< stored from device message used when starting baseband sink QHash m_availableAMBEFeatures; - + BasebandSampleSink *m_scopeXYSink; QNetworkAccessManager *m_networkManager; QNetworkRequest m_networkRequest; From d6f5c818562b52b14781a331b0bdec8437402337 Mon Sep 17 00:00:00 2001 From: srcejon Date: Thu, 9 Nov 2023 21:42:33 +0000 Subject: [PATCH 2/4] Add warning if sample rate is < 48kHz. --- plugins/channelrx/demoddsd/dsddemodgui.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/channelrx/demoddsd/dsddemodgui.cpp b/plugins/channelrx/demoddsd/dsddemodgui.cpp index 33491d1dbc..45ee195ec1 100644 --- a/plugins/channelrx/demoddsd/dsddemodgui.cpp +++ b/plugins/channelrx/demoddsd/dsddemodgui.cpp @@ -101,6 +101,11 @@ bool DSDDemodGUI::handleMessage(const Message& message) DSPSignalNotification& notif = (DSPSignalNotification&) message; m_deviceCenterFrequency = notif.getCenterFrequency(); m_basebandSampleRate = notif.getSampleRate(); + if (m_basebandSampleRate < 48000) { + setStatusText(QString("Sample rate must be >= 48000 Hz (Currently %1 Hz)").arg(m_basebandSampleRate)); + } else { + setStatusText(""); + } ui->deltaFrequency->setValueRange(false, 7, -m_basebandSampleRate/2, m_basebandSampleRate/2); ui->deltaFrequencyLabel->setToolTip(tr("Range %1 %L2 Hz").arg(QChar(0xB1)).arg(m_basebandSampleRate/2)); updateAbsoluteCenterFrequency(); From 6e55c030b6e0292e59b58cc22ee7779cd6b2c859 Mon Sep 17 00:00:00 2001 From: srcejon Date: Thu, 9 Nov 2023 22:30:34 +0000 Subject: [PATCH 3/4] Use DialogPositioner for AudioSelectDialog so it opens on screen. --- plugins/channelrx/demodam/amdemodgui.cpp | 1 + plugins/channelrx/demodbfm/bfmdemodgui.cpp | 1 + plugins/channelrx/demoddab/dabdemodgui.cpp | 1 + plugins/channelrx/demoddatv/datvdemodgui.cpp | 1 + plugins/channelrx/demoddsd/dsddemodgui.cpp | 1 + plugins/channelrx/demodfreedv/freedvdemodgui.cpp | 1 + plugins/channelrx/demodft8/ft8demodgui.cpp | 1 - plugins/channelrx/demodils/ilsdemodgui.cpp | 1 + plugins/channelrx/demodm17/m17demodgui.cpp | 1 + plugins/channelrx/demodnfm/nfmdemodgui.cpp | 1 + plugins/channelrx/demodssb/ssbdemodgui.cpp | 1 + plugins/channelrx/demodvor/vordemodgui.cpp | 1 + plugins/channelrx/demodvormc/vordemodmcgui.cpp | 1 + plugins/channelrx/demodwfm/wfmdemodgui.cpp | 1 + plugins/channelrx/freqtracker/freqtrackergui.cpp | 1 - plugins/channeltx/modam/ammodgui.cpp | 2 +- plugins/channeltx/modfreedv/freedvmodgui.cpp | 1 + plugins/channeltx/modm17/m17modgui.cpp | 2 ++ plugins/channeltx/modnfm/nfmmodgui.cpp | 2 ++ plugins/channeltx/modssb/ssbmodgui.cpp | 2 ++ plugins/channeltx/modwfm/wfmmodgui.cpp | 2 ++ plugins/samplemimo/audiocatsiso/audiocatsisogui.cpp | 2 ++ plugins/samplesink/audiooutput/audiooutputgui.cpp | 1 + 23 files changed, 26 insertions(+), 3 deletions(-) diff --git a/plugins/channelrx/demodam/amdemodgui.cpp b/plugins/channelrx/demodam/amdemodgui.cpp index f7ef057aa9..ef67181733 100644 --- a/plugins/channelrx/demodam/amdemodgui.cpp +++ b/plugins/channelrx/demodam/amdemodgui.cpp @@ -611,6 +611,7 @@ void AMDemodGUI::audioSelect(const QPoint& p) qDebug("AMDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodbfm/bfmdemodgui.cpp b/plugins/channelrx/demodbfm/bfmdemodgui.cpp index 60681009d0..957451fb7a 100644 --- a/plugins/channelrx/demodbfm/bfmdemodgui.cpp +++ b/plugins/channelrx/demodbfm/bfmdemodgui.cpp @@ -532,6 +532,7 @@ void BFMDemodGUI::audioSelect(const QPoint& p) qDebug("BFMDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demoddab/dabdemodgui.cpp b/plugins/channelrx/demoddab/dabdemodgui.cpp index 15587e8ae2..99fb29614e 100644 --- a/plugins/channelrx/demoddab/dabdemodgui.cpp +++ b/plugins/channelrx/demoddab/dabdemodgui.cpp @@ -701,6 +701,7 @@ void DABDemodGUI::audioSelect(const QPoint& p) { AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demoddatv/datvdemodgui.cpp b/plugins/channelrx/demoddatv/datvdemodgui.cpp index 938c639ae9..c7c6ab546a 100644 --- a/plugins/channelrx/demoddatv/datvdemodgui.cpp +++ b/plugins/channelrx/demoddatv/datvdemodgui.cpp @@ -515,6 +515,7 @@ void DATVDemodGUI::audioSelect(const QPoint& p) qDebug("DATVDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demoddsd/dsddemodgui.cpp b/plugins/channelrx/demoddsd/dsddemodgui.cpp index 45ee195ec1..5facbde520 100644 --- a/plugins/channelrx/demoddsd/dsddemodgui.cpp +++ b/plugins/channelrx/demoddsd/dsddemodgui.cpp @@ -607,6 +607,7 @@ void DSDDemodGUI::audioSelect(const QPoint& p) qDebug("DSDDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodfreedv/freedvdemodgui.cpp b/plugins/channelrx/demodfreedv/freedvdemodgui.cpp index e967679712..5df83b2505 100644 --- a/plugins/channelrx/demodfreedv/freedvdemodgui.cpp +++ b/plugins/channelrx/demodfreedv/freedvdemodgui.cpp @@ -441,6 +441,7 @@ void FreeDVDemodGUI::audioSelect(const QPoint& p) qDebug("FreeDVDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodft8/ft8demodgui.cpp b/plugins/channelrx/demodft8/ft8demodgui.cpp index ea61a5cdfb..2f5123cdfa 100644 --- a/plugins/channelrx/demodft8/ft8demodgui.cpp +++ b/plugins/channelrx/demodft8/ft8demodgui.cpp @@ -27,7 +27,6 @@ #include "gui/basicchannelsettingsdialog.h" #include "gui/devicestreamselectiondialog.h" #include "gui/crightclickenabler.h" -#include "gui/audioselectdialog.h" #include "gui/dialpopup.h" #include "gui/dialogpositioner.h" #include "util/db.h" diff --git a/plugins/channelrx/demodils/ilsdemodgui.cpp b/plugins/channelrx/demodils/ilsdemodgui.cpp index 07415def2a..7dad42ad72 100644 --- a/plugins/channelrx/demodils/ilsdemodgui.cpp +++ b/plugins/channelrx/demodils/ilsdemodgui.cpp @@ -1278,6 +1278,7 @@ void ILSDemodGUI::audioSelect(const QPoint& p) qDebug("ILSDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodm17/m17demodgui.cpp b/plugins/channelrx/demodm17/m17demodgui.cpp index 58157b6b52..7c88a34f8b 100644 --- a/plugins/channelrx/demodm17/m17demodgui.cpp +++ b/plugins/channelrx/demodm17/m17demodgui.cpp @@ -644,6 +644,7 @@ void M17DemodGUI::audioSelect(const QPoint& p) { AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodnfm/nfmdemodgui.cpp b/plugins/channelrx/demodnfm/nfmdemodgui.cpp index f380de811d..f6825ed0da 100644 --- a/plugins/channelrx/demodnfm/nfmdemodgui.cpp +++ b/plugins/channelrx/demodnfm/nfmdemodgui.cpp @@ -584,6 +584,7 @@ void NFMDemodGUI::audioSelect(const QPoint& p) qDebug("NFMDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodssb/ssbdemodgui.cpp b/plugins/channelrx/demodssb/ssbdemodgui.cpp index e61de963f7..3ec8ded875 100644 --- a/plugins/channelrx/demodssb/ssbdemodgui.cpp +++ b/plugins/channelrx/demodssb/ssbdemodgui.cpp @@ -718,6 +718,7 @@ void SSBDemodGUI::audioSelect(const QPoint& p) { AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodvor/vordemodgui.cpp b/plugins/channelrx/demodvor/vordemodgui.cpp index e11f6e6099..badb89c8a1 100644 --- a/plugins/channelrx/demodvor/vordemodgui.cpp +++ b/plugins/channelrx/demodvor/vordemodgui.cpp @@ -417,6 +417,7 @@ void VORDemodGUI::audioSelect(const QPoint& p) qDebug("VORDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodvormc/vordemodmcgui.cpp b/plugins/channelrx/demodvormc/vordemodmcgui.cpp index 905c9f0aac..6813f972eb 100644 --- a/plugins/channelrx/demodvormc/vordemodmcgui.cpp +++ b/plugins/channelrx/demodvormc/vordemodmcgui.cpp @@ -1368,6 +1368,7 @@ void VORDemodMCGUI::audioSelect(const QPoint& p) qDebug("VORDemodMCGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/demodwfm/wfmdemodgui.cpp b/plugins/channelrx/demodwfm/wfmdemodgui.cpp index 1cf14ef45a..a4ef9ba8e6 100644 --- a/plugins/channelrx/demodwfm/wfmdemodgui.cpp +++ b/plugins/channelrx/demodwfm/wfmdemodgui.cpp @@ -336,6 +336,7 @@ void WFMDemodGUI::audioSelect(const QPoint& p) qDebug("WFMDemodGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName); audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channelrx/freqtracker/freqtrackergui.cpp b/plugins/channelrx/freqtracker/freqtrackergui.cpp index bbef439b6d..ecee09b13b 100644 --- a/plugins/channelrx/freqtracker/freqtrackergui.cpp +++ b/plugins/channelrx/freqtracker/freqtrackergui.cpp @@ -32,7 +32,6 @@ #include "gui/devicestreamselectiondialog.h" #include "dsp/dspengine.h" #include "gui/crightclickenabler.h" -#include "gui/audioselectdialog.h" #include "gui/dialpopup.h" #include "gui/dialogpositioner.h" #include "maincore.h" diff --git a/plugins/channeltx/modam/ammodgui.cpp b/plugins/channeltx/modam/ammodgui.cpp index 6bfcf5bfb4..47f1a47bbe 100644 --- a/plugins/channeltx/modam/ammodgui.cpp +++ b/plugins/channeltx/modam/ammodgui.cpp @@ -503,7 +503,7 @@ void AMModGUI::audioSelect(const QPoint& p) qDebug("AMModGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, true); // true for input audioSelect.move(p); - + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channeltx/modfreedv/freedvmodgui.cpp b/plugins/channeltx/modfreedv/freedvmodgui.cpp index 2cdd5dd105..0aca05718a 100644 --- a/plugins/channeltx/modfreedv/freedvmodgui.cpp +++ b/plugins/channeltx/modfreedv/freedvmodgui.cpp @@ -550,6 +550,7 @@ void FreeDVModGUI::audioSelect(const QPoint& p) qDebug("FreeDVModGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, true); // true for input audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channeltx/modm17/m17modgui.cpp b/plugins/channeltx/modm17/m17modgui.cpp index 3adbcc461c..4688d984de 100644 --- a/plugins/channeltx/modm17/m17modgui.cpp +++ b/plugins/channeltx/modm17/m17modgui.cpp @@ -717,6 +717,7 @@ void M17ModGUI::audioSelect(const QPoint& p) qDebug("M17ModGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, true); // true for input audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) @@ -731,6 +732,7 @@ void M17ModGUI::audioFeedbackSelect(const QPoint& p) qDebug("M17ModGUI::audioFeedbackSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, false); // false for output audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channeltx/modnfm/nfmmodgui.cpp b/plugins/channeltx/modnfm/nfmmodgui.cpp index ff9e444df4..1d8b03d836 100644 --- a/plugins/channeltx/modnfm/nfmmodgui.cpp +++ b/plugins/channeltx/modnfm/nfmmodgui.cpp @@ -623,6 +623,7 @@ void NFMModGUI::audioSelect(const QPoint& p) qDebug("NFMModGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, true); // true for input audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) @@ -637,6 +638,7 @@ void NFMModGUI::audioFeedbackSelect(const QPoint& p) qDebug("NFMModGUI::audioFeedbackSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, false); // false for output audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channeltx/modssb/ssbmodgui.cpp b/plugins/channeltx/modssb/ssbmodgui.cpp index 8a61a81cd2..b708413f40 100644 --- a/plugins/channeltx/modssb/ssbmodgui.cpp +++ b/plugins/channeltx/modssb/ssbmodgui.cpp @@ -770,6 +770,7 @@ void SSBModGUI::audioSelect(const QPoint& p) qDebug("SSBModGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, true); // true for input audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) @@ -784,6 +785,7 @@ void SSBModGUI::audioFeedbackSelect(const QPoint& p) qDebug("SSBModGUI::audioFeedbackSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, false); // false for output audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/channeltx/modwfm/wfmmodgui.cpp b/plugins/channeltx/modwfm/wfmmodgui.cpp index 5c3b9951da..b2eea45922 100644 --- a/plugins/channeltx/modwfm/wfmmodgui.cpp +++ b/plugins/channeltx/modwfm/wfmmodgui.cpp @@ -518,6 +518,7 @@ void WFMModGUI::audioSelect(const QPoint& p) qDebug("WFMModGUI::audioSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, true); // true for input audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) @@ -532,6 +533,7 @@ void WFMModGUI::audioFeedbackSelect(const QPoint& p) qDebug("WFMModGUI::audioFeedbackSelect"); AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_audioDeviceName, false); // false for output audioSelect.move(p); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/samplemimo/audiocatsiso/audiocatsisogui.cpp b/plugins/samplemimo/audiocatsiso/audiocatsisogui.cpp index 635b931e89..2888a9479d 100644 --- a/plugins/samplemimo/audiocatsiso/audiocatsisogui.cpp +++ b/plugins/samplemimo/audiocatsiso/audiocatsisogui.cpp @@ -324,6 +324,7 @@ void AudioCATSISOGUI::on_transverter_clicked() void AudioCATSISOGUI::on_rxDeviceSelect_clicked() { AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_txDeviceName, true, this); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) @@ -338,6 +339,7 @@ void AudioCATSISOGUI::on_rxDeviceSelect_clicked() void AudioCATSISOGUI::on_txDeviceSelect_clicked() { AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_txDeviceName, false, this); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) diff --git a/plugins/samplesink/audiooutput/audiooutputgui.cpp b/plugins/samplesink/audiooutput/audiooutputgui.cpp index c4a7c3c3f6..7e239f2e1d 100644 --- a/plugins/samplesink/audiooutput/audiooutputgui.cpp +++ b/plugins/samplesink/audiooutput/audiooutputgui.cpp @@ -183,6 +183,7 @@ void AudioOutputGui::displaySettings() void AudioOutputGui::on_deviceSelect_clicked() { AudioSelectDialog audioSelect(DSPEngine::instance()->getAudioDeviceManager(), m_settings.m_deviceName, false, this); + new DialogPositioner(&audioSelect, false); audioSelect.exec(); if (audioSelect.m_selected) From 1a5ff184235f3416ec89b3f66517977821a1719a Mon Sep 17 00:00:00 2001 From: srcejon Date: Fri, 10 Nov 2023 07:59:41 +0000 Subject: [PATCH 4/4] Reduce minimum size so more likely to fit on Android screens --- plugins/channelrx/demoddsd/dsddemodgui.ui | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/plugins/channelrx/demoddsd/dsddemodgui.ui b/plugins/channelrx/demoddsd/dsddemodgui.ui index 0403c77437..4188af2034 100644 --- a/plugins/channelrx/demoddsd/dsddemodgui.ui +++ b/plugins/channelrx/demoddsd/dsddemodgui.ui @@ -18,7 +18,7 @@ - 650 + 500 392 @@ -54,7 +54,7 @@ - 648 + 500 0 @@ -533,7 +533,7 @@ - 595 + 480 0 @@ -569,13 +569,13 @@ 10 180 - 600 + 480 210 - 600 + 480 210 @@ -1260,6 +1260,11 @@ + + ButtonSwitch + QToolButton +
gui/buttonswitch.h
+
RollupContents QWidget @@ -1278,11 +1283,6 @@
gui/levelmeter.h
1
- - ButtonSwitch - QToolButton -
gui/buttonswitch.h
-
TVScreen QWidget