term: only scale using DPI if *all* monitors have a scaling factor or one

With dpi-aware=auto (the default), scale fonts using DPI *only*
if *all* available monitors have a scaling factor of one.

The idea is this: if a user, with multiple monitors, have enabled
scaling on *at least* one monitor, he/she has most likely done so to
match the size of his/hers other monitors.

For example, if the user has one monitor with a scaling factor of one,
and another one with a scaling factor of two, he/she expects things to
be twice as large on the second monitor.

If we (foot) scale using DPI on the first monitor, and using the
scaling factor on the second monitor, foot will *not* look twice as
big on the second monitor (this was the old behavior of
dpi-aware=auto).

Part of #714
This commit is contained in:
Daniel Eklöf 2021-09-19 11:58:34 +02:00
parent 2934a4e96c
commit fb77637eb9
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
7 changed files with 59 additions and 27 deletions

View file

@ -161,8 +161,10 @@ in this order:
scaling factor *does* double the font size.
Finally, if set to *auto*, fonts will be sized using the monitor's
DPI on monitors with a scaling factor of 1, but otherwise using
the scaling factor.
DPI if _all_ monitors have a scaling factor of 1. If at least one
monitor as a scaling factor larger than 1 (regardless of whether
the foot window is mapped on that monitor or not), fonts will be
scaled using the scaling factor.
Note that this option typically does not work with bitmap fonts,
which only contains a pre-defined set of sizes, and cannot be