From edab4f0b337a16095a3e7129406bb37b00320c4a Mon Sep 17 00:00:00 2001 From: f4exb Date: Sat, 8 Oct 2022 12:45:37 +0200 Subject: [PATCH] KiwiSDR: analyze address on input to accept fully formed urls like http://host:port/ found on the web directory --- plugins/samplesource/kiwisdr/kiwisdrgui.cpp | 10 +++++++++- plugins/samplesource/kiwisdr/kiwisdrworker.cpp | 4 +++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/plugins/samplesource/kiwisdr/kiwisdrgui.cpp b/plugins/samplesource/kiwisdr/kiwisdrgui.cpp index 231e11c1b..6e2043569 100644 --- a/plugins/samplesource/kiwisdr/kiwisdrgui.cpp +++ b/plugins/samplesource/kiwisdr/kiwisdrgui.cpp @@ -150,7 +150,15 @@ void KiwiSDRGui::on_serverAddress_returnPressed() void KiwiSDRGui::on_serverAddressApplyButton_clicked() { - m_settings.m_serverAddress = ui->serverAddress->text(); + QString serverAddress = ui->serverAddress->text(); + QUrl url(serverAddress); + + if (QStringList{"ws", "wss", "http", "https"}.contains(url.scheme())) { + m_settings.m_serverAddress = QString("%1:%2").arg(url.host()).arg(url.port()); + } else { + m_settings.m_serverAddress = serverAddress; + } + sendSettings(); } diff --git a/plugins/samplesource/kiwisdr/kiwisdrworker.cpp b/plugins/samplesource/kiwisdr/kiwisdrworker.cpp index ae21f539b..a9ae104d7 100644 --- a/plugins/samplesource/kiwisdr/kiwisdrworker.cpp +++ b/plugins/samplesource/kiwisdr/kiwisdrworker.cpp @@ -139,8 +139,10 @@ void KiwiSDRWorker::onGainChanged(quint32 gain, bool useAGC) void KiwiSDRWorker::onServerAddressChanged(QString serverAddress) { - if (m_serverAddress == serverAddress) + if (m_serverAddress == serverAddress) { return; + } + m_serverAddress = serverAddress; m_status = 1;