From 88c8b4cdbb6472005a09325ed8c53d55ccb8d9bd Mon Sep 17 00:00:00 2001 From: Collecting Date: Mon, 5 Jan 2026 10:30:07 +0000 Subject: [PATCH] fix(gamescope): Restructure Multiplayer Dialogs for Gamescope Signed-off-by: Collecting --- src/citron/multiplayer/lobby.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/citron/multiplayer/lobby.cpp b/src/citron/multiplayer/lobby.cpp index 658e5e1c5..bd085ce26 100644 --- a/src/citron/multiplayer/lobby.cpp +++ b/src/citron/multiplayer/lobby.cpp @@ -27,10 +27,23 @@ Lobby::Lobby(QWidget* parent, QStandardItemModel* list, std::shared_ptr session, Core::System& system_) - : QDialog(parent, Qt::WindowTitleHint | Qt::WindowCloseButtonHint | Qt::WindowSystemMenuHint), + : QDialog(parent), ui(std::make_unique()), announce_multiplayer_session(session), system{system_}, room_network{ system.GetRoomNetwork()} { + + const bool is_gamescope = UISettings::IsGamescope(); + if (is_gamescope) { + setWindowFlags(Qt::Window | Qt::CustomizeWindowHint | Qt::WindowTitleHint); + setWindowModality(Qt::NonModal); + + int w = 800; + int h = 500; + setFixedSize(w, h); + } else { + setWindowFlags(Qt::Dialog | Qt::WindowTitleHint | Qt::WindowCloseButtonHint | Qt::WindowSystemMenuHint); + } + ui->setupUi(this); // setup the watcher for background connections