Browse Source

Fix double refresh crash

Signed-off-by: crueter <crueter@eden-emu.dev>
pull/3479/head
crueter 1 day ago
parent
commit
27a32cec71
No known key found for this signature in database GPG Key ID: 425ACD2D4830EBC6
  1. 1
      src/yuzu/game/game_card.cpp
  2. 9
      src/yuzu/game/game_list.cpp

1
src/yuzu/game/game_card.cpp

@ -2,7 +2,6 @@
// SPDX-License-Identifier: GPL-3.0-or-later // SPDX-License-Identifier: GPL-3.0-or-later
#include <QPainter> #include <QPainter>
#include <qnamespace.h>
#include "game_card.h" #include "game_card.h"
#include "qt_common/config/uisettings.h" #include "qt_common/config/uisettings.h"

9
src/yuzu/game/game_list.cpp

@ -467,18 +467,19 @@ bool GameList::IsTreeMode() {
void GameList::ResetViewMode() { void GameList::ResetViewMode() {
auto &setting = UISettings::values.game_list_mode; auto &setting = UISettings::values.game_list_mode;
bool newTreeMode = false;
switch (setting.GetValue()) { switch (setting.GetValue()) {
case Settings::GameListMode::TreeView: case Settings::GameListMode::TreeView:
m_currentView = tree_view; m_currentView = tree_view;
m_isTreeMode = true;
newTreeMode = true;
tree_view->setVisible(true); tree_view->setVisible(true);
list_view->setVisible(false); list_view->setVisible(false);
break; break;
case Settings::GameListMode::GridView: case Settings::GameListMode::GridView:
m_currentView = list_view; m_currentView = list_view;
m_isTreeMode = false;
newTreeMode = false;
list_view->setVisible(true); list_view->setVisible(true);
tree_view->setVisible(false); tree_view->setVisible(false);
@ -487,6 +488,9 @@ void GameList::ResetViewMode() {
break; break;
} }
if (m_isTreeMode != newTreeMode) {
m_isTreeMode = newTreeMode;
auto view = m_currentView->viewport(); auto view = m_currentView->viewport();
view->installEventFilter(this); view->installEventFilter(this);
@ -508,6 +512,7 @@ void GameList::ResetViewMode() {
RefreshGameDirectory(); RefreshGameDirectory();
} }
}
GameList::~GameList() { GameList::~GameList() {
UnloadController(); UnloadController();

Loading…
Cancel
Save