New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 849468 link

Starred by 5 users

Issue metadata

Status: Fixed
Owner: ----
Closed: Jul 6
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

vscode rendering is glitchy on external 4k display

Project Member Reported by dstockwell@google.com, Jun 4 2018

Issue description

Chrome Version       : 68.0.3440.4
OS Version: 10718.4.0
cros-termina - Version: 10739.0.0

$ xrandr
Screen 0: minimum 320 x 200, current 7680 x 4320, maximum 8192 x 8192
XWAYLAND0 connected 2400x1600+0+0 (normal left inverted right x axis y axis) 381mm x 254mm
   2400x1600     59.95*+
XWAYLAND2 connected 7680x4320+0+0 (normal left inverted right x axis y axis) 813mm x 457mm
   7680x4320     59.99*+

$ xdpyinfo | grep -b2 resolution
1176-screen #0:
1187-  dimensions:    7680x4320 pixels (813x457 millimeters)
1243:  resolution:    240x240 dots per inch
1282-  depths (7):    24, 1, 4, 8, 15, 16, 32
1323-  root window id:    0x2db

feedback report 85476398979
 
Hm, the 4k monitor should ideally not connected as 3840x2160+0+0. Not sure why that's not the case. Can you also attach the output from running 'weston-info' from 'weston' package?
Status: Started (was: Untriaged)
I had a chance to test this so you can ignore my last comment. The resolution is actually what we want. I can reproduce the problem and not sure exactly what is happening. I suspect that we're affected by some buffer size limit when reaching 7680x4320 in resolution. I'll investigate more to see what's the best way to solve that.

For ideal performance on a 4k monitor you probably want to launch VS code using:

$ sommelier -X --scale=0.5 code -w

That also avoids this problem. Notice how the window is now sharp on the external monitor but blurry on the internal panel. The reason we're not doing this by default is because we prioritize the internal display. This problem of have to pick a display that is preferred is hard to avoid for X11 apps. The general solution is for apps to switch to native wayland protocol, and that way be able to handle density changes dynamically.
I've done some more testing and it seems like the issue is specific to electron apps. They seem to start producing rendering artifacts when the resolution is above 4800. I can reproduce the same issue in atom but not in sublime text.

Comment 4 by vapier@chromium.org, Jun 21 2018

Components: OS>Systems>Containers
If I disable the internal display (close pixelbook) while vm is running xrandr still says 7680x4320+0+0. But if I start the vm in this state it's 3840x2160+0+0.
Status: Fixed (was: Started)
Yes. Disabled internal display, is a mode that we fail to support properly in Crostini for X11 apps today. Problem is that without the internal display we don't know what the preferred scale factor should be used for X11 apps. We might need to hard code this for each board or add a new aura shell event.

I'm closing this bug as external display support with internal display also present should now be working properly. I'll open a new bug for the 'disabled internal display' issue.

Sign in to add a comment