diff --git a/viewer/JFJochImageReadingWorker.cpp b/viewer/JFJochImageReadingWorker.cpp index 356f36ba..8c503241 100644 --- a/viewer/JFJochImageReadingWorker.cpp +++ b/viewer/JFJochImageReadingWorker.cpp @@ -207,7 +207,7 @@ void JFJochImageReadingWorker::LoadFile_i(const QString &filename, qint64 image_ std::shared_ptr dataset; auto start = std::chrono::high_resolution_clock::now(); - if (filename.startsWith("http://")) { + if (filename.startsWith("http://") || filename.startsWith("https://")) { http_mode = true; http_reader.ReadURL(filename.toStdString()); total_images = http_reader.GetNumberOfImages(); diff --git a/viewer/JFJochViewerMenu.cpp b/viewer/JFJochViewerMenu.cpp index e69ade56..8d039375 100644 --- a/viewer/JFJochViewerMenu.cpp +++ b/viewer/JFJochViewerMenu.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -177,7 +178,12 @@ void JFJochViewerMenu::openHttpSelected() { dialog.setMinimumWidth(400); QGridLayout *layout = new QGridLayout(&dialog); - layout->addWidget(new QLabel("http://"), 0, 0); + + // Scheme selector: plain HTTP (broker directly) or HTTPS (e.g. broker behind a reverse proxy). + QComboBox *schemeCombo = new QComboBox(&dialog); + schemeCombo->addItem("http://"); + schemeCombo->addItem("https://"); + layout->addWidget(schemeCombo, 0, 0); layout->addWidget(new QLabel(":"), 0, 2); QLineEdit *hostEdit = new QLineEdit(&dialog); @@ -211,7 +217,8 @@ void JFJochViewerMenu::openHttpSelected() { dialog.setLayout(layout); if (dialog.exec() == QDialog::Accepted) { - QString url = QString("http://%1:%2") + QString url = QString("%1%2:%3") + .arg(schemeCombo->currentText()) .arg(hostEdit->text()) .arg(portSpinBox->value());