Replies: 2 comments
-
Beta Was this translation helpful? Give feedback.
0 replies
-
|
The windows panic on changing the scale factor manually but it has a trivial fix that will be added as APIs become stable. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment


Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Fractional scaling at this point have become a pain to deal with. I am currently opting for the default mechanism. This discussion acts as a note to possible solutions, problems and suggestions from the users. Without scaling, rasterization of components doesn't happen properly, resulting in blurry/slightly pixelated components.
Few terminologies
EXAMPLE: Lets consider a monitor of size 100x 100 with Scale factor of 1.5 resulting in the actual size of 150x150 pixels.
Scaling implementations
Slint's platform implementation actually supports an event called
ScaleFactorChanged. But that results that the Skia renderer of Slint to expect the buffer(memory space representing pixels, comes from wayland) to be of actual size and not logical size. Philosophy of wayland says that the rendering should always be done in logical size and then the rendering should scale the buffer (viaviewporter). Here are the ways fractional scaling can be implemented:ScaleFactorChangedevent to slint and renders on this buffer. Here the scaling is done by Slint itself and fractional scaling values are possible.viewporterandscalemanager(Currently implemented but not used by spell). Here, when a scale factor changes, wayland side of spell changes the size of buffer before pasting it to the screen.The thing is, if fractional scaling is implemented by a client by 2nd method, compositors should ideally NOT implement scaling from its side( by method 3). The major issue is that after implementing the wayland side of scaling, compositors are still implementing scaling, resulting in the components of Spell being scaled twice. It is either a bug of compositor or my incompetence in implementing it properly(this is more probable :) ). I have checked the WAYLAND_DEBUG log and it mentions the attachment of appropriate wayland side globals responsible for fractional scaling. I have lost my ingenuity in debugging the issue as I have tried almost everything. I ask for opinions and possible help regarding the matter.
As for the time being, method 3 of scaling remains the default method.
Beta Was this translation helpful? Give feedback.
All reactions