From 670bd9dc6cd53d5649991d771cb4d62243e11543 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Br=C3=BCbach?= Date: Sun, 11 Oct 2026 14:59:04 +0200 Subject: [PATCH 1/2] [Tournament] Fold tournament settings hint into the spinbox tooltip The standalone hint label sat in the form layout's field column with an empty label cell, which misaligned it against the row above. Per review, drop the label and carry its text in the spinbox tooltip instead. --- .../interface/widgets/dialogs/dlg_tournament_settings.cpp | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_tournament_settings.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_tournament_settings.cpp index 49dbf065a..cb69e042d 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_tournament_settings.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_tournament_settings.cpp @@ -2,7 +2,6 @@ #include #include -#include #include #include @@ -15,13 +14,9 @@ DlgTournamentSettings::DlgTournamentSettings(QWidget *parent) : QDialog(parent) gamesPerMatchSpin = new QSpinBox(this); gamesPerMatchSpin->setRange(1, 5); gamesPerMatchSpin->setValue(1); - gamesPerMatchSpin->setToolTip(tr("Number of games per match (e.g., 3 for Best of 3)")); + gamesPerMatchSpin->setToolTip(tr("Number of games per match (e.g., 3 for Best of 3, 5 for Best of 5)")); mainLayout->addRow(tr("Games per match:"), gamesPerMatchSpin); - QLabel *hintLabel = new QLabel(tr("Set to 3 for Best of 3, 5 for Best of 5, etc."), this); - hintLabel->setStyleSheet("color: palette(placeholderText);"); - mainLayout->addRow(QString(), hintLabel); - buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this); connect(buttonBox, &QDialogButtonBox::accepted, this, &DlgTournamentSettings::actOK); connect(buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject); From 6c9390594a056150f5424f42729dcb1f6ad31dc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Br=C3=BCbach?= Date: Sun, 11 Oct 2026 17:32:03 +0200 Subject: [PATCH 2/2] [Client] Skip decided pairings when resolving live tournament game --- cockatrice/src/interface/widgets/draft/tournament_widget.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cockatrice/src/interface/widgets/draft/tournament_widget.cpp b/cockatrice/src/interface/widgets/draft/tournament_widget.cpp index e7aa356b4..8693b3da7 100644 --- a/cockatrice/src/interface/widgets/draft/tournament_widget.cpp +++ b/cockatrice/src/interface/widgets/draft/tournament_widget.cpp @@ -185,7 +185,7 @@ void TournamentWidget::rebuildTables(const Event_TournamentState &state) QString statusStr; if (pairing.player2_id() == -1) { statusStr = tr("BYE"); - } else if (pairing.winner_id() != -1) { + } else if (pairing.has_winner_id() || pairing.is_draw()) { statusStr = tr("Finished"); } else { statusStr = tr("vs"); @@ -211,7 +211,7 @@ void TournamentWidget::resolveCurrentGameId(const Event_TournamentState &state) for (int i = 0; i < state.pairings_size(); ++i) { const auto &pairing = state.pairings(i); - if (pairing.game_id() == -1) { + if (pairing.game_id() == -1 || pairing.has_winner_id() || pairing.is_draw()) { continue; } if (!hasOwnLivePairing && localPlayerId != -1 &&