Bug#988135: evince: zooming 100% ignores dpi as reported by xrandr

2022-06-19 Thread Helmut Grohne
Control: tags -1 + upstream patch
Control: severity -1 important

On Thu, May 06, 2021 at 01:55:44PM +0200, Helmut Grohne wrote:
> The logic there essentially says: If your screen is taller than 1080
> pixels in landscape, your dpi is 192 and otherwise it is 96. For a
> typical 1900x1200 24" display that happens to have roughly a dpi of 96,
> evince determines that it must be a HiDPI display at 192 dpi. As a
> result, 100% actually presents more like 200%.
> 
> That's quite unhelpful. This used to work correctly.

It is really annoying. Every single document I open with evince comes
out scaled unreadable.

It also is trivial to fix:

git revert c3ac0d3dc7bf05ebb219afcdf3d58f93d01e42cc

Possibly, a middle ground could be found by clamping the computed DPI to
the 96 to 192 range made in the guess, but I think that the 192 guess is
so bad that revert is the initial way to go.

Also keep in mind that working around the current behaviour is
impossible, because evince has no setting to force a dpi or like that.
On the other hand, working around a broken detection logic is as simple
as xrandr --dpi 96.

Would you mind a NMU?

Helmut



Bug#988135: evince: zooming 100% ignores dpi as reported by xrandr

2021-05-06 Thread Helmut Grohne
Package: evince
Version: 3.38.2-1

When you zoom a document to 100% and hole an equally sized sheet of
paper on the screen, you expect them to match. That used to be the case
with evince, but it no longer does. I don't know precisely since when.

Usually, xrandr/xdpyinfo know both the logical (pixel count) and
physical (mm or inch) dimension of the screen. From those values, one
can derive a dpi value to adjust what 100% zoom means. Applications such
as djview still implement that.

It seems like evince chose to change that:
https://sources.debian.org/src/evince/3.38.2-1/libdocument/ev-document-misc.c/?hl=552#L562

The logic there essentially says: If your screen is taller than 1080
pixels in landscape, your dpi is 192 and otherwise it is 96. For a
typical 1900x1200 24" display that happens to have roughly a dpi of 96,
evince determines that it must be a HiDPI display at 192 dpi. As a
result, 100% actually presents more like 200%.

That's quite unhelpful. This used to work correctly.

Helmut