Bug 1215495

Summary: vs code window gray with rectangles
Product: [openSUSE] openSUSE Tumbleweed Reporter: Ernst Reißner <Rei3ner>
Component: X11 ApplicationsAssignee: E-mail List <screening-team-bugs>
Status: RESOLVED WORKSFORME QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: brunopitrus, Rei3ner
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: a screenshot

Description Ernst Reißner 2023-09-19 23:20:09 UTC
User-Agent:       Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/117.0
Build Identifier: 

After some update my vs code the window of my vs code is unreadable. 
Only the menu is not affected. 
I can sometimes recognize the cursor, but no letter is readable. 

I installed via 
```
rpm --import https://packages.microsoft.com/keys/microsoft.asc
zypper addrepo --refresh https://packages.microsoft.com/yumrepos/vscode vscode
zypper refresh -f
zypper in code
```

Then I tried with flatpak. 
With that variant it works. 

```
zypper in -y flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install -y flathub com.visualstudio.code
cp ./CODE.sh /usr/bin/CODE
```

CODE.sh looks like this: 

```
#!/bin/sh -
flatpak run com.visualstudio.code $@
```

This looks like always. 

Recently I found out that also `code --disable-gpu` works fine. 

Reproducible: Always

Steps to Reproduce:
1. code 
2.
3.
Actual Results:  
code comes up with a gray window. 

Expected Results:  
code comes up with script readable. 

It is since the last update. 

code works fine if starting with flatpak and also as code --disable-gpu.
Comment 1 Ernst Reißner 2023-09-19 23:28:00 UTC
Created attachment 869607 [details]
a screenshot
Comment 2 Bruno Pitrus 2023-09-27 10:54:00 UTC
The vscode builds provided by openSUSE here:

https://build.opensuse.org/project/show/devel:tools:ide:vscode

support customization of flags provided to chromium by putting them into `~/.config/electron-flags.conf`. The flags apply to all electron applications from our distribution.

You can check the status of hardware acceleration by running `electron chrome://gpu`
You can also check whether WebGL works (does not crash) by opening any webpage using it eg. `electron https://webglsamples.org/aquarium/aquarium.html` (webgl is IIRC used by the vscode terminal)

The following set of flags work for me on a nvidia GPU:

--use-angle=gl-egl
--ignore-gpu-blocklist
--enable-accelerated-video-decode
--enable-features=VaapiVideoDecoder,VaapiVideoEncoder,UseOzonePlatform,CanvasOopRasterization,WaylandWindowDecorations,RawDraw,Vp9kSVCHWDecoding,Vulkan,EnableDrDc
--enable-gpu-rasterization
--enable-zero-copy
--use-vulkan


For other vendors, you may need to use other angle backends and/or disabling vulkan.


We don't provide support for software we don't distribute. If you wish to run upstream builds of VSCode, the openSUSE bugzilla is not the correct place to complain about them.