From 982b171f30e2689e9b5b4fa4fe0e287ae57e595c Mon Sep 17 00:00:00 2001 From: crueter Date: Fri, 8 Aug 2025 01:25:00 +0200 Subject: [PATCH] [desktop] fix random qt annoyances (#226) Removes that silly QLayout message and improves consistency thereof for other QLayouts Still work to be done but this is all that's needed rn Signed-off-by: crueter Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/226 Reviewed-by: Shinmegumi --- src/core/hle/service/acc/profile_manager.cpp | 4 ++-- src/yuzu/applets/qt_profile_select.cpp | 10 +++++----- src/yuzu/bootmanager.cpp | 1 - src/yuzu/configuration/configure.ui | 2 +- src/yuzu/configuration/configure_input.cpp | 12 ++++++++---- src/yuzu/configuration/configure_input_player.cpp | 5 +++-- src/yuzu/configuration/configure_motion_touch.cpp | 6 ++++-- src/yuzu/configuration/configure_profile_manager.cpp | 5 ++--- src/yuzu/configuration/configure_profile_manager.h | 1 + src/yuzu/debugger/controller.cpp | 4 +++- src/yuzu/util/limitable_input_dialog.cpp | 7 ++++--- 11 files changed, 33 insertions(+), 24 deletions(-) diff --git a/src/core/hle/service/acc/profile_manager.cpp b/src/core/hle/service/acc/profile_manager.cpp index b4cc35b5c0..71bf89f43f 100644 --- a/src/core/hle/service/acc/profile_manager.cpp +++ b/src/core/hle/service/acc/profile_manager.cpp @@ -391,14 +391,14 @@ void ProfileManager::ParseUserSaveFile() { if (!save.IsOpen()) { LOG_WARNING(Service_ACC, "Failed to load profile data from save data... Generating new " - "user 'yuzu' with random UUID."); + "user 'eden' with random UUID."); return; } ProfileDataRaw data; if (!save.ReadObject(data)) { LOG_WARNING(Service_ACC, "profiles.dat is smaller than expected... Generating new user " - "'yuzu' with random UUID."); + "'eden' with random UUID."); return; } diff --git a/src/yuzu/applets/qt_profile_select.cpp b/src/yuzu/applets/qt_profile_select.cpp index 59133b82dd..8f28827191 100644 --- a/src/yuzu/applets/qt_profile_select.cpp +++ b/src/yuzu/applets/qt_profile_select.cpp @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project +// SPDX-License-Identifier: GPL-3.0-or-later + // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later @@ -52,7 +55,7 @@ QtProfileSelectionDialog::QtProfileSelectionDialog( Core::System& system, QWidget* parent, const Core::Frontend::ProfileSelectParameters& parameters) : QDialog(parent), profile_manager{system.GetProfileManager()} { - outer_layout = new QVBoxLayout; + outer_layout = new QVBoxLayout(this); instruction_label = new QLabel(); @@ -66,7 +69,7 @@ QtProfileSelectionDialog::QtProfileSelectionDialog( outer_layout->addWidget(scroll_area); outer_layout->addWidget(buttons); - layout = new QVBoxLayout; + layout = new QVBoxLayout(scroll_area); tree_view = new QTreeView; item_model = new QStandardItemModel(tree_view); tree_view->setModel(item_model); @@ -94,8 +97,6 @@ QtProfileSelectionDialog::QtProfileSelectionDialog( layout->setSpacing(0); layout->addWidget(tree_view); - scroll_area->setLayout(layout); - connect(tree_view, &QTreeView::clicked, this, &QtProfileSelectionDialog::SelectUser); connect(tree_view, &QTreeView::doubleClicked, this, &QtProfileSelectionDialog::accept); connect(controller_navigation, &ControllerNavigation::TriggerKeyboardEvent, @@ -124,7 +125,6 @@ QtProfileSelectionDialog::QtProfileSelectionDialog( for (const auto& item : list_items) item_model->appendRow(item); - setLayout(outer_layout); SetWindowTitle(parameters); SetDialogPurpose(parameters); resize(550, 400); diff --git a/src/yuzu/bootmanager.cpp b/src/yuzu/bootmanager.cpp index e54064d8a5..b1ca497e32 100644 --- a/src/yuzu/bootmanager.cpp +++ b/src/yuzu/bootmanager.cpp @@ -287,7 +287,6 @@ GRenderWindow::GRenderWindow(GMainWindow* parent, EmuThread* emu_thread_, setAttribute(Qt::WA_AcceptTouchEvents); auto* layout = new QHBoxLayout(this); layout->setContentsMargins(0, 0, 0, 0); - setLayout(layout); input_subsystem->Initialize(); this->setMouseTracking(true); diff --git a/src/yuzu/configuration/configure.ui b/src/yuzu/configuration/configure.ui index 973219c9fd..875e0cea8e 100644 --- a/src/yuzu/configuration/configure.ui +++ b/src/yuzu/configuration/configure.ui @@ -17,7 +17,7 @@ - eden Configuration + Eden Configuration diff --git a/src/yuzu/configuration/configure_input.cpp b/src/yuzu/configuration/configure_input.cpp index 28c3baf086..c066c5f21c 100644 --- a/src/yuzu/configuration/configure_input.cpp +++ b/src/yuzu/configuration/configure_input.cpp @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project +// SPDX-License-Identifier: GPL-3.0-or-later + // SPDX-FileCopyrightText: 2016 Citra Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later @@ -98,8 +101,8 @@ void ConfigureInput::Initialize(InputCommon::InputSubsystem* input_subsystem, }; for (std::size_t i = 0; i < player_tabs.size(); ++i) { - player_tabs[i]->setLayout(new QHBoxLayout(player_tabs[i])); - player_tabs[i]->layout()->addWidget(player_controllers[i]); + QHBoxLayout *tab_layout = new QHBoxLayout(player_tabs[i]); + tab_layout->addWidget(player_controllers[i]); connect(player_controllers[i], &ConfigureInputPlayer::Connected, [this, i](bool checked) { // Ensures that connecting a controller changes the number of players if (connected_controller_checkboxes[i]->isChecked() != checked) { @@ -138,8 +141,9 @@ void ConfigureInput::Initialize(InputCommon::InputSubsystem* input_subsystem, [this](bool is_handheld) { UpdateDockedState(is_handheld); }); advanced = new ConfigureInputAdvanced(hid_core, this); - ui->tabAdvanced->setLayout(new QHBoxLayout(ui->tabAdvanced)); - ui->tabAdvanced->layout()->addWidget(advanced); + + QHBoxLayout* advancedLayout = new QHBoxLayout(ui->tabAdvanced); + advancedLayout->addWidget(advanced); connect(advanced, &ConfigureInputAdvanced::CallDebugControllerDialog, [this, input_subsystem, &hid_core, is_powered_on] { diff --git a/src/yuzu/configuration/configure_input_player.cpp b/src/yuzu/configuration/configure_input_player.cpp index 12fe935e41..d0dc0ff44c 100644 --- a/src/yuzu/configuration/configure_input_player.cpp +++ b/src/yuzu/configuration/configure_input_player.cpp @@ -1,10 +1,12 @@ +// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project +// SPDX-License-Identifier: GPL-3.0-or-later + // SPDX-FileCopyrightText: 2016 Citra Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later #include #include #include -#include #include #include #include @@ -13,7 +15,6 @@ #include "common/assert.h" #include "common/param_package.h" #include "configuration/qt_config.h" -#include "frontend_common/config.h" #include "hid_core/frontend/emulated_controller.h" #include "hid_core/hid_core.h" #include "hid_core/hid_types.h" diff --git a/src/yuzu/configuration/configure_motion_touch.cpp b/src/yuzu/configuration/configure_motion_touch.cpp index e6d7d58299..a726a422d6 100644 --- a/src/yuzu/configuration/configure_motion_touch.cpp +++ b/src/yuzu/configuration/configure_motion_touch.cpp @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project +// SPDX-License-Identifier: GPL-3.0-or-later + // SPDX-FileCopyrightText: 2018 Citra Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later @@ -19,7 +22,7 @@ CalibrationConfigurationDialog::CalibrationConfigurationDialog(QWidget* parent, const std::string& host, u16 port) : QDialog(parent) { - layout = new QVBoxLayout; + layout = new QVBoxLayout(this); status_label = new QLabel(tr("Communicating with the server...")); cancel_button = new QPushButton(tr("Cancel")); connect(cancel_button, &QPushButton::clicked, this, [this] { @@ -30,7 +33,6 @@ CalibrationConfigurationDialog::CalibrationConfigurationDialog(QWidget* parent, }); layout->addWidget(status_label); layout->addWidget(cancel_button); - setLayout(layout); using namespace InputCommon::CemuhookUDP; job = std::make_unique( diff --git a/src/yuzu/configuration/configure_profile_manager.cpp b/src/yuzu/configuration/configure_profile_manager.cpp index f009800d52..f5de08a676 100644 --- a/src/yuzu/configuration/configure_profile_manager.cpp +++ b/src/yuzu/configuration/configure_profile_manager.cpp @@ -418,7 +418,7 @@ bool ConfigureProfileManager::LoadAvatarData() { ConfigureProfileManagerAvatarDialog::ConfigureProfileManagerAvatarDialog(QWidget* parent) : QDialog{parent}, avatar_list{new QListWidget(this)}, bg_color_button{new QPushButton(this)} { auto* main_layout = new QVBoxLayout(this); - auto* button_layout = new QHBoxLayout(this); + auto* button_layout = new QHBoxLayout(); auto* select_button = new QPushButton(tr("Select"), this); auto* cancel_button = new QPushButton(tr("Cancel"), this); auto* bg_color_label = new QLabel(tr("Background Color"), this); @@ -442,7 +442,6 @@ ConfigureProfileManagerAvatarDialog::ConfigureProfileManagerAvatarDialog(QWidget button_layout->addWidget(select_button); button_layout->addWidget(cancel_button); - this->setLayout(main_layout); this->setWindowTitle(tr("Select Firmware Avatar")); main_layout->addWidget(avatar_list); main_layout->addLayout(button_layout); @@ -654,4 +653,4 @@ std::vector ConfigureProfileManager::DecompressYaz0(const FileSys::Virt } return output; -} \ No newline at end of file +} diff --git a/src/yuzu/configuration/configure_profile_manager.h b/src/yuzu/configuration/configure_profile_manager.h index 00dcdd5d9f..8b80a04a0d 100644 --- a/src/yuzu/configuration/configure_profile_manager.h +++ b/src/yuzu/configuration/configure_profile_manager.h @@ -12,6 +12,7 @@ #include #include #include +#include "core/file_sys/vfs/vfs_types.h" namespace Common { struct UUID; diff --git a/src/yuzu/debugger/controller.cpp b/src/yuzu/debugger/controller.cpp index 216d2974d2..a9d2663d22 100644 --- a/src/yuzu/debugger/controller.cpp +++ b/src/yuzu/debugger/controller.cpp @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project +// SPDX-License-Identifier: GPL-3.0-or-later + // SPDX-FileCopyrightText: 2015 Citra Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later @@ -28,7 +31,6 @@ ControllerDialog::ControllerDialog(Core::HID::HIDCore& hid_core_, QLayout* layout = new QVBoxLayout(this); layout->setContentsMargins(0, 0, 0, 0); layout->addWidget(widget); - setLayout(layout); // Configure focus so that widget is focusable and the dialog automatically forwards focus to // it. diff --git a/src/yuzu/util/limitable_input_dialog.cpp b/src/yuzu/util/limitable_input_dialog.cpp index 5f6a9c1934..baf6135391 100644 --- a/src/yuzu/util/limitable_input_dialog.cpp +++ b/src/yuzu/util/limitable_input_dialog.cpp @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project +// SPDX-License-Identifier: GPL-3.0-or-later + // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later @@ -21,13 +24,11 @@ void LimitableInputDialog::CreateUI() { text_label_invalid = new QLabel(this); buttons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this); - auto* const layout = new QVBoxLayout; + auto* const layout = new QVBoxLayout(this); layout->addWidget(text_label); layout->addWidget(text_entry); layout->addWidget(text_label_invalid); layout->addWidget(buttons); - - setLayout(layout); } void LimitableInputDialog::ConnectEvents() {