aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorstonedDiscord <Tukz@gmx.de>2026-02-03 10:39:53 +0100
committerGitHub <noreply@github.com>2026-02-03 10:39:53 +0100
commit5dea0406c73704ebf30cf0b8aac671f698e89959 (patch)
tree888ecc744932e610a98b217eed3c37ee03b1a10a /src
parentc92956d3cf13ad1b16d4cc1dbf970a37aa6566db (diff)
WSS support (#1114)
* add ssl scheme * use protocol * set port * remove last legacy entry
Diffstat (limited to 'src')
-rw-r--r--src/lobby.cpp4
-rw-r--r--src/network/serverinfo.h2
-rw-r--r--src/network/websocketconnection.cpp2
-rw-r--r--src/networkmanager.cpp10
-rw-r--r--src/options.cpp10
5 files changed, 17 insertions, 11 deletions
diff --git a/src/lobby.cpp b/src/lobby.cpp
index 871af8b9..05dd9ce4 100644
--- a/src/lobby.cpp
+++ b/src/lobby.cpp
@@ -471,7 +471,7 @@ void Lobby::list_servers()
QTreeWidgetItem *treeItem = new QTreeWidgetItem(ui_serverlist_tree);
treeItem->setData(0, Qt::DisplayRole, i);
- if (i_server.legacy)
+ if (i_server.protocol == "tcp")
{
treeItem->setText(1, "(Legacy) " + i_server.name);
treeItem->setBackground(0, Qt::darkRed);
@@ -504,7 +504,7 @@ void Lobby::list_favorites()
QTreeWidgetItem *treeItem = new QTreeWidgetItem(ui_favorites_tree);
treeItem->setData(0, Qt::DisplayRole, i);
- if (i_server.legacy)
+ if (i_server.protocol == "tcp")
{
treeItem->setText(1, "(Legacy) " + i_server.name);
treeItem->setBackground(0, Qt::darkRed);
diff --git a/src/network/serverinfo.h b/src/network/serverinfo.h
index 1f13e3e6..de91a011 100644
--- a/src/network/serverinfo.h
+++ b/src/network/serverinfo.h
@@ -9,7 +9,7 @@ public:
QString description;
QString address;
quint16 port = 0;
- bool legacy = false;
+ QString protocol = "ws";
QString toString() const;
};
diff --git a/src/network/websocketconnection.cpp b/src/network/websocketconnection.cpp
index 9d9183ca..e9cc1ef9 100644
--- a/src/network/websocketconnection.cpp
+++ b/src/network/websocketconnection.cpp
@@ -32,7 +32,7 @@ void WebSocketConnection::connectToServer(const ServerInfo &server)
disconnectFromServer();
QUrl url;
- url.setScheme("ws");
+ url.setScheme(server.protocol);
url.setHost(server.address);
url.setPort(server.port);
diff --git a/src/networkmanager.cpp b/src/networkmanager.cpp
index 500b2c83..1202fec8 100644
--- a/src/networkmanager.cpp
+++ b/src/networkmanager.cpp
@@ -60,14 +60,20 @@ void NetworkManager::ms_request_finished(QNetworkReply *reply)
server.address = entry["ip"].toString();
server.name = entry["name"].toString();
server.description = entry["description"].toString(tr("No description provided."));
- if (entry.contains("ws_port"))
+ if (entry.contains("wss_port"))
+ {
+ server.port = entry["wss_port"].toInt();
+ server.protocol = "wss";
+ }
+ else if (entry.contains("ws_port"))
{
server.port = entry["ws_port"].toInt();
+ server.protocol = "ws";
}
else
{
server.port = entry["port"].toInt();
- server.legacy = true;
+ server.protocol = "tcp";
}
if (server.port != 0)
diff --git a/src/options.cpp b/src/options.cpp
index caa559c8..0827399a 100644
--- a/src/options.cpp
+++ b/src/options.cpp
@@ -680,11 +680,11 @@ QVector<ServerInfo> Options::favorites()
f_server.description = favorite.value("desc", "No description").toString();
if (favorite.contains("protocol"))
{
- f_server.legacy = favorite.value("protocol").toString() == "tcp";
+ f_server.protocol = favorite.value("protocol").toString();
}
else
{
- f_server.legacy = favorite.value("legacy", false).toBool();
+ f_server.protocol = "tcp";
}
serverlist.append(std::move(f_server));
@@ -705,7 +705,7 @@ void Options::setFavorites(QVector<ServerInfo> value)
favorite.setValue("address", fav_server.address);
favorite.setValue("port", fav_server.port);
favorite.setValue("desc", fav_server.description);
- favorite.setValue("legacy", fav_server.legacy);
+ favorite.setValue("protocol", fav_server.protocol);
favorite.endGroup();
}
favorite.sync();
@@ -726,7 +726,7 @@ void Options::addFavorite(ServerInfo server)
favorite.setValue("address", server.address);
favorite.setValue("port", server.port);
favorite.setValue("desc", server.description);
- favorite.setValue("legacy", server.legacy);
+ favorite.setValue("protocol", server.protocol);
favorite.endGroup();
favorite.sync();
}
@@ -738,7 +738,7 @@ void Options::updateFavorite(ServerInfo server, int index)
favorite.setValue("address", server.address);
favorite.setValue("port", server.port);
favorite.setValue("desc", server.description);
- favorite.setValue("legacy", server.legacy);
+ favorite.setValue("protocol", server.protocol);
favorite.endGroup();
favorite.sync();
}