@ -173,13 +173,17 @@ void GameList::OnItemExpanded(const QModelIndex& item) {
const bool is_dir = type = = GameListItemType : : CustomDir | | type = = GameListItemType : : SdmcDir | |
type = = GameListItemType : : UserNandDir | |
type = = GameListItemType : : SysNandDir ;
if ( ! is_dir ) {
const bool is_fave = type = = GameListItemType : : Favorites ;
if ( ! is_dir & & ! is_fave ) {
return ;
}
UISettings : : values . game_dirs [ item . data ( GameListDir : : GameDirRole ) . toInt ( ) ] . expanded =
tree_view - > isExpanded ( item ) ;
const bool is_expanded = tree_view - > isExpanded ( item ) ;
if ( is_fave ) {
UISettings : : values . favorites_expanded = is_expanded ;
return ;
}
const int item_dir_index = item . data ( GameListDir : : GameDirRole ) . toInt ( ) ;
UISettings : : values . game_dirs [ item_dir_index ] . expanded = is_expanded ;
}
// Event in order to filter the gamelist after editing the searchfield
@ -458,10 +462,13 @@ void GameList::DonePopulating(const QStringList& watch_list) {
emit ShowList ( ! IsEmpty ( ) ) ;
item_model - > invisibleRootItem ( ) - > appendRow ( new GameListAddDir ( ) ) ;
// Add favorites row
item_model - > invisibleRootItem ( ) - > insertRow ( 0 , new GameListFavorites ( ) ) ;
tree_view - > setRowHidden ( 0 , item_model - > invisibleRootItem ( ) - > index ( ) ,
UISettings : : values . favorited_ids . size ( ) = = 0 ) ;
tree_view - > expand ( item_model - > invisibleRootItem ( ) - > child ( 0 ) - > index ( ) ) ;
tree_view - > setExpanded ( item_model - > invisibleRootItem ( ) - > child ( 0 ) - > index ( ) ,
UISettings : : values . favorites_expanded . GetValue ( ) ) ;
for ( const auto id : UISettings : : values . favorited_ids ) {
AddFavorite ( id ) ;
}