Dear slackers,
I am running slackware64-current on a
samsung smart pc pro. It has a very high-resolution but not-too-large native display. I usually use it at work connected to a much bigger monitor. I have been using it either big-monitor-only (while at work) or small-native-display-only (when elsewhere).
The thing is, the dots-per-inch (DPI) of the native display works out at a very high 191. Out-of-the-box xfce, for this machine anyway, does not seem to be aware of the DPI, but going into Settings -> Appearance -> Fonts one can enter a Custom DPI setting, and everything is fine.
However if I connect the external monitor, the fonts are now way too big, so I have to go back and change the Custom DPI setting back to something less to get things sensible. I can
disable the custom DPI setting and fonts on the external monitor are a reasonable size. But if I switch back to the native display I need to switch on the custom DPI again. It appears that the system has difficulty detecting the DPI of the native display.
I thought maybe that xrandr could fix it.
When I boot the machine with the external display connected, once xfce starts up the native display is dark, only the external monitor is showing the desktop. Running an xrandr query returns:
Code:
$ xrandr -q
Screen 0: minimum 320 x 200, current 1920 x 1200, maximum 8192 x 8192
eDP1 connected (normal left inverted right x axis y axis)
1920x1080 60.0 +
1400x1050 60.0
1280x1024 60.0
1280x960 60.0
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 60.0*+
1920x1080 50.0 60.0
1600x1200 60.0
1680x1050 59.9
1280x1024 60.0
1440x900 59.9
1280x960 60.0
1280x800 59.9
1280x720 50.0 60.0
1024x768 60.0
800x600 60.3 56.2
720x576 50.0
720x480 59.9
640x480 60.0
DP1 disconnected (normal left inverted right x axis y axis)
Note that it is aware of the physical size of the external (HDMI1) monitor, but
not the native display (eDP1).
Now, I executed various xrandr commands, as you see below, and then ran another query.
The commands only differ in that
- for the first one I passed the parameter --auto to the native display
- for the second I passed --auto and --dpi 191 and
- for the third I only passed --dpi 191
Code:
$ xrandr --output HDMI1 --auto --rotate normal --pos 0x0 --output eDP1 --auto --below HDMI1
$ xrandr --output HDMI1 --auto --rotate normal --pos 0x0 --output eDP1 --auto --below HDMI1 --dpi 191
$ xrandr --output HDMI1 --auto --rotate normal --pos 0x0 --output eDP1 --dpi 191 --below HDMI1
$ xrandr -q
Screen 0: minimum 320 x 200, current 1920 x 2280, maximum 8192 x 8192
eDP1 connected 1920x1080+0+1200 (normal left inverted right x axis y axis) 256mm x 144mm
1920x1080 60.0*+
1400x1050 60.0
1280x1024 60.0
1280x960 60.0
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 60.0*+
1920x1080 50.0 60.0
1600x1200 60.0
1680x1050 59.9
1280x1024 60.0
1440x900 59.9
1280x960 60.0
1280x800 59.9
1280x720 50.0 60.0
1024x768 60.0
800x600 60.3 56.2
720x576 50.0
720x480 59.9
640x480 60.0
DP1 disconnected (normal left inverted right x axis y axis)
Notice that now for the native (eDPI) display it has physical dimensions in the query output, which it didn't initially. However it still does not fix the problem. Whether I have two displays or just the native display, the native display's DPI remains unknown to the system until I enter a Custom DPI setting via the xfce settings menu as described above.
Does anyone know what is going on here? I guess a workaround would be to use xrandr --scale <<something>> (this enlarges windows/fonts but not things like the mouse pointer) but it would be better if the system could just tell in some other way what the DPI of the native display was. It may not be possible with this version of xfce to have two monitors with (very) different DPIs, it could be a ``global desktop setting''? If so that's ok, I am happy to just use one at a time -- only without having to manually change the DPI each time! I don't know if this is actually slackware-specific -- it might not be, but I would nonetheless like to see if any other slackers have some idea what to do.
I guess there might be machine-specific info you need, I'm sorry I don't know what that would be; just let me know and I'll post it.
Many thanks,
Michael