An update on the Ladybird GTK 4 project 😄

We now have an icon  made by @AtkinsSJ

And we now ship a proper .desktop file and everything else required for Ladybird to be recognized as a legitimate application by your DE. You can use Ladybird in the system's "Open With" dialog, and you can even set it up as the default system web browser :)

And even if you don't want to switch from your other browser just yet, you can already set Ladybird as the default app for Markdown and Gemini 

Next, we now have a compact layout, for small window widths (super nice for mobile devices!)

In the compact layout, most of the controls move from the header bar to a new action bar at the bottom, and the tab bar hides (use the tab overview instead).

This is not a separate "mobile" build of Ladybird, it's the very same build! The layout adapts dynamically based on window size. This is of course using the new AdwBreakpoint API of libadwaita.

But that's not at all! We've done some work on the location entry (aka the most prominent design element of the whole Ladybird experience 😄) It now highlights the base domain in the URL, so you can see the important part at a glance.

This is using the "eTLD + 1" scheme (as @cxbyte calls it): it looks for the public suffix and highlights the suffix and one domain level before it. For example on these screenshots, it knows that github.io is a public suffix, but serenityos.org is not.

Moreover, as you might have noticed, the entry now displays icons at both ends!

The one at the end will be hooked up to bookmarks, but they're not implemented yet.

The one at the start though is fully functional: it displays a lock icon for https and gemini, an unlocked/warning icon for plaintext http, a folder icon for file:// URLs, and a few more. It's pretty neat!

(The icons, of course, are getting recolored to match the dark/light theme. GTK does that yeah 🙂)

And there's one more thing 

Unlike SerenityOS proper, we want Ladybird GTK 4 to be localized into languages other than US English. So we hooked up gettext and got to work 😄

I went and wrote a translation into Russian to set an example, @tarob0ba contributed an Esperanto translation, @xexxa is working on a Swedish translation, and someone even mentioned a Dutch one!

Translating is actually quite easy (if time consuming), you don't even have to know C++ or GTK. So if you'd like to work on translating Ladybird into your language, you're very welcome to!