I was surprised to find out that setting the Librem5 display scale to 100% dramatically speeds up the phone performance to something way closer to an older iOS device or Android. I first noticed it when using an external display but found the results to be similar on the native phone screen too with that setting.
It seems to me that a shortcut to super fast performance would be keeping the 100% display scale and zooming up everything else manually (most of what I use are web apps so that is easy to do anyway). Luckily, the keyboard already scales great at 100% scale so nothing to fix there.
The Problem:
Anyway, the problem is figuring out how to scale things up without the display scale. Does anyone have any idea how to make the dash bar areas (black bars) at the top and bottom larger to mimic a larger display scale ? Perhaps through gnome tweaks or something?
As a bonus question, is there a way to also increase the size of all the app icons in the Home Screen to also match up with it?
As an extra-bonus question, scaling up the Lock Screen while on 100% scale would be nice too but is least important.
Squeekboard at 100% scales to 200%, while Squeekboard on any other scale scales normally (so 150% is 150% and 125% is 125% and so on). Thatās why you have no super small OSK.
Some Elements like Lockscreen can be resized via GTK CSS. Some other parts like OSK height or top-/bottom-bar height cannot be changed without recompiling code as far as I know. For bottom-bar there will be a change soon, that reduces the size to 15px (30px on 200% scale).
I was speaking with Guido about this (to let it not shrink below that 30px), but the way I did on Git-issues seams to be wrong and now Iām more confused than before. I have no idea if there will be a change coming that prevent to become too small, because I gave up on this - barrier too high for me and I donāt want to annoy devs.
Thanks for your reply. Ah, that sucks if true. If everything uses CSS I wonder why that is locked down? Seems to me there would be other reasons other than performance to allow for that such as accessibility for people who have poor eye sight, etc.
Any ideas about the actual Home Screen where all the app icons are?
At first glance it looks like those display scripts are simply setting the zoom scale that I am trying to avoid - I could very well be wrong though
Interesting that so much of this is CSS. Iām relatively new to Linux in general so wasnāt aware thatās how it worked.
Some of the users commented about there being some kind of phosh / UI customization tutorial somewhere. If that is an official Purism guide, can someone kindly point me towards what theyāre referring to?
It appears the style sheet here seems to reference the top bars along with sizing:
Are these files compiled or available in the system as customizable files? Also, can anyone confirm if this is the right thing before I get in there like the noob that I am and wreck my phone?
You can edit nearly every box, every label and every other GTK element by using CSS. Resizing, Recoloring, changing form (like round corner), set transparency or color transparent boxes etc. All that can be done without changing any system file. You can create those files by your own.
But as I said above, there are also some limitations. With GTK CSS you cannot switch between landscape or portrait view (changes get applied to both) as you could with Firefox CSS files. CSS has not access to every element (for example Mobile Settings App), because of the code behind that gives no access. Or another issue I run into: I have not found any way to style the context menu of app grid without styling every āpopoverā context menus over every GTK app in the same way. Or even resizing those bars (I already tried).
On some elements you should definitely be careful with trying to change things. For example you can make the whole app grid invisible and have to navigate blind back to the file manager. Or you could move PIN-pad out of screen and so youāre loosing access to your local account (can be fixed with physical keyboard or via other Linux system end USB). On the other hand, if you can access your phone via other Linux system, you can fix everything you potential break with CSS, even without backups.
This is about the whole top panel, including quick settings etc. But as far as I know you cannot move the main box. I mean, you can try it, because I am also somehow new to Linux and learned everything about this after I got my phone in may. So I may not true, but I also experimented a lot.
I usually had my phone scaled to 150% as that was a good compromise but I see going to 100% does seem to have a positive effect on the performance and the keyboard is actually bigger at 100% as was commented before. The font at 100% is a bit small for these older eyes, but maybe I just need better glassesā¦lol.
Iāll be interested to see how you make out with this customization journey.
Well so far, other than a setting that scales up all the icons system wide (without any spacing) I havenāt had much luck.
Iām no css expert by any means but I think the next step is probably going to be to ask the phosh team to expose something in css that will allow for defining the icon grid size, etc. or to ask if it exists and Iām just missing something.
As an example, Ubuntu has a css theme file that has apparently streamlined the Home/dash Screen icon stuff in to a single block. Something like that would be incredibly useful.
I think purism should remember that if they want people to be able to use their Librem5 daily, performance is absolutely key. Allowing for a few simple tweaks to phosh so we can easily adjust icon size independent of system zoom/scale will have huge performance benefits across the board with relativity little developer effort in the grand scheme of things.
Iām assuming it is possible to control scale for Lock Screen, etc (others have insinuated it could be). If this is the case, simply having a modified theme for 1x scaling would allow the community to mod the system and benefit from all that great performance without glaring UI issues in the shell.