Live data from Hacker News

The Firefox UI Is Now Built with Web Components

briangrinstead.com

251–260 of 260 posts

Re: The Firefox UI Is Now Built with Web Components

#251

Earlier quoted context omitted.

Its also slow and bloated. You get what you pay for

Bloated, yes. Slow, no. You start at a not so low binary size and memory footprint, but that's it. VS Code is an awesome IDE built on electron and it's really snappy.

Not nearly as snappy as notepad++/sublime, which are in turn not as snappy as Vim.

Re: The Firefox UI Is Now Built with Web Components

#252

Earlier quoted context omitted.

> Your editor cannot autocomplete those signals/slots like Qt Creator. what do you mean ? signals and slots are just plain functions, there is no magic to understand ; the only thing that QtCreator does is to display a different icon in the autocompletion toolbox. Do you have an example of an IDE that is not able to autocomplete a signal ? VS is able to, vscode is able to, Xcode is able to, code::blocks is able to, h…

Signals and slots compile into plain C++ functions. The input language (the unnamed Qt superset of C++) has a notion of signals and slots, the output language (C++) does not have any such notion. > I am saying that this point does not make sense - else every library which has some concept not perfectly transmitted by raw C++ code (for instance : a library function whose correct execution / lack of UB depends on the p…

> Signals and slots compile into plain C++ functions. The input language (the unnamed Qt superset of C++) has a notion of signals and slots, the output language (C++) does not have any such notion.

If that was the case, gcc and clang would not be able to build Qt files. Yet the following compiles without issues :

    echo "#include \nstruct foo : QObject { signals: void bar(); public slots: void blah() { } };" | g++ -std=c++11 -fPIC -I /usr/include/qt/QtCore -c -x c++ -
which is all that is needed to ensure that some code is indeed 100% valid C++ code - that it is idiomatic is a wholly different question.

hell, you can even generate the signals code without moc if you are ok with more macros (https://github.com/woboq/verdigris)

Re: The Firefox UI Is Now Built with Web Components

#253

Earlier quoted context omitted.

Signals and slots compile into plain C++ functions. The input language (the unnamed Qt superset of C++) has a notion of signals and slots, the output language (C++) does not have any such notion. > I am saying that this point does not make sense - else every library which has some concept not perfectly transmitted by raw C++ code (for instance : a library function whose correct execution / lack of UB depends on the p…

> Signals and slots compile into plain C++ functions. The input language (the unnamed Qt superset of C++) has a notion of signals and slots, the output language (C++) does not have any such notion. If that was the case, gcc and clang would not be able to build Qt files. Yet the following compiles without issues : echo "#include \nstruct foo : QObject { signals: void bar(); public slots: void blah() { } };" | g++ -std…

No, it just means that Qt is valid C++, not that the two have equivalent semantics (which is necessary for Qt to be exactly C++ and not a bastardized version thereof, which is what we are debating). If I we’re wrong and you were right, the moc would be purely optional; it would serve no purpose, and Qt programs compiled with moc would behave exactly as those compiled without.

Re: The Firefox UI Is Now Built with Web Components

#254
post #156
post #51

I'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't behave anything like any other context menu on macOS. It's luckily on Bugzilla, so I can keep monitoring progress daily. https://bugzilla.mozilla.org/show_bug.cgi?id=34572

There are a couple of other non-native things Firefox does that annoy me. 1. It has its own certificate system. That would be fine if it used that in addition to using the MacOS built in system, but it seems to use it exclusively. 2. It has its own spell checker, which is orders of magnitude worse than the one provided by the native MacOS spell check API. I can't think of any program I've used in the last few years o…

What I don't like, is that it keeps the tab close button on the right. I fix it with a bit of code in UserChrome.css but it'd be great if they would stick a bit closer to the platform. To be fair, except for obviously Safari, most other browsers do the same.

Re: The Firefox UI Is Now Built with Web Components

#255

And the FireFox UI still sucks. It's ugly and clunky. The look and feel is just off, and it isn't responsive. One of the reasons I prefer Safari on macOS is that it actually has a native Cocoa UI.

Yes, the Safari UI basically defines the look and feel for macOS. However Firefox has some advantages in other areas, like ad blocking.

Re: The Firefox UI Is Now Built with Web Components

#256

I read the blog post and wasn't able to figure out if this would break userChrome.css. I'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'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.

I use Firefox Nightly and a couple of the latest updates broke my userChrome.css. On the other jand, it took me just minutes to fix, by asking in r/FirefoxCSS, where there are some kind and helpful CSS ninjas.

Link: https://www.reddit.com/r/FirefoxCSS/

Re: The Firefox UI Is Now Built with Web Components

#257

Earlier quoted context omitted.

Unfortunately OS/WM/DE makers didn't provide a common API, so now web browsers are the "Lowest Common Denominator" for cross-platform apps.

There are a ton of cross-platform GUI libraries

Last time I checked (a year ago), only Qt supported all 5 major native platorms: Linux/Mac/Windows and Android/iOS. Maybe also React Native, if you count [1] (Qt backend) or [2] (libui). Now it looks like Flutter started to support desktop recently. And that's it, I think.

[1]: https://github.com/status-im/react-native-desktop [2]: https://github.com/kusti8/proton-native

Re: The Firefox UI Is Now Built with Web Components

#258

And the FireFox UI still sucks. It's ugly and clunky. The look and feel is just off, and it isn't responsive. One of the reasons I prefer Safari on macOS is that it actually has a native Cocoa UI.

Yes, the Safari UI basically defines the look and feel for macOS. However Firefox has some advantages in other areas, like ad blocking.

Yeah, I appreciate Apple's attempts to sandbox content blockers for security and privacy reasons, but I still miss ublock origin.

Re: The Firefox UI Is Now Built with Web Components

#259

Earlier quoted context omitted.

The blame is not for the monopoly exactly. Rather the reason IE dev stagnated for five years. With no competition and WWI over, MS retired the team.

Right, so, in that period, IE stagnated, and so did Mozilla. But IE was the dominant stagnant browser and not Mozilla or Firefox. That's somewhat on the monopoly. In much of those days I used Netscape 4.x and it really wasn't much worse than IE. Then I used pre-1.0 Mozilla and various forks, and early firefox, they were all pretty acceptable for the time. The big issue was that all the content was authored for IE and…

Yep, I used Communicator for many years. But it always drove me nuts that it couldn’t resize the window without redoing the whole page from scratch. The new Mozilla browser took years to stabilize. It was frustrating chapter for the web... the bad old days.

Re: The Firefox UI Is Now Built with Web Components

#260
post #52

'There was also a case where a user with over 1500 tabs open (scientifically considered a “tab hoarder”)' - by what metric?

By number of tabs open, it sounds like.

To be a hoarder, one would need to accumulate the hoard over a period of time, which "the number of tabs open" is not a measure of. Also, as stated in the article, an issue with a large number of tabs was found, yet it was not declared that the tester(s) were also hoarders by the metric of the "number of tabs open".
Post reply on HN