Open stoically opened 4 years ago
If this would replace the electron app, it would be rather unhandy with three separate dependencies (browser, extension, native binary), all with their own update mechanism.
It most definitely would not replace it.
Yeah, the idea would be just to have an alternative, not a replacement.
Keeping the browser up to date should be done regardless, the extension can auto-update itself, and yeah, the native binary would be a bit more tricky - though, it could be made self-updating as well.
@stoically Shouldn't you mention your own extensions which implement effectively this...? At the very least, you've already prototyped the idea.
Didn't want to make the impression of using this issue to promote my extensions. Would be nice to see it upstream and hence thought it might make sense to have a place to discuss this as a concept.
@stoically has great Web Extensions which solve this issue such as https://github.com/stoically/radical-native
No worry, I'll do it for you :P
Aha okay, sorry then. I was just a bit surprised to see no mention of it, as surely it would be at least a good reference for anyone thinking about this idea!
Is your suggestion related to a problem? Please describe.
Personally I prefer running web apps in my browser of choice, which is not possible with apps that are powered by Electron. Running in the browser also has several benefits like
Using Element Web as is however comes with a set of limitations, namely it doesn't provide search in encrypted rooms (seshat) or storing of pickle keys into OS secure storage (keytar).
Describe the solution you'd like
To get those features that rely on native code into the browser world, something that can be done is using a WebExtension that talks via Native messaging with a executable on the host through stdio.
When trying to use a functionality that normally is restricted to Element Desktop, like when searching in an encrypted room, Element Web could offer instructions to install the WebExtension along with the native messaging host binary.
Describe alternatives you've considered
Not aware of alternatives yet.
Notes
This might also be interesting in combination with the PWA or even bundling Element Web itself as WebExtension.