Sergey Bugaev

115 Followers
8 Following
103 Posts
And some immediate updates: the affirmative button is now using "suggested appearance" (blue), and is on the right side of the dialog (per the GNOME HIG) 🙂️

Hooked up alert(), confirm() & prompt() to AdwMessageDialog 

(and it totally works on very small window sizes)

The interactive JS console!

Thanks to Tim's awesome work, we can reuse most of the ConsoleClient logic. The downside is that the console output is displayed in a WebView (which means spawning another WebContent process, relatively slow resizes, ...), not as a native GTK widget. We'll see if this is something that could be improved upon in the future.

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!

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 🙂)

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.

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.

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 

And there's one more thing ™️ 

I made an experimental backport of Ladybird GTK 4 to build and work with older versions of GTK, libadwaita, and Blueprint. This comes at a cost of some visual niceties: if you look closer, you'll notice the additional separator line between the header and tab bars, and other small differences. But other than that, this is Ladybird GTK 4, for real, fully working, and massively easier to build.

Added hovered link URL preview, and it even tries to evade the pointer, so if you're hovering a link in the bottom left corner, it'll jump into the right corner. And its appearance/disappearance it animated with nice smooth GTK CSS animations, and it of course follows dark mode.