3 ms·
I know this isn't what the WebDriver BiDi protocol is for, but I feel like it's 90% there to being a protocol through which you can create browsers, with swappa
by yoavm 2y ago
I know this isn't what the WebDriver BiDi protocol is for, but I feel like it's 90% there to being a protocol through which you can create browsers, with swappable engines. Gecko has gone a long way since Servo, and it's actually quite performant these days. The sad thing is that it's so much easier to create a Chromium-based browser than it is to create a Gecko based one. But with APIs for navigating, intercepting requests, reading the console, executing JS - why not just embed the thing, remove all the browser chrome around it, and let us create customized browsers?
- djbusby 2y agoI have dreamed about a swappable engine. Like, a wrapper that does my history and tabs and book marks - but let's me move from rendering in Chrome or Gecko or Servo or whatever.
- sorenjan 2y agoThere used to be an extension for Firefox called "IE Tab for Firefox" that used the IE rendering engine inside a Firefox tab, for sites that only worked in IE.
- hyzyla 2y agoThe same idea with built in Internet Explorer in Microsoft Edge, where you can switch to Internet Explorer mode and open website that only correctly works in Internet Exlorer
- pauldino 2y agoAnd Google made basically the opposite thing to embed Chrome within Internet Explorer for sites that wouldn't work in IE. https://en.wikipedia.org/wiki/Google_Chrome_Frame https://en.wikipedia.org/wiki/Google_Chrome_Frame
- joshuaissac 2y agoThere are some browsers that support multiple rendering engines out of the box, like Maxthon (Blink + Trident) and Lunascape (Blink + Gecko + Trident).
- apatheticonion 2y agoAgreed. Headless browser testing is a great example of a case where an embeddable browser engine "as a lib" would be immensely helpful. JSDom in the Nodejs world offers a peak into what that might look like - though it is lacking a lot of browser functionality making it impractical for most use cases.