From ff18b89e666c4d335ca576ccab19d1deecac6f98 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C2=A5IGA?= <164882787+Xphalnos@users.noreply.github.com>
Date: Mon, 25 Nov 2024 13:26:40 +0100
Subject: [PATCH] Fix Game List Mode (#1591)

---
 src/qt_gui/main_window.cpp  | 9 ++++++---
 src/qt_gui/main_window_ui.h | 7 +++----
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/src/qt_gui/main_window.cpp b/src/qt_gui/main_window.cpp
index f2ee8789..02c7f18a 100644
--- a/src/qt_gui/main_window.cpp
+++ b/src/qt_gui/main_window.cpp
@@ -102,6 +102,7 @@ void MainWindow::CreateActions() {
     m_list_mode_act_group = new QActionGroup(this);
     m_list_mode_act_group->addAction(ui->setlistModeListAct);
     m_list_mode_act_group->addAction(ui->setlistModeGridAct);
+    m_list_mode_act_group->addAction(ui->setlistElfAct);
 
     // create action group for themes
     m_theme_act_group = new QActionGroup(this);
@@ -362,7 +363,7 @@ void MainWindow::CreateConnects() {
         ui->sizeSlider->setEnabled(true);
         ui->sizeSlider->setSliderPosition(slider_pos_grid);
     });
-    // Elf
+    // Elf Viewer
     connect(ui->setlistElfAct, &QAction::triggered, m_dock_widget.data(), [this]() {
         BackgroundMusicPlayer::getInstance().stopMusic();
         m_dock_widget->setWidget(m_elf_viewer.data());
@@ -622,10 +623,12 @@ void MainWindow::ConfigureGuiFromSettings() {
                 Config::getMainWindowGeometryW(), Config::getMainWindowGeometryH());
 
     ui->showGameListAct->setChecked(true);
-    if (isTableList) {
+    if (Config::getTableMode() == 0) {
         ui->setlistModeListAct->setChecked(true);
-    } else {
+    } else if (Config::getTableMode() == 1) {
         ui->setlistModeGridAct->setChecked(true);
+    } else if (Config::getTableMode() == 2) {
+        ui->setlistElfAct->setChecked(true);
     }
     BackgroundMusicPlayer::getInstance().setVolume(Config::getBGMvolume());
 }
diff --git a/src/qt_gui/main_window_ui.h b/src/qt_gui/main_window_ui.h
index a51e37d1..cb9aa590 100644
--- a/src/qt_gui/main_window_ui.h
+++ b/src/qt_gui/main_window_ui.h
@@ -110,15 +110,14 @@ public:
         setIconSizeLargeAct->setCheckable(true);
         setlistModeListAct = new QAction(MainWindow);
         setlistModeListAct->setObjectName("setlistModeListAct");
-        setlistModeListAct->setCheckable(true);
-        setlistModeListAct->setChecked(true);
         setlistModeListAct->setIcon(QIcon(":images/list_icon.png"));
+        setlistModeListAct->setCheckable(true);
         setlistModeGridAct = new QAction(MainWindow);
         setlistModeGridAct->setObjectName("setlistModeGridAct");
-        setlistModeGridAct->setCheckable(true);
         setlistModeGridAct->setIcon(QIcon(":images/grid_icon.png"));
+        setlistModeGridAct->setCheckable(true);
         setlistElfAct = new QAction(MainWindow);
-        setlistElfAct->setObjectName("setlistModeGridAct");
+        setlistElfAct->setObjectName("setlistElfAct");
         setlistElfAct->setCheckable(true);
         gameInstallPathAct = new QAction(MainWindow);
         gameInstallPathAct->setObjectName("gameInstallPathAct");