0x61726b / electron-vibrancy

Make your electron windows vibrant!
MIT License
655 stars 50 forks source link

Linux support? #12

Open cjb opened 7 years ago

cjb commented 7 years ago

Any ideas on how an implementation on Linux might work? Thanks!

0x61726b commented 7 years ago

Hello, I've looked into it but its simply not possible or very hard to do. Because there are multiple desktop environments (gnome,kde etc.) you'd have to implement some kind of blurring algorithm yourself. There is not a unified solution that will work on every desktop environment. This module simply uses already existing native funtionality,it doesnt do the actual blurring, as its very complicated and involves the actual GPU. so I fear we can't support Linux easily.

jancborchardt commented 6 years ago

If someone wants to pick this up for GNOME (which is used by Ubuntu and Fedora for example), there's 2 extensions which do some blurring which might be a good start:

danimesq commented 5 years ago

@jancborchardt are these extensions compatible with Cinnamon, which is a fork of GNOME? @arkenthera would a node module enable translucent effect, such as backdrop-filter on CSS? It could achieve blur itself (from CSS) in any platform.

0x61726b commented 5 years ago

@DaniellMesquita I havent been following Electron or Chromium for sometime but iirc you needed to enable a flag in Electron side for backdrop blur to work in Electron so that would mean that its not possible from the node module only.

danimesq commented 5 years ago

Yes, I`ve already tested backdrop on Electron (by adding flag and other additions on its json), and it works: IB blur But could it be used to the window itself? Instead of transparent, HTML haves a translucent #fff with CSS backdrop?

danimesq commented 5 years ago

https://github.com/yozoon/gnome-shell-extension-blyr https://github.com/lviggiani/gnome-shell-extension-wbe

@arkenthera could you support any of these extensions?

0xENDER commented 3 years ago

Yes, I`ve already tested backdrop on Electron (by adding flag and other additions on its json), and it works: IB blur But could it be used to the window itself? Instead of transparent, HTML haves a translucent #fff with CSS backdrop?

No, the backdrop-filter only works on the document itself.

danimesq commented 3 years ago

@arkenthera, what about supporting GNOME for now?

https://github.com/yozoon/gnome-shell-extension-blyr https://github.com/lviggiani/gnome-shell-extension-wbe

Or, generically, make the window fully transparent on Linux and let the DE itself apply blur; or simply support GNOME for now.

Delta-official commented 2 years ago

Hello, I've looked into it but its simply not possible or very hard to do. Because there are multiple desktop environments (gnome,kde etc.) you'd have to implement some kind of blurring algorithm yourself. There is not a unified solution that will work on every desktop environment. This module simply uses already existing native funtionality,it doesnt do the actual blurring, as its very complicated and involves the actual GPU. so I fear we can't support Linux easily.

i don't believe that you need to make a version for every DE since electron/chromium is built using GTK and i believe all GTK applications can run in all DEs without any problems (firefox runs perfectly fine in KDE Plasma)

i think just supporting GTK would be good enough considering that GTK4 will have/already has a native blur function

scalgoon commented 5 months ago

Is there any updates to this working on Linux? I'd like to add it to my app, especially the Linux version.