http://bugzilla.opensuse.org/show_bug.cgi?id=1089932
http://bugzilla.opensuse.org/show_bug.cgi?id=1089932#c53
--- Comment #53 from Fabian Vogt
(In reply to Fabian Vogt from comment #51)
As the DPI is not overwritten by starting Xorg with "-dpi", I expect the logical and physical DPI to be the same -> reassining to X.
AFAIK this is usual X server behavior. If it is not given the -dpi parameter, it defaults to 96 dpi for calculating (guessing) the screen physical size. The reasoning is that the screen physical size is meaningless whenever you have more than one monitor connected. It is there mostly for backwards compatibility.
That's pretty broken IMO. If the size is meaningless anyway, it should be omitted.
The proper source of information is the physical size of the individual outputs.
I can imagine that the screen physical size could replicate the output size when only single output is connected (maybe that's what the nvidia driver does), but there may be issues when monitors connect/disconnect. Ideally sddm/Qt should consider only the information from the outputs.
Qt uses the virtual DPI to calculate the font size, so that it can be overwritten with -dpi. That is intentional and got introduced specifically to allow the override. The best option is to have the size be the actual physical size of the whole screen (so addition of monitor edges) and virtual size. That way the calculated DPI is roughly the average. If we expect HiDPI to work properly, we can't just let X send fake values to applications by default. -- You are receiving this mail because: You are on the CC list for the bug.