Live data from Hacker News

A new wave of Linux applications

tuxphones.com

561–570 of 584 posts

Re: A new wave of Linux applications

#561

Earlier quoted context omitted.

More like C++ hates everyone except for C++ compilers.

FYI: Qt is rather ancient C++ by now.

Yes, the code base is very old, about 25 years. However, it is constantly upgraded. The most recent version, Qt 6, supports C++ 17.

Re: A new wave of Linux applications

#562

Earlier quoted context omitted.

FYI: Qt is rather ancient C++ by now.

Is Qt C++? AFAIK it has some sort of custom preprocessor, does it work with a naive vanilla C++ compiler?

It is called the Meta Object Compiler (moc). You can read more about it here: https://doc.qt.io/qt-6/why-moc.html

It parses your C++ headers to generate helpful metadata used for runtime reflection and slot-and-signals. All the generated code is C++.

The latest versions of CMake support moc out of the box, so developers hardly notice the moc step.

Re: A new wave of Linux applications

#563

Earlier quoted context omitted.

Is Qt C++? AFAIK it has some sort of custom preprocessor, does it work with a naive vanilla C++ compiler?

It is called the Meta Object Compiler (moc). You can read more about it here: https://doc.qt.io/qt-6/why-moc.html It parses your C++ headers to generate helpful metadata used for runtime reflection and slot-and-signals. All the generated code is C++. The latest versions of CMake support moc out of the box, so developers hardly notice the moc step.

So Qt doesn't work without moc, right?

Re: A new wave of Linux applications

#564

Earlier quoted context omitted.

On the other hand (ha) it does not require any aiming. I can super+drag windows into "aero snap" targets in milliseconds because I don't have to spend any time on finding the header bar.

Which makes it a great addition to title bar dragging but not a replacement.

Depends on the user to be honest. I quite dislike title bars (Especially if fairly bulky.) and so I remove em. I know they're necessary for people who aren't as apt with computers. But to me their main purpose has always seemed to be...identifying the programs i use every day and are fairly easily identified regardless.

Re: A new wave of Linux applications

#565
post #475

Earlier quoted context omitted.

I presume things like making screenshots, browsing files, looking up contacts, maintaining a calendar, reading and sending emails, calculating some quick numbers, making backups and so on. Stuff that, regardless of your niche, is needed. Whether you are a programmer or a plumber, you'll be doing many of these tasks on a daily basis.

Oh OK. Nit picking, but more like "core functions" then right? Put two or more together and it's a workflow.

Correct.

Core workflows would then be composed of core functions. E.g. "look up a contact to schedule a meeting" would be a core workflow, composed of core functions addressbook + calendar + email.

Re: A new wave of Linux applications

#566
post #402

Earlier quoted context omitted.

> Some Linux distro provides really good visual, but it only applies to its built–in programs. If you'd like to switch to the external programs, the system visual might be fragmented. I've noticed that this has improved considerably when using KDE; on both Slackware and openSUSE, KDE and non-KDE applications both seem to look and work equivalently great. There are of course some applications I use that don't match th…

Agreed, KDE is great. I like Kubuntu and KDE Neon. A little bit frustrated when I have to use a Gtk application; it's sometimes not working well in a KDE environment.

I tried kubuntu but it felt a bit wonky with some broken stuff, etc KDE neon i never tried but looking into it heard it doesn't have a lot of users behind it and it's mostly a bleeding edge testing ground.

My best experience so far has been manjaro KDE. The defaults seem fine and work. Pacman is so nice. The AUR, snaps, flatpaks, appimages... Tick some checkboxes and they're all there. I don't feel troubled trying to find software anymore. My GTK and QT apps look fairly consistent by picking matching themes for both.

I love it so far.

Re: A new wave of Linux applications

#567

Earlier quoted context omitted.

It is called the Meta Object Compiler (moc). You can read more about it here: https://doc.qt.io/qt-6/why-moc.html It parses your C++ headers to generate helpful metadata used for runtime reflection and slot-and-signals. All the generated code is C++. The latest versions of CMake support moc out of the box, so developers hardly notice the moc step.

So Qt doesn't work without moc, right?

No, it is possible to hand code everything that moc generates.

Re: A new wave of Linux applications

#568
post #461

Earlier quoted context omitted.

> If the thin widget is directly against the edge of the viewport, maybe. It is. Visually there's space between the scroll handle and the window edge, but if you actually point the cursor in that space it'll highlight the handle.

This feels pretty weird on macOS in a way I never realized, because I thought you were wrong but you're actually right -- you can slam the cursor right against the right edge of the screen and the scroll handle lights up and you can click and drag it if you start an up/down mouse motion -- but the cursor changes to the left-right resize one and if you start by moving left/right it resizes the window instead and the s…

That may work on MacOS.

It ... doesn't work for any Linux desktop, most especially those using Focus Follows Mouse (certainly for strict, often for lazy) policy.

Though that's useful to know.

Re: A new wave of Linux applications

#569
post #162

Earlier quoted context omitted.

This just doubles the UI development effort.

You don't really get around that with convergent applications either. That is, unless your idea of convergence is "lowest common denominator for everyone".

(it usually is)

Re: A new wave of Linux applications

#570

Earlier quoted context omitted.

It is called the Meta Object Compiler (moc). You can read more about it here: https://doc.qt.io/qt-6/why-moc.html It parses your C++ headers to generate helpful metadata used for runtime reflection and slot-and-signals. All the generated code is C++. The latest versions of CMake support moc out of the box, so developers hardly notice the moc step.

So Qt doesn't work without moc, right?

It used to be much more involved in the past. Of course you could hand write the code, but as it was originally I believe a preprocessor was the only way to sensibly write signal support, something that AFAIK stopped being true around 2003 but by then moc was entrenched.
Post reply on HN