Homebrew RELEASE IconGrabber - Custom game icons & Theme Teaser

Slluxx

GBATemp Mayor
OP
Developer
Joined
Jul 17, 2019
Messages
607
Trophies
0
XP
2,146
Country
Germany
Update:

- SteamGridDB has been almost completly integrated. the only thing missing is to choose the image resolution inside the settings and use that to fetch the correct icons from the API. This is very easy to fix.
- Local folders have been implemented. Put your own icons inside `sdmc:/switch/icongrabber/local` and you will be able to apply them to any game. you can even put them into as many subfolders as you want for easy management.

Whats left to do:
- custom source: upload your own json file somewhere that links to images. for example you can create a json file and fill that with urls from any image on the web (imgur, whatever) and upload that json somewhere (for example github). you can now share your json url to anyone and they will be able to browse your images. you can do everything within a github repository of course. I will link an example once its done.
- small UI adjustments
- implementing sys-tweak download/update logic
- startup checks (disallow applet mode, check homebrew location and move binary etc)


WIP but this is what the local icons menu will look like. you can press A on a folder to browse inside it, B toget back. there is no limit in folder depth.
2022020617095500-1484CEE03AE68D2A78A7DF68D40670D5.jpg
 
Last edited by Slluxx,

SodaSoba

‿︵‿︵‿︵ヽ(°□° )ノ‿︵‿︵‿︵‿
Member
Joined
May 28, 2018
Messages
645
Trophies
0
Location
Barstow, on the edge of the desert
XP
1,861
Country
United Kingdom
Update:

- SteamGridDB has been almost completly integrated. the only thing missing is to choose the image resolution inside the settings and use that to fetch the correct icons from the API. This is very easy to fix.
- Local folders have been implemented. Put your own icons inside `sdmc:/switch/icongrabber/local` and you will be able to apply them to any game. you can even put them into as many subfolders as you want for easy management.

Whats left to do:
- custom source: upload your own json file somewhere that links to images. for example you can create a json file and fill that with urls from any image on the web (imgur, whatever) and upload that json somewhere (for example github). you can now share your json url to anyone and they will be able to browse your images. you can do everything within a github repository of course. I will link an example once its done.
- small UI adjustments
- implementing sys-tweak download/update logic
- startup checks (disallow applet mode, check homebrew location and move binary etc)


WIP but this is what the local icons menu will look like. you can press A on a folder to browse inside it, B toget back. there is no limit in folder depth.
View attachment 296983
Whoa you're on it! Looking forward to the release
 
  • Like
Reactions: Slluxx

Slluxx

GBATemp Mayor
OP
Developer
Joined
Jul 17, 2019
Messages
607
Trophies
0
XP
2,146
Country
Germany
SteamGrid has been integrated 100%
Custom sources work too

2022020623473500-1484CEE03AE68D2A78A7DF68D40670D5.jpg



There is just a problem within Borealis where list items outside of the visible space still try to render, which takes away computing power. People here will probably do custom sources with hundrets or even thousands of custom images and i need to figure out a proper way how to make this feasable. Probably some kind of pagination but this is quite annoying.
Otherwise this will end up in a slideshow
 

Slluxx

GBATemp Mayor
OP
Developer
Joined
Jul 17, 2019
Messages
607
Trophies
0
XP
2,146
Country
Germany
heres my new created theme.View attachment 297030
Looks good but I can tell that you just increased the scale and not actually changed the size, which messes (for example) with the cursor and makes it look really awful. This is exactly what I wanted to avoid with my theme.

At a second glance it looks like an existing theme and you replaced the images

Also it's kinda weird that you post your theme in my thread
 
  • Wow
Reactions: Rodel

alex61194

Well-Known Member
Member
Joined
Feb 13, 2016
Messages
633
Trophies
0
Age
29
XP
1,479
Country
Looks good but I can tell that you just increased the scale and not actually changed the size, which messes (for example) with the cursor and makes it look really awful. This is exactly what I wanted to avoid with my theme.

At a second glance it looks like an existing theme and you replaced the images

Also it's kinda weird that you post your theme in my thread
he dosent share the theme either is spam only
 
  • Like
Reactions: Slluxx

Rodel

Well-Known Member
Member
Joined
Sep 10, 2020
Messages
116
Trophies
0
XP
561
Country
Philippines
Looks good but I can tell that you just increased the scale and not actually changed the size, which messes (for example) with the cursor and makes it look really awful. This is exactly what I wanted to avoid with my theme.

At a second glance it looks like an existing theme and you replaced the images

Also it's kinda weird that you post your theme in my thread
oh sorry to post here.im just show my new created theme.i know your the expert.if it is not allowed to post here.ok im not posting here anymore.just admire your work.
 

RussianPanda

Active Member
Newcomer
Joined
Nov 16, 2018
Messages
26
Trophies
0
Age
32
XP
110
Country
United States
So I am using the latest sys-twk downloaded from HERE and renamed to exefs.nsp and put it here - atmosphere\contents\00FF747765616BFF along with the flag and toolbox files and all I get is my unit frozen at the Ninty logo. Does anybody have this working with the latest Atmos?

