[Bf-committers] DPI scaling question...
David Jeske
davidj at gmail.com
Thu Jun 27 06:56:51 CEST 2013
I'm trying to fix some Macbook Retina DPI scaling bugs, and I need some
background on the UI_DPI_FAC.
The first bug is that new compositor nodes are placed wrong on retina. I
can see where they are created and placed in scripts/startup/bl_operators.
However, I don't understand where DPI scaling is supposed to happen.
It surprises me to see code all over which deals with DPI factor like
this...
y = (ypixels <= 39.0f * UI_DPI_FAC) ? (ypixels - 10.0f * UI_DPI_FAC) :
29.0f * UI_DPI_FAC;
I expected it to be more centralized, where the whole UI would run in a
virtualized coordinate-space automatically adjusted for DPI, and DPI
scaling would be handled in the core mouse-event delivery and drawing code.
Only a few places that care about raw pixels or should not respond to dpi
changes would need to interact with DPI.
I suspect there is a reason it wasn't done this way, but I don't know what
it is, so it's hard for me to understand where DPI scaling should be done
to fix these bugs.
Can anyone enlighten me?
More information about the Bf-committers
mailing list