Cygwin/X with Win10 display scaling corrupting font display of typed characters

Ken Whitesell
Mon Jan 17 18:29:09 GMT 2022

Problem: When moving an XTerm window from the primary display to the 
second monitor, characters typed into that window are "clipped" at the 
top. Only about the bottom 75% is drawn. No lower-case letters taller 
than the "half-height" letters render properly. (Letters such as "a", 
"c", "m", "n", etc are all rendered correctly. All capital letters and 
tall lower-case letters (e.g. "b" and "d") have the top quarter clipped 
off. Additionally the XTerm window shows thin black bars on the right 
side of the window and along the bottom of the window.

The bash prompt and most all characters displayed as the result of the 
output of a command all display correctly - this is *primarily* 
affecting characters being typed, and before the "enter" key is pressed. 
(There is one special case regarding displayed characters. If a program 
is creating a full screen of output, such as "man", the top line of the 
screen is clipped.)

If the window is in the primary display when the characters are typed, 
and then the window is moved to the second monitor, the previously-typed 
characters remain correctly formed, and only new characters typed while 
the window is in the second monitor are clipped.

Environment: The primary display is the laptop's built-in display 
(1920x1080, 17"). The second monitor is a 27" also at 1920x1080. 
Operating system is Windows 10, with all current patches and updates. 
(Ver reports Microsoft Windows [Version 10.0.19044.1466]). XWin server 
is being started with this command line:

E:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd; exec 
/usr/bin/startxwin -- -listen tcp"

Additional info: This appears to be related to using the display 
"Scaling" option, where the laptop's display is set at 125% and the 
external monitor's display is set at 100%. If I set both displays the 
same - either both at 100% _or_ both at 125%, the problem does not appear.

If I change the scaling from 125% to 100% on the laptop's display, the 
problem appears until I restart Cygwin/X. Restarting Cygwin/X shows it 
displaying properly, until I change the scaling again.

Note: XTerm is _not_ the only program that exhibits this behavior. This 
is consistent among all applications tried, including geany, hexedit, 
mate-terminal, and lxterminal. (The visual behavior is slightly 
different for "full screen" application such as geany and hexedit, but 
it's still apparent that some clipping is occurring with characters 
being typed.)

Other version information: Cygwin setup version 2.915, packages showing 
as up-to-date include xterm 370-1, xinit 1.4.1-1, xorg-server 21.1.3-1, 
xorg-x11-fonts-* 7.5-4. (Unsure what other information may be useful.)

I've tried searching the message archives, going back through 2018 and 
have not seen anything that appears relevant. Other searches haven't 
proved useful, other than indicating that I should try applications 
other than XTerm.

I have tried various settings in different locations, including 
specifying "-resize=none" and/or -screen options for both monitors.

No changes have been made to system.XWinrc.

/etc/X11/xinit/startxwinrc has the following lines added before the line 
"exec /usr/bin/xwin-xdg-menu" line at the bottom of the file:

     /bin/xterm -fa 'DejaVu Sans Mono' -fs 12 -geometry 100x33 &
     /bin/xterm -fa 'DejaVu Sans Mono' -fs 12 -geometry 100x33 &
     /bin/xterm -fa 'DejaVu Sans Mono' -fs 12 -geometry 100x33 &
     /bin/xterm -fa 'DejaVu Sans Mono' -fs 12 -geometry 100x33 &

There is no .startxwinrc file in $HOME.

I will gladly provide any additional information that may help.

Is there a known solution for this? (Or is it known that there is no 

Any guidance, pointers, suggestions of avenues for further research, or 
other information, will all be greatly appreciated.

More information about the Cygwin mailing list