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.

The Firefox UI Is Now Built with Web Components

587 pointsby joewalkerover 5 years ago

27 comments

wooptooover 5 years ago
XUL was ahead of its time when it was introduced by Netscape&#x2F;Mozilla many years ago. It was a capable XML based language used to describe rich graphical user interfaces. Together with XULRunner this was supposed to be a generic framework for creating graphical applications. This was long before HTML became what it is today. Back then people still thought Java would take off on the desktop. I believe that most Mozilla products such as the Mozilla suite, Thunderbird and Firefox used this for a very long time.<p><a href="https:&#x2F;&#x2F;www.mozilla.org&#x2F;keymaster&#x2F;gatekeeper&#x2F;there.is.only.xul" rel="nofollow">https:&#x2F;&#x2F;www.mozilla.org&#x2F;keymaster&#x2F;gatekeeper&#x2F;there.is.only.x...</a>
评论 #21588567 未加载
评论 #21588677 未加载
评论 #21589032 未加载
评论 #21591846 未加载
评论 #21588294 未加载
评论 #21589064 未加载
评论 #21589345 未加载
评论 #21588559 未加载
评论 #21591175 未加载
评论 #21591354 未加载
评论 #21588934 未加载
评论 #21588971 未加载
评论 #21589506 未加载
Hamukoover 5 years ago
I&#x27;m waiting for Firefox to start using a native context menu on macOS instead of the garbage that they are now using and which doesn&#x27;t behave anything like any other context menu on macOS.<p>It&#x27;s luckily on Bugzilla, so I can keep monitoring progress daily.<p><a href="https:&#x2F;&#x2F;bugzilla.mozilla.org&#x2F;show_bug.cgi?id=34572" rel="nofollow">https:&#x2F;&#x2F;bugzilla.mozilla.org&#x2F;show_bug.cgi?id=34572</a>
评论 #21591082 未加载
评论 #21589614 未加载
评论 #21587966 未加载
评论 #21588120 未加载
评论 #21588335 未加载
评论 #21589217 未加载
评论 #21588402 未加载
评论 #21588790 未加载
jhataxover 5 years ago
Here’s my XUL development story:<p>I built and managed (2009-2011) the XUL-based Elasticfox extension for Firefox that allowed users of EC2 to manage their compute resources on AWS. The extension pre-dated the AWS Console and introduced features such as resource tagging and search before they were part of the SDK.<p>The extension wouldn’t have been possible without XUL. In fact, it isn’t possible today. MDN documentation was really great even in those days, as was the community which answered a number of my questions. I was doing something really new, especially with calling into EC2 APIs, background refreshes, using Prefs.js to save tag information, etc., and the community was really responsive and supportive of my work. Quirks aside, my experience with XUL was great. Users truly appreciated the extension over the Java-based CLI, and a number of ideas (mine or those from the community) eventually made their way into the AWS Console.<p>I spent my last year at AWS working on the S3 Console using web technologies. I found XUL development to be easier than hacking CSS that year (circa 2010-11).<p>Edit: Added a note up top that this is my XUL story.
ajxsover 5 years ago
Isn&#x27;t this the kind of thing we&#x27;ve been looking to move away from? I personally think that this modern trend of implementing, or even worse -porting-, important functionality in Javascript is very worrying. There was another recent controversial discussion of Electron on HN where I and many others shared our reservations about badly Electron apps perform overall. They&#x27;re disproportionately resource intensive, shred battery life, hog resources etc. I don&#x27;t think that deprecating XUL is a bad thing, but is moving to another JS based solution <i>really</i> a good idea? I&#x27;ve been a supporter of Firefox for a long time and intend to continue to do so. I tend to favor lightweight programs and while I want to continue to give FF my support, I&#x27;m concerned with how bloated and slow it&#x27;s becoming.
评论 #21589067 未加载
评论 #21589350 未加载
评论 #21589322 未加载
评论 #21589097 未加载
评论 #21590090 未加载
bryanhover 5 years ago
Just peeking through the tracker history <a href="https:&#x2F;&#x2F;bugzilla.mozilla.org&#x2F;show_bug.cgi?id=1397874" rel="nofollow">https:&#x2F;&#x2F;bugzilla.mozilla.org&#x2F;show_bug.cgi?id=1397874</a> and you can see the effort it took to land this magnitude of a change -- pretty astounding. Big hat tip to Brian and the FF crew!
matheistover 5 years ago
I built a userChrome.js replacement [+] back when FF 57 came around, that uses an XBL loophole to permit users to add custom javascript to their profiles that would run in the browser context. I wanted to be able to use pre-OS X Lion fullscreen mode, and couldn&#x27;t find any other way to do it.<p>I&#x27;m a little bummed that this loophole is going away in FF 72 (I still can&#x27;t get pre-Lion fullscreen!). On the other hand, it has always been super clear that this is a loophole that will eventually go away, and I did get 2 years of use out of it, so I&#x27;m not complaining too loudly. Congrats to the team for removing XBL!<p>[+] <a href="https:&#x2F;&#x2F;github.com&#x2F;nuchi&#x2F;firefox-quantum-userchromejs" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;nuchi&#x2F;firefox-quantum-userchromejs</a>
评论 #21588585 未加载
pfrazeover 5 years ago
Incidentally, so is Beaker browser&#x27;s. We use lit-elements, which I like a lot.
评论 #21589854 未加载
shoover 5 years ago
&gt; There was also a case where a user with over 1500 tabs open (scientifically considered a “tab hoarder”) noticed extreme slowness when opening the “all tabs” dropdown. It turned out that he had tripped on an O(N²) edge case, and the issue was fixed.<p>Good god.I&#x27;ve seen some ridiculous tab collections but that is next level.
评论 #21592989 未加载
BoumTACover 5 years ago
can it cause perfomance issue ?<p>I know for example the devtool is written in react and it&#x27;s a lot slower than chrome devtools (I don&#x27;t know how chrome devtool is written) and the javascript debugger is sometime not even usable because it&#x27;s so slow.
评论 #21587694 未加载
评论 #21587570 未加载
评论 #21587540 未加载
评论 #21587502 未加载
评论 #21587546 未加载
评论 #21587526 未加载
评论 #21588141 未加载
ravenstineover 5 years ago
Poor web components. Everybody rags on them.
评论 #21587528 未加载
评论 #21587553 未加载
评论 #21587793 未加载
评论 #21587536 未加载
mosburgerover 5 years ago
I wrote an open-source cross platform app entirely in XUL + Javascript once and it was an awful experience - incredibly hard to debug and get all the bindings working right. Congrats to the Mozilla team on what has to be a very satisfying improvement!
etseover 5 years ago
I don&#x27;t know if the move to web components somehow resulted in superior font rendering for Firefox on Mac, but I just checked version 71.0b11 and it looks great – at least as good as Safari.<p>I just couldn&#x27;t stand the blurry text, so now I&#x27;ll give it a go and switch back to Firefox. Although, the colors look far more saturated than they should be, like the orange Hacker News navigation bar.
johnpowellover 5 years ago
I read the blog post and wasn&#x27;t able to figure out if this would break userChrome.css.<p>I&#x27;m not that weird about change and normally accept it and end up not caring. But I have tried to get used to tabs on top and it just isn&#x27;t happening. If I can no longer have that I guess I will need to get used to Safari. Or I will just keep using Firefox and not update and accept the security implications.
评论 #21605277 未加载
BlackLotus89over 5 years ago
Does this mean the missing extension icons I got for a few days now are because of this? (I use nightly) or is this an uncorrelated bug and I now think that the rewrite is at fault because I combine unrelated information?
评论 #21588277 未加载
评论 #21587669 未加载
agumonkeyover 5 years ago
Reminds me of the firefox.html protothingie someone showed a few years ago.
评论 #21588426 未加载
评论 #21592196 未加载
axilmarover 5 years ago
Was there a reason for XUL in the first place? Why wasn&#x27;t Firefox built using some GUI library? I&#x27;ve read what the posted page said, and the comments in here, and the first results from Google don&#x27;t give any reason why XUL was necessary.<p>To me it seems many hundreds, if not thousand, man years spent on something totally unnecessary.
zemover 5 years ago
that sounds like a massively satisfying project to be involved with!
dudiduover 5 years ago
This is awesome!
kickover 5 years ago
Remember when a tab freezing didn&#x27;t make Firefox&#x27;s UI chrome unresponsive? I do, too.
评论 #21587722 未加载
评论 #21587449 未加载
评论 #21587136 未加载
评论 #21587582 未加载
评论 #21587070 未加载
lloydatkinsonover 5 years ago
That’s great and all but I’m still waiting on a spell checker. How can this still not be a thing?
ameliusover 5 years ago
Security implications?<p>Does this strip away a layer of security?
评论 #21587255 未加载
评论 #21587665 未加载
评论 #21587231 未加载
musicaleover 5 years ago
And the FireFox UI still sucks. It&#x27;s ugly and clunky. The look and feel is just off, and it isn&#x27;t responsive.<p>One of the reasons I prefer Safari on macOS is that it actually has a native Cocoa UI.
评论 #21603407 未加载
breatheoftenover 5 years ago
Wow - that must be an incredibly messy UI codebase by now ...
评论 #21587426 未加载
评论 #21587139 未加载
tomc1985over 5 years ago
Everyone celebrates this, as if it were something worth celebrating. Yet all I see is another stake through the heart of desktop and native UI.
评论 #21589504 未加载
评论 #21589146 未加载
评论 #21589276 未加载
FpUserover 5 years ago
Bah, I was wondering why it suddenly feels less snappy. Generally I am against Electron and other web based UI layers. However since browser must have built in web GUI framework by definition it does make mush sense from the architectural and business standpoint to use the same thing for browser own GUI as well.
评论 #21589502 未加载
potiuperover 5 years ago
&#x27;There was also a case where a user with over 1500 tabs open (scientifically considered a “tab hoarder”)&#x27; - by what metric?
评论 #21587963 未加载
评论 #21587809 未加载
dependenttypesover 5 years ago
People seem to love laggy web-sights, let&#x27;s port the lag into the browser&#x27;s UI!
评论 #21587336 未加载
评论 #21587262 未加载
评论 #21589867 未加载
评论 #21587153 未加载