I did some more work on porting xiate to GTK 4.

Some things are just gone from GTK 4. Like, there is no abstraction
around XSetClassHint() anymore. You have to fall back to using raw XLib
functions, which comes with a bunch of ifdefs and runtime checks.

(The new way appears to be setting an "app ID" using g_set_prgname().
This isn't backwards compatible, because it is only *one* string, not
*two* as in XSetClassHint().)

Wayland has no concept of an "urgency hint" but there's [XDG
activation]. Sadly, that's not really the same thing as it talks about
transferring focus. In Sway, it has the same effect as X11's urgency
hint, but what do other compositors do? (Some others I tried don't even
support that protocol.)

[XDG activation]: https://wayland.app/protocols/xdg-activation-v1

Then ... even with `GSK_RENDERER=cairo`, startup times are considerably
slower with GTK 4 than with GTK 3. It's very noticeable.

And finally, one terminal window now needs about 175 MB of RAM with GTK
4. With GTK 3, it's about 40 MB. (I was already complaining about the
memory footprint of the GTK 3 version back in 2017, but eventually gave
up and accepted it.) What's more, a simple empty GTK 4 window already
weighs in at 160 MB. I'm not sure if I like this.

Staying on GTK 3 is not an option, because it does not support XDG
activation on Wayland. (And eventually, it will die.)

Now what? Does xiate have a future? Should I just use on the of the
other Wayland terminal emulators, like [foot], when I eventually switch
to Wayland?

[foot]: https://codeberg.org/dnkl/foot