Page MenuHome

Make Blender to automatically recognize Linux desktop DPI
Closed, ArchivedPublic

Description

Please make Blender capable of automatically recognize the Linux desktop PPI, and set it to its interface accordingly.

Details

Type
To Do

Event Timeline

Aaron Carlisle (Blendify) changed Type from To Do to Bug.

Even though X11 has a DPI setting for the viewport, it seems each desktop environment/widget set uses its own scaling. see: http://www.makeuseof.com/tag/linux-hidpi-support-for-gnome-kde-xfce-cinnamon-and-firefox/

We could...

  • Read the DPI settings from X11 and guess, while this should work, it seems nobody is using this setting to scale the UI, so likely its not a reliable value.
  • Read the interface scale setting from gnome/kde... etc (not very portable).

However it would be good if there was some more straightforward way to get this information from X11/xlib.

Campbell Barton (campbellbarton) triaged this task as Normal priority.

Seems than your point is right, and the only way to configure that right now is per desktop environment.

Where do you think I should ask for this feature to be implemented?

Ideally this is something https://www.freedesktop.org would have a specification for. (maybe worth asking on their mailing list... )

I have just started a conversation about it on the Freedesktop mailing list. As soon as we get some conclusion, I will post it here.

Thank you.

In the Wayland display manager this can be achieved by using (https://wayland.freedesktop.org/docs/html/apa.html#protocol-spec-wl_output).

I'm going to ask for xserver and mir.

@ Campbell Barton

Since the feature can be implemented in at least two of the three existing display servers, please consider reopening this bug report again. Thanks

The most generic solution might be Xft/DPI from XSETTINGS:
https://www.freedesktop.org/wiki/Specifications/XSettingsRegistry/

This is mostly a GNOME / GTK thing, but from what I can tell this is what Chrome and Firefox use (though GTK) on all desktop environments. It should also work with KDE through xsettings-kde and Xfce through xfsettingsd.