Favorites for EmulationStation
-
@Zigurana If we use a standard font set for the star, regardless of the theme font, I am supportive of that for now. Feels fairly small and self-contained, and wouldn't require themers to develop their own fonts.
We can later on add more to it if someone feels brave enough.
-
@Zigurana said in Favorites for EmulationStation:
Also, what about favorite folders?
I really think the current implementation is fine, that is no favourites on folders. If you filter by favourites, you look inside folders if they have at least 1 element matching the filter ( which is how we both implemented it ).
-
@pjft @Zigurana I don't want to be difficult because you guys are awesome in building all of this for us, but what happens when i want to use the comic book "pow" symbol as my star system? Right now I can use any image i want and as long as i name them correctly they will work instead of a star. By making the symbol a font, i can no longer use any image i want, but have to choose from a selection of characters? I might be missing something here?
-
@TMNTturtlguy said in Favorites for EmulationStation:
@pjft @Zigurana I don't want to be difficult because you guys are awesome in building all of this for us, but what happens when i want to use the comic book "pow" symbol as my star system? Right now I can use any image i want and as long as i name them correctly they will work instead of a star. By making the symbol a font, i can no longer use any image i want, but have to choose from a selection of characters? I might be missing something here?
afaik it's gonna be:
step1: implement favourites with a star icon. no themeing support, but a lot of people asked for this
step2:implement either a font glyph system or icon and themeing support for it ( maybe including alignment, position, ecc ) -
Correct.
Otherwise it'd be like not ever having implemented Videos in ES because we couldn't get them to have good performance on the Pi. Or not implementing videos in gamelists because we didn't have them in the SystemView as well. Or not implementing filters because we don't yet have the right data architecture behind it (will it be SQLite? Something else? Still under discussion) :)
In fact, there are a few things being discussed here that are worthy of breaking down - even though, to be fair, I'm just watching from the sidelines. A reasonable, task-driven approach to making something like this happen could be (these are not necessarily sequential or ranked by anything other than what comes to mind):
- Step 1: adding favorites metadata and labels.
- Step 1a: adding basic theme support (to give feature parity with ES Kids). This means adding a metadata icon, just that - it's not theming the gamelist.
- Step 1b: Optional, as a separate PR potentially, adding some sort of visual cue in the gamelist for favorite games. Something that works, not something that is the end-all-be-all of these solutions. Colors, stars, whatever.
- Step 1c: Optional, as a separate PR potentially, integrating with sorting and filtering.
- Step 2: figure out if/how we'd want to theme the gamelist. And then someone does it, they way they feel responds to the needs of theme makers, to their own preferences, and ultimately in a way that's achievable and manageable. :)
This way it's a practical approach to bring small, but meaningful improvements out to the community, and make these relevant - but sometimes hard to get closure on - architectural and design discussions to block only the actual things that they affect.
So, a proper answer - unless @Zigurana, @sokiee or someone else who'd like to take this on think differently and already have a proper solution in mind - is: "in the short term you wouldn't be able to use a custom image for that purpose (as you currently can't), but it is certainly under consideration for the roadmap" :)
-
@TMNTturtlguy
I think it's good to discriminate between a single separated element/icon that can be themed to be whatever, and the element that could be added to the gamelist itself (which scrolls with the game names), which I (for now at least) propose to be a text symbol.We can have both of those solutions be present at the same time.
-
@Zigurana said in Favorites for EmulationStation:
@ruckage
Do you have any idea how many glyphs are included in this particular set? Which one in particular are you missing?
The one thing that using a font has going for it is that the implementation is a lot easier to accomplish.
My proposal would be to start with the star hard-coded (as in the initial implementation for recalbox).
After this, we could allow it to be a themable element, from the FA set.
If then there is still a need, we could consider heavily modifying the GUITextListComponent to create some sort of hybrid list that includes both images and text.No need to be combative, I assumed you would want the opinion of those who are making the themes. I'm well aware of how many glyphs are included - doesn't change the fact the symbols I want are not included. I've taken great care to make a theme with a specific visual style so I wouldn't want to be forced to use something that just didn't match up. Other themers may disagree but I think my concerns are valid.
I would much prefer just a metadata icon that could be displayed like the rating icons.
-
@TMNTturtlguy and @ruckage Thanks for the comments, and definitely be sure that the more information the better, so that whatever decision is taken, it'll be taken with a good idea of the choices and consequences, as well as the effort and return.
I think @Zigurana last comment might actually have been more relevant then.
In the ES-Kids mode, there is a metadata icon, just like the ratings icon, that can be displayed. It's perfectly configurable per theme!
It is not, however, shown in the gamelist.
@ruckage What exactly would you be thinking about here, just so everybody's on the same page? I thought it was the latter (gamelist), but your comment now seems to suggest that the former is what you were looking for?
For some reason all images I've found lead to broken URLs, but there was a nice heard and teddy-bear icon that @Zigurana had in the themes.
-
@Zigurana
Maybe you should take it to a vote with as many themers as possible, I feel that normal end users could care less if it was text vs icon. Where as the themers most certainly care which of the two routes are taken, also I understand @pjft thought process of not wanting to do 12 things at the same time, wanting things to be implemented piecemeal.All in all I think you should take it a vote with themers on text vs icon, but we aren't the ones coding so it ultimately falls into your hands on how things are implemented. Though I feel that if we're going the text route vs the icon route just because of ease of coding and implementation that it isn't necessarily the route we should be going.
I understand the merit of both routes​, I just feel that the text route is the less accessable easy route, were as the icon route is more flexible for themeing but harder implementation route.
Yet again I have no experience coding so alot of this may be way off target regarding the coding aspect, but as a themer these are my opinions on the matter.
-
@pjft Thanks for the reply.
I do honestly think having an icon in the gamelist is a pretty good idea for easy visibility (you can see I went to extra trouble in my theme to do something similar to add the folder icon on my nes theme).
However if that meant I lost control over the look I would prefer to just have the single metadata icon (like the rating icons) that I can theme myself.Es can already be quite restrictive regarding theming so I think making sure future additions give us the freedom to theme them how we like is important.
-
Hi all, I've been following this font discussion closely, and it's been really insightful. I'd like to offer a suggestion that I think is a compromise for all.
The basic issue here seems to be that it is much easier to implement favorite icons as a font than as a PNG/svg image, but then the icons can't be easily changed as per the theme's desire.
I would suggest using a font, but allow that font to be changed to any font the themer desires (just like any other text in ES). The font we use as a default can be laid out as such...
A = Folder icon
B = Favorite icon
C = Kid Friendly icon
etc...Then if a themer wants different icons, they just take the default font, modify the icons per letter, save out the new font, and use it in the theme.xml instead of the default one provided.
I used to do some font modifications, and it's really not that difficult, once you have the tools. If you'd like, I'd love to lend a hand in creating a couple of fonts with icons instead of letters for you this week.
I think this is the best solution, since it satisfies the ability to change the icons however you please, while also keeping it a font, which seems to be the ideal method.
Thoughts?
-
@cafarellidigital I suspect that could be an option, but I believe the angle I'm hearing is that it'd be hard to color it differently to the actual text in the gamelist line? Though I may certainly not have the full context here - I am far from a themer.
@Syhles Your comment is certainly fair, and just to make sure I'm being clear: I suppose it's not as much about taking the sub-optimal route because it's easy, but it's more about delivering something that's useful right now, and later on flesh it out further, rather than keeping everyone waiting for this for long. As you mention, normal users likely won't care, so if we can get them something earlier, and then later deliver on the full-fledged solution, that's usually always better than delivering on everything for everyone later :)
The two cents of someone who's just watching and supporting wherever he can.
-
@pjft ahh, fair point; though the difficulty would be less regarding theming, and more about how ES would handle this icon font. If it is coded in such a way that it is separate from the gamelist then I can imagine it's easy to change the color to whatever you want. If however, the font icon is inserted as text to the beginning of any applicable game title, then yes, it's likely the icon will be the same color as the text and can't be changed. I don't have a problem with this, though others may.
Also, if using font icons, they can only be one-color; there can't be multiple colors per font.
Still, I think it's a decent compromise that doesn't require adding the ability to use images (which would obviously be ideal).
-
@pjft
I'm sorry if it seemed as I was coming off a combative about the subject, as I said I have no experience coding my thoughts on the difficulty came from how I was interpreting the conversation, which could easily be inaccurate.I'm very supportive of changes to further ES as a frontend, if not I wouldn't have bothered to voice my opinion. Also I fully understand why in theory doing this in increments is a good practice. My only worry is if we go the text route now just to get it out the door for end users, but then 1-4 months down the line change implementation to icons, aren't we just wasting themers time and energy?
Thank you for your reply @pjft , yet again​ sorry if I seem combative this is just how I normally talk.
-
@Syhles with a volunteer community such as this, you can never know how long something will take to implement. It could be a week, a month, or a year. Having half-measures now while we wait for the full-measure is good practice, even if it means "wasting time". ES has changed drastically over the last couple of years, and themes along with it. I don't know many people here who have complained about added or updated functionality (even those whose workload increased because of it).
-
@cafarellidigital
I want to make one thing clear I'm not complaining, I'm stating my opinion on the matter. Also you know what this is right "?" This is a question mark, meaning I'm asking a question. Doesn't necessarily mean that I'm saying we're wasting time or effort, it means I'm asking if we are. -
I can see all points of view to this discussion. Here are my final thoughts and requests:
- Make the update so that it can be turned on/off - if i choose not to support it in my theme, then the user can either not use it, or deal with the default settings.
- Do not use a left or right alignment in the actual gamelist text box itself. Per the video that @pjft shared, the symbol did not appear as part of the gamelist, rather it appeared above the metadata fields as icons. This will allow my theme to use a centered alignment, it will allow @ruckage to have his gamelist text fit within his wonderful outlines. It keeps our gamelist clean and crisp and a single text we can control.
- Create the icons using whatever method you prefer for the time being. If that is text, that is fine. I can find a place to put those icons, if i have too, i can put them down at the system help bar, as long as I can move them, and hopefully control color, i can agree to getting an update out there and refining later.
Do any of these requests align with any thoughts you guys are having? Is it difficult to take they icons out of the gamelist and have them as separate elements like in the video shown? Thanks for your time and patience. Speaking for myself, and maybe @ruckage - we have spent the better part of the last few months creating themes that are nearing completion, it is hard to see a new update come out that might not incorporate into our hard work. That said, the new update looks awesome and i would hate to stop it from releasing, and also stop users from either using the update because they want to use a certain theme, or the opposite, stop using a theme because they want the update.
-
@TMNTturtlguy Well writen
Even though I'm not you, @ruckage or any other creator of any awesome theme I've to say that this sounds quite good and seems to be a good compromise! Defenitily waiting for those features so I can add them to my fav theme (nbba)! :-) -
@Syhles said in Favorites for EmulationStation:
@cafarellidigital
I want to make one thing clear I'm not complaining, I'm stating my opinion on the matter. Also you know what this is right "?" This is a question mark, meaning I'm asking a question. Doesn't necessarily mean that I'm saying we're wasting time or effort, it means I'm asking if we are.I didn't say or think that you were complaining, I was just responding to your post regarding whether it would be worth it to wait until the full implementation can be achieved. It's a valid question to pose, and I was merely offering an alternative perspective.
-
Wow, that was quite a flurry of posts to get through. Unfortunately I was asleep during it all (it all happened at 2am for me), so I couldn't give my input.
I'm going to refer to this current Mod as the Filter Mod.
The way I see it, we can split this into 2 main issues:
- How to display new metadata tags, namely:
- "Favourite"
- "Kid-Friendly"
- "Hidden"
- How to display Folders.
Each of these have their own sub-issues, so I'll try to do this in an orderly manner.
New Metadata Tags
This seems to have 2 main parts to it:
- How to display the tags on the single game screen.
- How to display the tags in the
<gamelist>
.
The first issue is pretty simple to solve, so I'll start with that.
The existing Kid-Friendly Mod uses icons to show which of the 3 metadata tags apply to each game. These icons are set up as
<image>
elements, with all the applicable<image>
properties, like this:<image name="md_favorite"> <pos>0.470 0.620</pos> <maxSize>0.03 0.055</maxSize> <origin>0.5 0.5</origin> <path>./art/icon_favourite.svg</path> </image>
And it comes out looking like this:
I see no reason this can't be done for the next round of this new Filter Mod. If needed we can wrap them in
<feature supported="filter_meta">
so they don't break older versions of ES.The only "Con" that I can see to this approach is that you need to scroll to a game to see if it has any of these metadata tags active. This is not really a big issue, but is a little annoying.
That leads quite nicely into the next issue, of how to display these tags in the
<gamelist>
. This is a much more difficult question to answer, and so far has had quite a few repsonses. I'll list them below, along with some other options.-
Do nothing.
- Don't show any tags in the
<gamelist>
and just leave it as is.
- Don't show any tags in the
-
Display the tags as various characters before the entry name.
- "*" = Fav
- "~" = Kid
- "^" = Hidden
- "#" = Folder
- The Filter Mod already adds a "*" to favourites, so it shouldn't be hard to add to the other tags. This is functional, but not pretty.
-
Customise an existing font.
- Starting with #2 above, we can customise an existing font so the "*" character is a "star" icon, the "#" is a "folder" icon, etc.
- Pro - you can make them look exactly how you want
- Con - making/customising fonts, while not difficult, can be fiddly and annoying and not something every theme maker will want to do.
-
Use icon fonts.
- Instead of using characters like #2, we can use icons from the Font Awesome icon set (or some other font icon set).
- I would imagine each tag would have a default icon that the theme maker can override if they so desire.
- I don't know how difficult this would be to implement.
- I don't know if the icon could be themed separately to the text in the gamelist (colour, size, etc).
- Con - you are limited to the icons in the set, and if the icon you want to use isn't there, then you are out of luck.
-
Add an image.
- This one gives the theme maker the most freedom.
- I imagine this uses a basic
<image>
tag, but sets the size and position automatically, based on the text in the<gamelist>
. You just need to set the<path>
and<color>
. - I have no idea how hard this is to implement.
- Maybe it can piggyback on #2? Whenever "*" is used in the
<gamelist>
, replace it with<image name="md_gamelist_favorite">
?
-
Utilise the single game icons mentioned above.
- This is the same as #5, where the image replaces the characters from #2, except using the existing
<image name="md_favorite">
,<image name="md_kid">
and<image name="md_hidden">
. All you need then is a<image name="md_folder">
.
- This is the same as #5, where the image replaces the characters from #2, except using the existing
Folders
All the
<gamelist>
stuff mentioned above is valid for Folders too, and as this thread isn't really about Folders, I'll try to keep this bit brief.The main issue I see with Folders, is where to have them in the
<gamelist>
. The default functionality is to have them alphabetically inline, which works well for CD systems that might have some single games in folders and others out of folders.However for older consoles, I would usually want to have the folders at the top of the list like a normal file explorer. I'm curious if anyone would want an option in the settings to change this order on a per system basis? Or if it would be hard to implement?
@Zigurana: I just want to point out that none of the images from the Child-Friendly page of the wiki are working. I don't know if this is an issue on your end or not, but I thought I'd bring it to your attention.
- How to display new metadata tags, namely:
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.