7 ms·
No XBL Components Left in Firefox
- ahbyb 7y ago>And now a major browser's UI is built with web components! Proud that you need to use your HTML/JS engine to render your UI instead of using faster native code? I mean you have the opportunity of getting rid of XUL and instead you change it... for something similar?
- adrian17 7y agoAs for XBL: as far as I understand, it was closer to Custom Elements - defined at XML/JS layer instead of with native code. In fact it was so similar that FF developers made a tool that tried to automatically convert an XBL binding to equivalent Custom Element (similar to Python's 2to3).
- spankalee 7y agoThey get the benefits of cross platform code, but now use something that developers are more familiar with, and the can get rid of a lot of code. Big win, I think.
- dralley 7y agoThe browser UI was already rendered by Gecko, that's how XUL and XBL work. It's just that it's rendered by parts of Gecko that aren't used by anything else on the web, and so in honesty those paths probably had less optimization, not more.
- stefan_ 7y agoThat sounds like a great thing, because the Web is where we applaud people if their site renders in a second, enough time for a modern processor to render a full fricking playthrough of the original Doom.
- Causality1 7y agoMozilla, proudly celebrating the death of user control, UI customization, and truly useful extensions. Don't forget your custom userChrome.css is next on the chopping block.
- atalad 7y agoThe new and updated Firefox Quantum has UI redundancy issues. I can't believe they don't let users customize the main menu!
- kreetx 7y agoWhich menu? (The row where the address bar is is customizable, no?)
- anoncake 7y agoThe one at the right edge of the toolbar, the only one.
- Causality1 7y agoTheir strategy is to grind you down over time on whatever their users are doing that doesn't suit their grand vision. A feature will start out on the main menu then it will emigrate to a sub menu then it has to be done with an extension then it has to be done with a custom file then that custom file gets disabled by default but can be turned on and finally the feature gets disabled entirely. It happened first with xul extensions and now it's happening with userChrome.css and unsigned extensions.
- tomc1985 7y agoXUL was amazing, and they abandoned it. This obsession with making everything "web" friendly is backsliding desktop into horrible, non-native UI.
- ainar-g 7y agoWhat is the closest thing we have left that is close to “mostly declarative GUI”? QML? Tk? Please don't say Electron.
- fiddlerwoaroof 7y agoReact Native? SwiftUI?
- tomc1985 7y agoGTK sort-of fits the bill
- djsumdog 7y agoI recently built something with PyQt bindings and it works really well: https://gitlab.com/djsumdog/mpvbuddy https://gitlab.com/djsumdog/mpvbuddy
- tomc1985 7y agoIn my previous job I wrote a couple of not-too-complicated apps targeting Linux in PyGTK and I found it to be pretty pleasant, except when it came to custom styling.... mainly because the styling language does didn’t seem well documented and i found it to be somewhat arcane. Didn’t stop me though and the project got done. I wouldn’t mind working with it again
- FussyZeus 7y agoUgh, Electron. I'm sure there are ways to make it good but sweet Jesus Electron is not it, at all.
- repolfx 7y ago
- johnchristopher 7y agoWill https://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul https://www.mozilla.org/keymaster/gatekeeper/there.is.only.x... be updated :-) ?
- deleted 7y ago[deleted]
- vsskanth 7y agoIf I understand this correctly, do they mean Firefox desktop GUI is rendered using HTML elements? I understand chrome UI controls are based on skia. If yes, is this available as some kind of framework that can be used to develop custom desktop applications (like Qt)?
- roca 7y agoGetting rid of XBL is a big and good step, but XUL is still being used. They're working on getting rid of that too. It's not all HTML yet.
- anonymousiam 7y agoEverything old is new again. Anybody remember HotJava (from over 20 years ago)?
- coribuci 7y agoAnd windows 10 which has the same look and feel like windows 1.0 ?
- pram 7y agoBack in the early 00s I was actually shocked that no one attempted to make a desktop environment, or at least applications, using XUL and Gecko. Sure there was Chatzilla but I never saw like a file browser, or an mp3 player. Now we have Electron and all my wildest dreams came true.
- GeorgeWBasic 7y agoCausality1, your posts have been hidden for speaking against Mozilla. Just thought you should know.
- codr7 7y agoThat's a non-trivial amount of hard work going down the drain right there. I'm not saying it was the right thing to do, but XUL and the component architecture were major reasons Mozilla took forever to be released, and then forever again to become usable. And then a major reason why Firefox extensions became a thing long before using web tech was an option. I tried to find uses for it back in the days, read a book and played around with it. What killed it for me was hooking into C meant dealing with Mozilla's internals a lot more than I would have preferred. These days serverless is common, but back then it was practically unheard of. I did use Songbird [0] for a while, but it was always slow and buggy for me. And it never really went anywhere, not for a lack of trying from the looks of it. ActiveX, Corba, Bonobo; they always seem to get so complex and bloated that no one wants anything to do with them when there are other options. [0] https://en.wikipedia.org/wiki/Songbird_(software) https://en.wikipedia.org/wiki/Songbird_(software)
- topspin 7y ago> ActiveX, Corba, Bonobo; they always seem to get so complex and bloated that no one wants anything to do with them when there are other options. The only experience I've had with any of these technologies that didn't end up inducing nausea was ATL. It made COM/ActiveX tolerable for common, simple use cases. I learned the CRTP while writing ATL components and applied it in my own C++ work to some success.
- pjmlp 7y agoThey only get so complex when people insist into plugging a square into a round pet, like using said technologies from C, writing everything by hand. Using ActiveX, nowadays COM/UWP, is never an issue from Delphi, C++ Builder, .NET, Visual C++ via MFC, C++/CX, C++/WinRT, Eiffel.
- codr7 7y agoIt's mostly a thick layer of lip stick though, as soon as something doesn't work you start paying for building on top an epic tower of crufty abstractions. I once did some Java EE in Eclipse. They both look mostly the same to me. A mountain of crufty crap covered with as much lip stick as it took to make it sort of flop along. I'm sorry if I'm stepping on toes here, this is just my experience. May I ask what you're using component frameworks for these days? I spent 13 years professionally writing reservation and accounting client/server apps in Delphi but never even came close.
- Endy 7y agoJust gonna share a link here, and I imagine that you'll be able to figure out all of my comments on the whole situation by the fact that it's on top of my bookmarks - and that I use three of the Allied programs listed. http://thereisonlyxul.org/ http://thereisonlyxul.org/