MicrosoftEdge / WebView2Feedback

Feedback and discussions about Microsoft Edge WebView2
https://aka.ms/webview2
452 stars 55 forks source link

transparent background #205

Closed olilarkin closed 3 years ago

olilarkin commented 4 years ago

Couldn't work out if its currently possible or not, but it would be great to be able to make ICoreWebView2 have a transparent background

AB#27226168

david-risney commented 4 years ago

Can you elaborate on your app scenario and how transparency would help? Are you using HWND based hosting in the C++ API?

olilarkin commented 4 years ago

I develop a cross platform audio plugin framework and i am integrating a webview UI widget that is based on WKWebKitView on mac/ios and ICoreWebView2 on windows. For seamlessly mixing web UI content with the native view, on mac and ios i have been liking the fact that i can have a transparent background. I can imagine this also being useful for example to allow HTML to be used for debug UI in game engines or floating desktop helper apps with non-rectangular shapes (Thinking of old winamp skins etc, where you would need transparency)

olilarkin commented 4 years ago

yes i am using HWND based hosting in the c++ api

https://github.com/iPlug2/iPlug2/blob/graphics/webview/IPlug/Extras/WebView/IPlugWebView.cpp#L36

Ciantic commented 4 years ago

Without transparent background I can't replicate Electron apps with this. Imagine an overlay program, like presentation helper etc. that overlays on top of desktop.

Also tooltips, popu menus etc. all require transparent background. How else would you render the tip of the popup menu or the shadows?

It's easy to do with Electron because you can have transparent background, yet the HTML elements appear like in thin air with it.

The transparent background simply allows to have non-rectangular looking window etc.

IMO, this feature is must have, otherwise I have to stick with Electron and it's bloated binaries. I think this project needs some web designers too, not just C++ programmers, they would have told immediately that this is required feature.

AndrewPlakhotnyi commented 4 years ago

It also must be click-through. I.e. it must receive input events only if clicked on non-transparent areas.

champnic commented 3 years ago

This should be available through the DefaultBackgroundColor API in 1.0.790-prerelease SDK. We are tracking the mentioned clickthrough work in #1004. Thanks!