Browse Source
Fix double refresh crash
Signed-off-by: crueter <crueter@eden-emu.dev>
pull/3479/head
crueter
4 weeks ago
No known key found for this signature in database
GPG Key ID: 425ACD2D4830EBC6
2 changed files with
22 additions and
18 deletions
-
src/yuzu/game/game_card.cpp
-
src/yuzu/game/game_list.cpp
|
|
|
@ -2,7 +2,6 @@ |
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
|
|
|
#include <QPainter>
|
|
|
|
#include <qnamespace.h>
|
|
|
|
#include "game_card.h"
|
|
|
|
#include "qt_common/config/uisettings.h"
|
|
|
|
|
|
|
|
|
|
|
|
@ -467,18 +467,19 @@ bool GameList::IsTreeMode() { |
|
|
|
|
|
|
|
void GameList::ResetViewMode() { |
|
|
|
auto &setting = UISettings::values.game_list_mode; |
|
|
|
bool newTreeMode = false; |
|
|
|
|
|
|
|
switch (setting.GetValue()) { |
|
|
|
case Settings::GameListMode::TreeView: |
|
|
|
m_currentView = tree_view; |
|
|
|
m_isTreeMode = true; |
|
|
|
newTreeMode = true; |
|
|
|
|
|
|
|
tree_view->setVisible(true); |
|
|
|
list_view->setVisible(false); |
|
|
|
break; |
|
|
|
case Settings::GameListMode::GridView: |
|
|
|
m_currentView = list_view; |
|
|
|
m_isTreeMode = false; |
|
|
|
newTreeMode = false; |
|
|
|
|
|
|
|
list_view->setVisible(true); |
|
|
|
tree_view->setVisible(false); |
|
|
|
@ -487,6 +488,9 @@ void GameList::ResetViewMode() { |
|
|
|
break; |
|
|
|
} |
|
|
|
|
|
|
|
if (m_isTreeMode != newTreeMode) { |
|
|
|
m_isTreeMode = newTreeMode; |
|
|
|
|
|
|
|
auto view = m_currentView->viewport(); |
|
|
|
|
|
|
|
view->installEventFilter(this); |
|
|
|
@ -507,6 +511,7 @@ void GameList::ResetViewMode() { |
|
|
|
scroller->setScrollerProperties(props); |
|
|
|
|
|
|
|
RefreshGameDirectory(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
GameList::~GameList() { |
|
|
|
|