From 3b0650b70d8196b30102e73305066e0dba9da8fe Mon Sep 17 00:00:00 2001
From: lat9nq <22451773+lat9nq@users.noreply.github.com>
Date: Mon, 12 Jun 2023 17:42:21 -0400
Subject: [PATCH] configuration/shared: Clean up includes [IWYU]

---
 src/yuzu/configuration/shared_translation.cpp | 11 ++++-----
 src/yuzu/configuration/shared_translation.h   |  2 +-
 src/yuzu/configuration/shared_widget.cpp      | 22 ++++++++++++-----
 src/yuzu/configuration/shared_widget.h        | 24 ++++++++++++-------
 4 files changed, 37 insertions(+), 22 deletions(-)

diff --git a/src/yuzu/configuration/shared_translation.cpp b/src/yuzu/configuration/shared_translation.cpp
index 0f9dc77ffc..b5a3fba4d7 100644
--- a/src/yuzu/configuration/shared_translation.cpp
+++ b/src/yuzu/configuration/shared_translation.cpp
@@ -1,17 +1,16 @@
 // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
 // SPDX-License-Identifier: GPL-2.0-or-later
 
-#include <forward_list>
+#include "yuzu/configuration/shared_translation.h"
+
 #include <map>
 #include <memory>
-#include <string>
-#include <typeindex>
-#include <typeinfo>
+#include <tuple>
 #include <utility>
-#include <QString>
 #include <QWidget>
 #include "common/settings.h"
-#include "yuzu/configuration/shared_translation.h"
+#include "common/settings_enums.h"
+#include "common/settings_setting.h"
 #include "yuzu/uisettings.h"
 
 namespace ConfigurationShared {
diff --git a/src/yuzu/configuration/shared_translation.h b/src/yuzu/configuration/shared_translation.h
index 52ef4f2ddd..cc8419e03a 100644
--- a/src/yuzu/configuration/shared_translation.h
+++ b/src/yuzu/configuration/shared_translation.h
@@ -5,11 +5,11 @@
 
 #include <map>
 #include <memory>
-#include <string>
 #include <typeindex>
 #include <utility>
 #include <vector>
 #include <QString>
+#include "common/common_types.h"
 
 class QWidget;
 
diff --git a/src/yuzu/configuration/shared_widget.cpp b/src/yuzu/configuration/shared_widget.cpp
index 6142c3cb92..6fdd00c677 100644
--- a/src/yuzu/configuration/shared_widget.cpp
+++ b/src/yuzu/configuration/shared_widget.cpp
@@ -1,34 +1,44 @@
 // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
 // SPDX-License-Identifier: GPL-2.0-or-later
 
+#include "yuzu/configuration/shared_widget.h"
+
 #include <functional>
-#include <limits>
+#include <typeindex>
 #include <typeinfo>
+#include <utility>
+#include <vector>
 #include <QAbstractButton>
-#include <QAbstractSpinBox>
+#include <QAbstractSlider>
 #include <QBoxLayout>
 #include <QCheckBox>
 #include <QComboBox>
+#include <QDateTime>
 #include <QDateTimeEdit>
-#include <QHBoxLayout>
 #include <QIcon>
 #include <QLabel>
+#include <QLayout>
 #include <QLineEdit>
+#include <QObject>
 #include <QPushButton>
+#include <QRegExp>
 #include <QSizePolicy>
 #include <QSlider>
 #include <QSpinBox>
 #include <QStyle>
 #include <QValidator>
-#include <QWidget>
+#include <QVariant>
+#include <QtCore/qglobal.h>
+#include <QtCore/qobjectdefs.h>
 #include <fmt/core.h>
+#include <qglobal.h>
+#include <qnamespace.h>
 #include "common/assert.h"
 #include "common/common_types.h"
 #include "common/logging/log.h"
 #include "common/settings.h"
-#include "yuzu/configuration/configuration_shared.h"
+#include "common/settings_common.h"
 #include "yuzu/configuration/shared_translation.h"
-#include "yuzu/configuration/shared_widget.h"
 
 namespace ConfigurationShared {
 
diff --git a/src/yuzu/configuration/shared_widget.h b/src/yuzu/configuration/shared_widget.h
index d99a5eaced..8ce72b2380 100644
--- a/src/yuzu/configuration/shared_widget.h
+++ b/src/yuzu/configuration/shared_widget.h
@@ -3,22 +3,28 @@
 
 #pragma once
 
-#include "yuzu/configuration/configuration_shared.h"
+#include <forward_list>
+#include <functional>
+#include <string>
+#include <QString>
+#include <QStringLiteral>
+#include <QWidget>
+#include <qobjectdefs.h>
 #include "yuzu/configuration/shared_translation.h"
 
-class QPushButton;
-class QSpinBox;
-class QComboBox;
-class QLineEdit;
-class QSlider;
 class QCheckBox;
-class QLabel;
-class QHBoxLayout;
+class QComboBox;
 class QDateTimeEdit;
+class QLabel;
+class QLineEdit;
+class QObject;
+class QPushButton;
+class QSlider;
+class QSpinBox;
 
 namespace Settings {
 class BasicSetting;
-}
+} // namespace Settings
 
 namespace ConfigurationShared {