Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/frontend
diff options
context:
space:
mode:
authorKae <80987908+Novaenia@users.noreply.github.com>2025-02-03 12:43:44 +1100
committerKae <80987908+Novaenia@users.noreply.github.com>2025-02-03 12:43:44 +1100
commitfa6d3d10c49762a0073ac1e159057633692de670 (patch)
tree4c3b28fcf299831e7f0c7e1c75aa44f0e498e04b /source/frontend
parent182937d1506cb7536056a633fed328d209850b7d (diff)
fix two bugs and optimize images
[skip ci]
Diffstat (limited to 'source/frontend')
-rw-r--r--source/frontend/StarTitleScreen.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/frontend/StarTitleScreen.cpp b/source/frontend/StarTitleScreen.cpp
index a2d2c53..747744c 100644
--- a/source/frontend/StarTitleScreen.cpp
+++ b/source/frontend/StarTitleScreen.cpp
@@ -337,6 +337,9 @@ void TitleScreen::initMultiPlayerMenu() {
GuiReader readerServer;
m_serverList = Root::singleton().configuration()->get("serverList");
+ if (!m_serverList.isType(Json::Type::Array))
+ m_serverList = JsonArray();
+
auto assets = Root::singleton().assets();
readerServer.registerCallback("saveServer", [=](Widget*) {
@@ -348,9 +351,9 @@ void TitleScreen::initMultiPlayerMenu() {
};
auto serverList = m_serverSelectPane->fetchChild<ListWidget>("serverSelectArea.serverList");
- if (auto const pos = serverList->selectedItem(); pos != NPos) {// Edit existing
+ if (auto const pos = serverList->selectedItem(); pos != NPos) { // Edit existing
m_serverList = m_serverList.set(pos, serverData);
- } else {// Save new
+ } else { // Save new
m_serverList = m_serverList.insert(0, serverData);
}
@@ -374,6 +377,8 @@ void TitleScreen::initMultiPlayerMenu() {
serverList->setCallback([=](Widget* widget) {
if (auto selectedItem = serverList->selectedWidget()) {
+ if (selectedItem->findChild<ButtonWidget>("delete")->isHovered())
+ return;
auto& data = selectedItem->data();
setMultiPlayerAddress(data.getString("address", ""));
setMultiPlayerPort(data.getString("port", ""));