TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Revisiting how we build Firefox

346 pointsby clarkbwalmost 10 years ago

17 comments

joshmozalmost 10 years ago
Some context that might help people understand this email...<p>There are two high-level components which make up Firefox. The first is Gecko, the rendering engine. The second is Firefox, the application itself, which uses Gecko to render Web pages and itself.<p>Firefox, built on top of Gecko, is written primarily in XUL and XBL (and JS).<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;XUL" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;XUL</a> <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;XBL" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;XBL</a><p>What&#x27;s going on here is that Mozilla is considering getting rid of XUL and XBL and building Firefox with the same technologies that people use to build Web content.<p>There are at least three big advantages to doing this:<p>1. Eliminate the need to support XUL and XBL in Gecko.<p>2. Contributing to Firefox gets easier because there is no need to learn what are essentially Mozilla-specific languages.<p>3. Mozilla learns more about what it takes to build complex applications like Firefox itself using Web technologies.<p>The only real downside is the amount of work involved.
评论 #9840969 未加载
评论 #9841025 未加载
评论 #9840942 未加载
评论 #9841431 未加载
评论 #9841103 未加载
评论 #9842028 未加载
评论 #9842150 未加载
millstonealmost 10 years ago
I hate the trend of building native UIs in HTML, because the result never feels right. For example, Firefox does not use OS X native context menus, and it shows in how they look, position themselves, animate, respond to keyboard and mouse events, etc.<p>But Firefox devs have clearly spent a great deal of effort to make these faux-context menus look native. What an enormous waste of development energy to emulate what the platform already provides!<p>Rather than pushing forward with a layer that provides even less access to platform UI elements, I wish they would recommit themselves to keeping the native elements native.
评论 #9842699 未加载
评论 #9842629 未加载
评论 #9843113 未加载
评论 #9842860 未加载
glorienalmost 10 years ago
The correct thing to use is AppKit on OS X, WPF on Windows, GTK+ on Gnome, and Qt on KDE. Yes, this requires more code, but it results in a much, much better experience. As an OS X user, it&#x27;s <i>so</i> obvious when an app isn&#x27;t properly using AppKit.
评论 #9841573 未加载
评论 #9841483 未加载
评论 #9841601 未加载
评论 #9841384 未加载
评论 #9844525 未加载
评论 #9842034 未加载
评论 #9841355 未加载
JoshTriplettalmost 10 years ago
Mozilla has been doing experiments in building browser UI in HTML for a long time. For instance, see Chromeless ( <a href="https:&#x2F;&#x2F;blog.mozilla.org&#x2F;labs&#x2F;2010&#x2F;10&#x2F;chromeless-build-your-own-browser-ui-using-html-css-js&#x2F;" rel="nofollow">https:&#x2F;&#x2F;blog.mozilla.org&#x2F;labs&#x2F;2010&#x2F;10&#x2F;chromeless-build-your-...</a> ).<p>Current HTML is capable enough. It&#x27;s nice to see them talking about adopting that in mainline Firefox.
评论 #9841214 未加载
smacktowardalmost 10 years ago
It&#x27;s probably time (past time, actually) for Mozilla to start looking into putting XUL&#x2F;XBL to pasture for Firefox UI and using HTML&#x2F;CSS&#x2F;JS instead, since the Web platform has become sufficiently capable that the arguments for having a separate stack of technologies for building UI don&#x27;t really hold anymore.<p>Still makes me a bit sad to see it go, though; I&#x27;m old enough to remember when XUL seemed like an exciting potential platform for general-purpose app development. Which never really panned out, alas, but was fascinating at the time.
评论 #9841743 未加载
评论 #9841196 未加载
评论 #9841197 未加载
clarkbwalmost 10 years ago
This email represents an intention to start investigating moving away from XUL&#x2F;XBL. There are a number of areas to explore here like how to properly handle L10N, add-on overlays, and where to go native vs markup. At the same time we&#x27;re actively moving over to e10s (electrolysis &#x2F; per process tabs). There will be followup communication about who is doing the work and what work is being done but now is the time to add your concerns and comments or offer support.
abhvalmost 10 years ago
Can XUL&#x2F;XBL just be ``compiled-down&quot; to proper HTML, or is there also a security issue in that Gecko allows XUL&#x2F;XBL to break rules needed to securely render HTML?
评论 #9841951 未加载
shmerlalmost 10 years ago
<i>&gt; Is there space for a native-code main-window on desktop like we have on Android?</i><p>Sailfish browser did it as well (using native UI). Desktop Firefox also can benefit from IPCembedlite. But the question will be, what should be used to write the UI. Qt as well?<p>I&#x27;m a bit torn on that, since switching away from &quot;Webby&quot; interface basically killed Fennec for Meego, and only Android started getting UI improvements (that&#x27;s what triggered a separate browser for Sailfish to begin with).
评论 #9841969 未加载
ShalokShalomalmost 10 years ago
Please please please :D<p>Use this chance and port Firefox to Qt:<p>There are a lot pro`s, who speak for that, front in the row the huge community, the portability, the performance, and the fact that many devs rewrite there existing GUI to Qt, like Musesore, Frescobaldi, Wireshark, Subsurface, VLC, Gcompris, Mkvtoolnix, Dropbox, Megaglest`s Map editor, OpenShot, ufw-frontends, Dolphin-Emu and even two DEs: LXDE and Unity.<p>Please do that and i am Firefox user for my lifetime. :)
drapperalmost 10 years ago
That reminds me of what Vivaldi is trying to do (<a href="https:&#x2F;&#x2F;vivaldi.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;vivaldi.com&#x2F;</a>)
hitlin37almost 10 years ago
Good thing is servo team is supporting API compatibilty with chromium CEF project. That mean, if you write an html5 app using CEF, it will just work so with servo engine as well.
chovyalmost 10 years ago
It would be cool if they took something like NWjs or Electron and made it better. So we could build other apps besides a browser with a cross platform framework.
therealmarvalmost 10 years ago
Keep XUL, XBL. Mark it deprecated. Make plugin development as easy as in Chrome for the new API. Would be awesome and so appreciated!
madezalmost 10 years ago
Does this imply that It wouldn&#x27;t possible anymore to use Firefox to browse without Javascript?
评论 #9841961 未加载
rockdoealmost 10 years ago
The faster deployment thing seems pretty vague and free of actual content.
评论 #9841549 未加载
评论 #9841904 未加载
评论 #9847513 未加载
gesmanalmost 10 years ago
Please keep these little icons unchanged, i don&#x27;t care about it.<p>Do not make tabs cuter, I don&#x27;t care about it.<p>But PLEASE - do something to stop Firefox from being such a bloated memory hog - I deeply care about it.
评论 #9842924 未加载
评论 #9842928 未加载
risalmost 10 years ago
I&#x27;d rather they&#x27;d spend more time making their rendering engine e.g. implement the SVG spec properly[0] than fanny about with this, but, y&#x27;know, I&#x27;m not in change.<p>[0] <a href="https:&#x2F;&#x2F;bugzilla.mozilla.org&#x2F;show_bug.cgi?id=437554" rel="nofollow">https:&#x2F;&#x2F;bugzilla.mozilla.org&#x2F;show_bug.cgi?id=437554</a>
评论 #9842453 未加载