| Future of BrowserHTML and Servo nightly builds | Paul Rouget | 1/22/18 9:43 AM | tl;dr: we are planning to retire BrowserHTML, remove the mozbrowser
code from Servo, and greatly improve the usability of the Glutin port. BrowserHTML was built as an experiment. Following the path of Firefox OS, we built a browser in HTML to learn more about turning Servo, the web engine, into a usable project. We learned a lot about the benefits and inconveniences of the Browser API (à la Firefox OS) and the Electron approach. The flexibility of using the web platform was a major advantage to rapidly build and experiment with new UI concepts, and deliver a usable software on Linux, Mac and Windows. At the same time, we learned that bending the web standards to fit these needs comes with major costs. Code complexity, security issues and maintaining efforts. Adding non-standards behaviors to Servo, especially at this stage in the project, is not a challenge we find worth our energy just now. We found that separating Servo, the web engine, from the application logic is a lot more beneficial. Last year, we have improved the Servo embedding API. We have been experimenting with building functional browsers in Rust and other 3rd-party technologies (C# and Xamarin), on mobile and desktop, and learned a lot. Now - we want our efforts to be focused on improving Servo as a web engine. We will be bringing back to the original Glutin ports all the features we introduced in Servo last year. Some specifics: - we willw unfork glutin - bring tabs support to Glutin (basically, the MiniUI port of ServoShell: https://github.com/paulrouget/servoshell#mini-ui) - implement more keybindings - more controls to toggle the different debug modes - support a minimal UI to navigate to a new URL with search support - move more libservo code to /ports Expect BrowserHTML to be removed from Servo Nightly in the near future. Also - I'd like to add that the MiniUI we built for ServoShell might look a bit simplistic, but we found that having a keyboard-driven browser is surprisingly satisfying, especially for developers. We hope you will enjoy it as much as we do :) -- Paul Rouget |
| Re: Future of BrowserHTML and Servo nightly builds | Fabrice Desre | 1/22/18 7:00 PM | Hi Paul,
I have a couple of questions: - Are there any plans for a <web-view> like tag? I'm surprised that Electron-like functionality is not of higher interest, since this is the kind of situation where you can build an applications within the limits of Servo web compat support. - What are the options for embedders to provide content in contexts like an about:preferences page? Is that out of scope and expected to be done with the embedding UI toolkit? Thanks! |
| Re: Future of BrowserHTML and Servo nightly builds | David Teller | 1/22/18 10:37 PM | Hi Fabrice,
As far as I can tell, Electron-like-with-Servo is still alive, with the project called Starling. I don't think it's meant to be source-compatible with Electron, but my understanding is that it is meant to be more webby. I have no idea how far the project is, though. Cheers, David |
| Re: Future of BrowserHTML and Servo nightly builds | Paul Rouget | 1/23/18 2:18 AM | On Mon, Jan 22, 2018 at 10:55 PM, Fabrice Desre <fab...@desre.org> wrote:We are interested, but it's not a priority for now. It's not possible yet, but the same way we have allow_navigation, we could allow servo to let the embedder resolve/redirect an URL, or even provide the content, like with Gecko protocol handlers. > _______________________________________________ > dev-servo mailing list > dev-...@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-servo |