EDIT*
I found a version that works on latest Atmos 1.2.4
Sys-Tweak
So I am using the latest sys-twk downloaded from HERE and renamed to exefs.nsp and put it here - atmosphere\contents\00FF747765616BFF along with the flag and toolbox files and all I get is my unit frozen at the Ninty logo. Does anybody have this working with the latest Atmos?

EDIT*
I found a version that works on latest Atmos 1.2.4
Sys-Tweak
My switch is doing the same thing though I am on atmosphere 1.2.5. Can you share the sys-tweak that worked for you. I am unable to do anything until I get it working
 

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
6,511
Trophies
2
XP
6,155
Country
United States
Last edited by binkinator,

RussianPanda

Active Member
Newcomer
Joined
Nov 16, 2018
Messages
26
Trophies
0
Age
32
XP
110
Country
United States
  • Like
Reactions: binkinator

Slluxx

GBATemp Mayor
OP
Developer
Joined
Jul 17, 2019
Messages
607
Trophies
0
XP
2,146
Country
Germany
So, i thought about dropping external sources support for the next version. I know that some people have a huge ass image library and browsing it will be impossible without proper pagination. Lets say borealis can display 50 items (rows per list) at a time, then a library consisting of 4000 icons would result in 80 pages to scroll through. thats simply too much.

Maybe if we can split up everything in folders like resolution, inside it the letters of thealphabet, inside those the specific games and inside that folders for different types of icons. The problem with that is that it would be a pain in the ass to maintain a json file like that. it would be huge and i dont know if (most) people are able to create and maintain a file like that.

If anyone here has a reasonable idea how to implement a solution that fits 4000+ icons without scrolling through 80+ pages, please share it with me. I am somewhat limited to what you know of other borealis apps (aio-switch-updater etc) so it must be somewhing that somewhat works out of the box.
 

Cardellos

Member
Newcomer
Joined
Feb 15, 2020
Messages
12
Trophies
0
Age
39
XP
267
Country
Brazil
Thanks for your submission :D
I agree with Soda that having parts of the appstore icon is not the best way to go about it. though i like card and grabbing thingy.

They look good, not sure about the hba icon personally but the icon theme fits

i just put it there to show it's homebrew as i use it with forwarder, it can be changed easily. Here is a few variables!
The app is looking greater every time i see it!

If anyone here has a reasonable idea how to implement a solution that fits 4000+ icons without scrolling through 80+ pages, please share it with me. I am somewhat limited to what you know of other borealis apps (aio-switch-updater etc) so it must be somewhing that somewhat works out of the box.

The only thing i can think of is to limit the list per folder to X amount, it's annoying, but forcing the icon source to be better organized... is a good thing?

Edit: had an idea for the 6th icon
 

Attachments

  • Grabber 01.png
    Grabber 01.png
    60 KB · Views: 55
  • Grabber 02.png
    Grabber 02.png
    52.5 KB · Views: 54
  • Grabber 03.png
    Grabber 03.png
    47.4 KB · Views: 51
  • Grabber 04.png
    Grabber 04.png
    49.5 KB · Views: 48
  • Grabber 05.png
    Grabber 05.png
    57.1 KB · Views: 52
  • Grabber 06.png
    Grabber 06.png
    66 KB · Views: 50
Last edited by Cardellos,

binkinator

Garfield’s Fitness Coach
Member
GBAtemp Patron
Joined
Mar 29, 2021
Messages
6,511
Trophies
2
XP
6,155
Country
United States
i just put it there to show it's homebrew as i use it with forwarder, it can be changed easily. Here is a few variables!
The app is looking greater every time i see it!



The only thing i can think of is to limit the list per folder to X amount, it's annoying, but forcing the icon source to be better organized... is a good thing?

Edit: had an idea for the 6th icon

058DA70D-7865-4796-B8C0-8DD8F3C94FEB.png

This one has my vote!
PMSL
 

Homlet

Well-Known Member
Member
Joined
Feb 28, 2020
Messages
589
Trophies
0
XP
2,503
Country
France
So, i thought about dropping external sources support for the next version. I know that some people have a huge ass image library and browsing it will be impossible without proper pagination. Lets say borealis can display 50 items (rows per list) at a time, then a library consisting of 4000 icons would result in 80 pages to scroll through. thats simply too much.

Maybe if we can split up everything in folders like resolution, inside it the letters of thealphabet, inside those the specific games and inside that folders for different types of icons. The problem with that is that it would be a pain in the ass to maintain a json file like that. it would be huge and i dont know if (most) people are able to create and maintain a file like that.

If anyone here has a reasonable idea how to implement a solution that fits 4000+ icons without scrolling through 80+ pages, please share it with me. I am somewhat limited to what you know of other borealis apps (aio-switch-updater etc) so it must be somewhing that somewhat works out of the box.
Assuming your custom json has a title/keyword field, you could do a search field and only display N relevant results. You need a way to filter icons anyways, because even if you could display it all, sifting through 4000 images is just insane
 
  • Like
