diff --git a/src/citron/multiplayer/direct_connect.cpp b/src/citron/multiplayer/direct_connect.cpp index eafd964b4..909d14836 100644 --- a/src/citron/multiplayer/direct_connect.cpp +++ b/src/citron/multiplayer/direct_connect.cpp @@ -1,4 +1,5 @@ // SPDX-FileCopyrightText: Copyright 2017 Citra Emulator Project +// SPDX-FileCopyrightText: Copyright 2026 citron Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later #include @@ -24,10 +25,22 @@ enum class ConnectionType : u8 { TraversalServer, IP }; DirectConnectWindow::DirectConnectWindow(Core::System& system_, QWidget* parent) - : QDialog(parent, Qt::WindowTitleHint | Qt::WindowCloseButtonHint | Qt::WindowSystemMenuHint), + : QDialog(parent), ui(std::make_unique()), 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