Favorites for EmulationStation
-
@herb_fargus that was something that was taken into account during the implementation, as we tried to keep it fairly close to MVC as possible.
Part of it will, certainly - the Model will be replaced by a simple query, rather than the current logic to go through the metadata and parse things - but the rest should be able to be reused.
That being said, the Model but was also kind of a big part of the effort for that particular change, so yes, a lot of the code will be replaced by something simpler, but at least we get to use it already for the near future :)
Edit: @mattrixk there is certainly a long standing bug around that with folders. I thought it had been fixed recently by @jdrassa , but if that still happens in the current main branch we should take a look.
@Zigurana Did you check the approach from recalbox I sent you a while ago, with the star glyph? I suspect it is a standard character across several fonts, but may need to check. Maybe this testing stage is a good opportunity to validate that as several people can run it with several themes and check that before it gets actually merged to master.
@Syhles Zigurana's kids mode fork has these options as system-wife filters, so that's why I was bringing it up in case he does want to go down that route as well. The architecture for filters that I put together was system specific (and does not save across sessions) but it should be reasonably easy to add favorites and kids/kiosk mode as an option as well by using it as a setting, and setting that particular filter for all Systems when loading the settings and creating the Systems data. I don't want his vision to be restricted by what's there, feature-wise!
-
@Zigurana Is it possible to have the folders stay at the top of the list, like a normal file explorer?
-
@pjft said in Favorites for EmulationStation:
@Zigurana well done!
Could we not use the component that has On/Off, use some logic to convert that to the right filter strings, and call it "Show favorites only"?That would be the best way, so maybe I'll go ahead and try to implement something like that.
Are you also going to implement a system wide option for it? Let me know if you need any guidance across the code - either here, via GitHub or via email. Happy to help and discuss changes that may be needed to support things.
I think a global "show favorites only" option makes sense, but let's discuss a possible strategy on GitHub.
at first glance the square brackets are useful around the folders. Does that solve your alphabetical sorting issues as well, out of curiosity?
Nah, this is cosmetic only, the sorting issue is still open.
-
@mattrixk said in Favorites for EmulationStation:
@Zigurana I think I'll still make a "Kids" folder though, unless you plan on adding another custom metadata item just for that, the same way you've done it for "favourites". I know you already have the full Kid-Friendly mod, but I think a simple metadata tag has it's place too, for those users that don't want/need the full setup.
The plan is exactly that, to introduce new metadata types for hidden and child-friendly, and reinstate the "forced filtering" when a specific UI mode is set. The end goal is to get feature-parity with the old kid-mode branch, so I can get rid of that one altogether.
If you have a System with a Folder, the first item in the folder won't display any metadata (image, description, genre, etc) until you scroll up or down, then if you go back to it, the metadata shows up.
Any thoughts on what may cause this?Not sure, is there an issue raised for this on the Retropie repo?
-
@pjft said in Favorites for EmulationStation:
@Zigurana Did you check the approach from recalbox I sent you a while ago, with the star glyph? I suspect it is a standard character across several fonts, but may need to check. Maybe this testing stage is a good opportunity to validate that as several people can run it with several themes and check that before it gets actually merged to master.
I tried it with the carbon and pixel themes, but got only '?' characters. I wrote it down to Recalbox having more/better unicode support also for their translation efforts. It is an trivial change so I could reinstate it if need be.
On the other hand, I've seen folks here on the forum modifying fonts in order to get the glyphs they want. That route is still possible, but maybe the std asterisk is not the right character to pick, it may be occurs in game-names as well?@Syhles Zigurana's kids mode fork has these options as system-wife filters,
Yes a specific filter for 90-s platformers, what can I say, she just loves commander keen! :-p
-
@mattrixk said in Favorites for EmulationStation:
@Zigurana Is it possible to have the folders stay at the top of the list, like a normal file explorer?
I had a small code change for exactly that prepared, but the question is if this is expected behavior for all users. For instance in case of multi-disk games grouped in a folder, would you want to see it on top of the list, or at its alphabetical location?
At least with the brackets, it's a bit more clear than just the color - change for folders.
(btw would more colors for game-types be useful?) -
@Zigurana said in Favorites for EmulationStation:
what can I say, she just loves commander keen!
That's a euphemism if ever I've heard one.
multi-disk games grouped in a folder
I didn't think of this. I don't really use folders that way, so it didn't occur to me. Maybe an option to say whether the folders should be at the top or alphabetical? Either as an option in the select menu, or as something that could be added to the gamelist.xml?
Is there a way to display what filters are active? We could maybe have a <text> field in the Theme just lists out the active filters.
-
@mattrixk said in Favorites for EmulationStation:
Maybe an option to say whether the folders should be at the top or alphabetical? Either as an option in the select menu, or as something that could be added to the gamelist.xml?
That could be a solution, if a bit unwieldy, I will do a PR on this so people can test it.
Is there a way to display what filters are active? We could maybe have a <text> field in the Theme just lists out the active filters.
That's a really good idea for theming improvements!
-
@Zigurana, I don't really think forcing brackets on folders or reordering them to the top of the list without an option to turn that off would be a good idea for everyone's build.
The way I'm using folders for multidisk games is getting all the disks inside a scraped folder names after the game, which sits properly in alphabetical order until I want to play that game, and then selecting the active disk from a list inside the folder. Not having brackets in the list keeps it aesthetically pleasing and coherent as it is. If i want a folder to go to the top of the list or identify itself as a folder, I can do it with a special character as explained in the "Folder Icon" section in the NES mini theme (https://retropie.org.uk/forum/topic/8391/cardboard-mini-nes-nes-mini-and-famicom-mini-themes):
Folder Icon
If you use subfolders for your roms the themes have the ability to show a folder icon. To do so you need to name the folder with a preceding '#' symbol. Eg. name the folder '# Japan' and the '#' will be displayed as the folder icon followed by the word 'Japan'. It will look something like this:
This way i can keep my "ninja" multidisk folders, and still have an indication for proper folders an get them to show on the top of the list.
Other than that, I totally appreciate the effort in merging the kids-kiosk modes in the main branch and hope everything goes great. Keep up the good work!
-
@Serj-Targarien
Thanks for that input.
I believe that the NES-mini theme also uses a custom font where the '#' glyph is replaced by the folder icon, correct?
That would (for me) be an acceptable way of working, the best of both worlds actually. -
@Zigurana and if experience taught me anything use that you don't want to mess with someone who has a folder specifically for Ninja games :)
Great to hear - let me know if I can help in any way!
-
@Zigurana Exactly, the folder icon is embedded in the custom font of the theme, replacing the # symbol. That makes it possible to manually flag a folder as a folder and the # at the beginning automatically brings it to the top of the list.
-
@Serj-Targarien that's an interesting way to do things, but making custom fonts is a bit of a pain in the butt.
-
@mattrixk @Serj-Targarien @Zigurana is it a custom font, or an icon that replaces it?
Custom fonts, I agree, would not be something I'd be comfortable on enforcing or recommending.
-
@pjft
Font. -
@Syhles well, that's... unfortunate.
-
An advantage of having a custom font is that it is fully in the hands of themer, and end-user to set it up how they like.
Maximum flexibility for those who want to tinker.
Apparently others have managed to do this for the NES-mini theme, so they should be able to create a guide.
The alternative would be for one of us to extend the textlistComponent to include an additional asset (icon) for entries/lines. Which would need to be themable if we want to enable themers to adjust it to their needs. I doubt we would be able to make that strategy any easier to use, or efficient to run, but I might be wrong. -
@Zigurana Sure. I suppose my concern is always "what about themes that don't have a custom font, how will the folder be rendered"?
Maybe that solution is obvious to those who are already using such features, but it's unclear to me how we would keep folders in simple (i.e. non-custom-font) themes looking fine. :)
-
I'd love there to be a way of adding a folder, say making an OUTRUN folder which contains all the versions of that game from other systems inside for easy play. This way there would be a stock image for the 'folder' then when clicked inside, get the usual media displayed for each game (like usual).
This possible? I suppose its like adding videos to playlists in Youtube.. with a similar way of implementation.
-
@nevsan You can currently do that. Just make sure the Gamelist has the folder entry, with the right metadata and such.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.