Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Even more flexibility in choosing icon size #347

Open
antodc opened this issue Nov 19, 2024 · 2 comments
Open

Even more flexibility in choosing icon size #347

antodc opened this issue Nov 19, 2024 · 2 comments

Comments

@antodc
Copy link

antodc commented Nov 19, 2024

Dear Vincent, hope you do not mind if I go back to #326 with two related feature requests.

The first one is very easy. My old parents would be very glad if they could have icons even bigger than the maximum 72 dpi that is allowed now. Something 50% bigger, that is around 110 dpi, should be fine. Of course, increments for those very large icons could be bigger than the current 2dpi. I, and they, would really appreciate if this could be implemented in some future release.

The second request is somewhat trickier, but I think not difficult to implement as well. In my opinion, the minimum horizontal distance between two icons is rather large. What I mean is that I see a lot of 'wasted' space between icons, but if I increase their size a little bit a new line is created and icons are placed even further away from each other. I would like to have larger icons without changing the number of lines that are used. My guess is that you have a threshold in your code, and when the distance among icons is below that level a new line is created. It would be a nice improvement if that threshold could be changed by the user. I think that the current value could be multiplied by a scaling factor, whose values (say, 0.25, 0.50, 0.75, 1.00, 1.25, 1.50) could be set by the user using a drop-down menu (or a slider if you prefer).

Thanks a lot for any consideration!

@falzonv
Copy link
Owner

falzonv commented Nov 27, 2024

Hello,

Thank you for the suggestions.

No problem for the first request, I will have a look to add some bigger values (easy now that we moved to a drop-down menu), they will probably be by increments of 12dp so there would be 84, 96, 108 and 120dp.

For the second request, your guess on the current behavior is quite close, here is how it works:

  • The width of a single application is computed as "icon size + (icon size / 1.5)", the purpose of this padding is to allow the app name to go further than the app icon limits (but not too much are there are other apps next to it).
  • The number of apps that can be put in a single row is computed as "screen width / application width".
  • On display, additional spacing may be added so that apps of each row are evenly distributed (in case the number of apps per row previously computed left some room in the screen width).

Although I never noticed it before your message, the first step may indeed produce too much spacing with bigger icons because most names won't be long enough to go further than their icon while the padding will still be there.

I don't think this should be handled with a new setting but rather with a refinement of the padding calculation, with something like "icon size + min(icon size / 1.5, some value)" for example.
This will take a bit of time to experiment and identify which "some value" would constitute a good default.

Best regards.

@antodc
Copy link
Author

antodc commented Nov 27, 2024

Thanks a lot! Also for the detailed explanation about how the spacing works.

If you do not like the user to have some say about that distance (maybe he could set x >= 1 in x * iconsize), please consider using different values for “some value” depending on whether names are shown or not. When names are not shown, the distance among icons should be smaller as there is no need to reserve space for invisible text.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants