IceDBorn / pipewire-screenaudio

Extension to passthrough pipewire audio to WebRTC Screenshare
https://addons.mozilla.org/firefox/addon/pipewire-screenaudio/
GNU General Public License v3.0
167 stars 5 forks source link

[RFC] Add chrome(ium) support to extension #93

Open Aviana opened 8 months ago

Aviana commented 8 months ago

This will add support for Chromium based browsers to the extension.

I have tested this on Firefox 124.0.1 and Chromium 123.0.6312.86.

While testing i encountered a Chromium (bug?) behavior that crashed the extension if chrome.runtime.sendNativeMessage was not awaited. This works fine on Firefox so i added the workaround that makes the popup menu take a second to load on Chromium. This shouldn't be a big deal.

The only needed change to package for chromium is to replace the manifest.json with the manifest-chrome.json and adjust the native extension once you get a release id on the chrome store.

Anyway, this is just for your consideration. Thanks for your work.

alansartorio commented 8 months ago

Thanks for looking into this.

I'll review and try it tomorrow.

I see that the install script wasn't modified, we'll have to take a look at how to install the native messaging hosts into all available browsers.

Aviana commented 8 months ago

~/.config/chromium/NativeMessagingHosts/ etc/chromium/native-messaging-hosts/

~/.config/google-chrome/NativeMessagingHosts/ etc/opt/chrome/native-messaging-hosts/

~/.config/microsoft-edge/NativeMessagingHosts etc/opt/edge/native-messaging-hosts/

~/.mozilla/native-messaging-hosts usr/lib/mozilla/native-messaging-hosts/

Done.

IceDBorn commented 6 months ago

This is blocked because we need a Google dev account to obtain and use a unique extension key for native messaging hosts.

Aviana commented 6 months ago

Oh man just saw that they require 5$ for setting up a dev account. Also they only accept credit cards. Desperate times at Google it seems.

Anyway if you need 5$ i can send it with paypal.

IceDBorn commented 6 months ago

My main problem is the way Google treats devs, not the price. Why don't you join the matrix server and discuss this further?