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

Issue 854601 link

Starred by 6 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows
Pri: 2
Type: Bug



Sign in to add a comment

Window transparency doesn't work properly in Electron

Reported by danituen...@gmail.com, Jun 20 2018

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36

Steps to reproduce the problem:
1. Create a transparent window in an Electron application
2. Run the app

What is the expected behavior?
The window is transparent without glitches.

What went wrong?
The window is not transparent, or either needs disabled hardware acceleration or is very glitchy and unreliable.

Did this work before? No 

Does this work in other browsers? Yes

Chrome version: 67.0.3396.87  Channel: stable
OS Version: 
Flash Version: Shockwave Flash 30.0 r0

There is a bug in the Electron bug tracker with lots of support. The Electron devs have marked it as wontfix with the reasoning that it is an issue on Chromium's rendering engine side.

https://github.com/electron/electron/issues/2170

As many developers depend on this functionality, we would like to ask for official support so that future releases of Chromium work well with this feature in future Electron releases that depend on them.

Thank you.
 
Components: Internals>GPU
Labels: Needs-Triage-M67

Comment 3 by keatbl...@gmail.com, Jun 20 2018

Hi, I created examples demonstrating the issue. Everything needed to run is explained in the readme.

https://github.com/kabalage/electron-transparency-issue

My use-case:
I would like to create a dock/panel/statusbar application in js with transparency and good animation performance for linux. (as an alternative to https://github.com/jaagr/polybar)
Cc: sindhu.chelamcherla@chromium.org
Labels: Triaged-ET Needs-Feedback
Unable to test this issue as we are seeing error on testing with testing steps mentioned in comment#3. Attaching screenshots for reference.

@Reporter: Please check the screenshot and let us know if we miss anything. Please guide us with a video on reproducing the issue.

Thanks!


error-1.png
211 KB View Download
error-2.png
214 KB View Download
error-3.png
199 KB View Download
@sindhu.chelamcheria

The issue with screenshot #1 is that node can't execute html files.

The issue with screenshots #2 and #3 is that node modules are not installed. The fix is easy: run `npm i`. After that you should be able to run the example.

Attached is a demo video.
chromium-electron.mkv
4.3 MB Download
Project Member

Comment 6 by sheriffbot@chromium.org, Jun 21 2018

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding the requester to the cc list.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: Needs-TestConfirmation

Comment 8 by latin4...@gmail.com, Jun 22 2018

Just an FYI that this has been confirmed hundreds of times by various electron users with a github issue that goes back several years: https://github.com/electron/electron/issues/2170#issuecomment-399558939

We would HIGHLY appreciate it if the chromium team would take a serious look at this as it's caused a number of high profile electron apps to lock their versions to a now ancient version that still had linux translucency working properly.
Cc: phanindra.mandapaka@chromium.org
Labels: Needs-Feedback
As per comment #5 we have tested this issue on Ubuntu 17.10 please find our observations bellow.Attching screenshot for reference.
Steps:
--------
1. Launched chrome and Navigated to given URL on comment #0 ""https://github.com/kabalage/electron-transparency-issue""
2. Downloaded and Unzipped the the file and opened on terminal.
3. ran the commands as per provided screenshot on comment #5 and Installed npm & node.js files 
After ran the command (npm run stat-works) we are getting error as per attached screenshot.

@Reporter: Could you pleas check the attached screenshot let us know why the issue we are facing and also provide the Linux version.

Thanks.!
854601.png
310 KB View Download
You seems to be missing the libgconf-2.so.4 lib on Ubuntu.

Try to install such requirement by executing this command:

`sudo apt-get install libgconf-2-4`

The OS I'm running this on is Ubuntu 18.04, but it should work with 17.10 as well.
Project Member

Comment 11 by sheriffbot@chromium.org, Jun 25 2018

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding the requester to the cc list.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: Needs-Feedback
As per comment #10 we are tested the issue and able to see the electron and as per your screen-cast we are not able to see the path (Temp folder). Attaching screen-cast for reference.

@Reporter: Could you please review the screen-cast and let us know that further steps to reproduce the issue. As we are unable see the path which your provided in the screen-cast on comment #5.

Thanks.!
854601.webm
8.9 MB View Download
The file explorer window was only used to showcase the transparency issue, any other window works. To run the example that does not work, please run 'npm run doesnotwork'.
Project Member

Comment 15 by sheriffbot@chromium.org, Jun 26 2018

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding the requester to the cc list.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
run 'npm run start-doesnotwork' to be precise (not 'npm run doesnotwork')
Labels: -Needs-TestConfirmation M-69 Target-69 FoundIn-69 OS-Windows
Status: Untriaged (was: Unconfirmed)
Able to reproduce the issue on Win-7 and Ubuntu 17.10 using chrome reported version #67.0.3396.87 and latest canary #69.0.3473.0. Issue is not applicable to OS-mac.
Able to see a white background on win-7 and glitches on ubuntu 17.10.
This is a non-regression issue as it is observed from M60 old builds. 

Hence, marking it as untriaged to get more inputs from dev team.

Thanks...!!
854601@M60.webm
7.1 MB View Download
Cc: rjkroege@chromium.org weiliangc@chromium.org piman@chromium.org danakj@chromium.org samans@chromium.org
Does anyone know how viz handles window transparency?
Cc: kylec...@chromium.org
gpu or software compositing?
Both seem to be broken.
Chromium should support transparency, provided you pick a rgba visual (which is somewhat non-trivial, but see how it's done in [1]), and that you have a compositing manager of course.

I have no idea how electron sets up its window, so I don't know if it's actually hooked up properly or not.

[1] https://cs.corp.google.com/clankium/src/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc?q=DesktopWindowTreeHostX11::InitX11Window&dr=CSs&l=1450
@piman, that link goes to an internal google page, do you have an external accessible link? Thanks.
pettern: Here is the external code search link.

https://cs.chromium.org/chromium/src/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc?type=cs&q=DesktopWindowTreeHostX11::InitX11Window&sq=package:chromium&g=0&l=1378

I can add that we definitely support transparency on Windows with software compositing, as it's used for omnibox popup window. I believe transparency should also work on Windows with GPU compositing, as I've tested it works in the past, although that could be dependent on the Windows version.
Status: Available (was: Untriaged)

Sign in to add a comment