Reactions: SodaSoba

SodaSoba

‿︵‿︵‿︵ヽ(°□° )ノ‿︵‿︵‿︵‿
Member
Joined
May 28, 2018
Messages
645
Trophies
0
Location
Barstow, on the edge of the desert
XP
1,861
Country
United Kingdom
i just put it there to show it's homebrew as i use it with forwarder, it can be changed easily. Here is a few variables!
The app is looking greater every time i see it!

I actually like the idea and direction you went and made a few edits too I posted these elsewhere the other day:

new-icon-grabber.png
new-icon-grabber2-resized.png
new-icon-grabber3-resized.png

Certainly a claw machine arm fits better into the name.

@Slluxx would it be possible to use githubs search functionality?

https://github.com/sodasoba1/icongrabber_soda_repo/find/main
 
Last edited by SodaSoba,
  • Like
Reactions: Cardellos

Slluxx

GBATemp Mayor
OP
Developer
Joined
Jul 17, 2019
Messages
607
Trophies
0
XP
2,146
Country
Germany
@Slluxx would it be possible to use githubs search functionality?

https://github.com/sodasoba1/icongrabber_soda_repo/find/main

i can browse the contents of a repository with the API but i want to completly avoid using that because of the call limit. Thats why a json file has to be created that includes all links of the icons.

Assuming your custom json has a title/keyword field, you could do a search field and only display N relevant results. You need a way to filter icons anyways, because even if you could display it all, sifting through 4000 images is just insane

I am just struggeling with finding a good way of displaying and browsing such enormous amounts of images efficiently. For example they can be filtered by resolution and then it could be browsable by folders (look at the local source image). but even if i filter it by resolution, starting alphabet letter folder and then game name folder, there could still be 100+ icons. Some kind of pagination is needed but borealis isnt made for that. I guess the most pleasing way is to set custom actions which then clear and refill the current list with a subset of the data (MAX_ITEM_COUNT * currPage to MAX_ITEM_COUNT * currPage + MAX_ITEM_COUNT or something like that). I could also use a new frame per set of data but that could fill the stack up pretty good and it would be slower.
 
  • Like
Reactions: SodaSoba

Homlet

Well-Known Member
Member
Joined
Feb 28, 2020
Messages
589
Trophies
0
XP
2,503
Country
France
i can browse the contents of a repository with the API but i want to completly avoid using that because of the call limit. Thats why a json file has to be created that includes all links of the icons.



I am just struggeling with finding a good way of displaying and browsing such enormous amounts of images efficiently. For example they can be filtered by resolution and then it could be browsable by folders (look at the local source image). but even if i filter it by resolution, starting alphabet letter folder and then game name folder, there could still be 100+ icons. Some kind of pagination is needed but borealis isnt made for that. I guess the most pleasing way is to set custom actions which then clear and refill the current list with a subset of the data (MAX_ITEM_COUNT * currPage to MAX_ITEM_COUNT * currPage + MAX_ITEM_COUNT or something like that). I could also use a new frame per set of data but that could fill the stack up pretty good and it would be slower.
Yeah, browsing through them all is a terrible idea, for sure. What I thought you could do is have a json file like this
[ { "keywords": "Picross S5", // keywords could be an array too "link": "https://example.com/picross_s5.png" }, { "keywords": "Picross S5 wide", "link": "https://example.com/picross_s5_wide.png" } ]
Then you have a search field and display (at most) 40 results when typing "Picross" in it. I think filtering by keywords is the only solution when dealing with a large amount of files
 
  • Like
Reactions: SodaSoba

Slluxx

GBATemp Mayor
OP
Developer
Joined
Jul 17, 2019
Messages
607
Trophies
0
XP
2,146
Country
Germany
Yeah, browsing through them all is a terrible idea, for sure. What I thought you could do is have a json file like this
[ { "keywords": "Picross S5", // keywords could be an array too "link": "https://example.com/picross_s5.png" }, { "keywords": "Picross S5 wide", "link": "https://example.com/picross_s5_wide.png" } ]
Then you have a search field and display (at most) 40 results when typing "Picross" in it. I think filtering by keywords is the only solution when dealing with a large amount of files

would you add pagination if there are more than 40 results? or just cut it off and leave it be?
 

Homlet

Well-Known Member
Member
Joined
Feb 28, 2020
Messages
589
Trophies
0
XP
2,503
Country
France
would you add pagination if there are more than 40 results? or just cut it off and leave it be?
I'd probably cut it, maybe add a message saying "N results matching your query have been omitted, try refining your keywords" or something. 40 is also arbitrary of course, you can tweak it

Note that if performance is what you're worried about, I think Yoga Borealis can render lists as you scroll them https://github.com/XITRIX/borealis/blob/main/demo/recycling_list_tab.cpp
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: https://youtu.be/MddR6PTmGKg?si=mU2EO5hoE7XXSbSr