Elektrine lite

← Feed

@jeang3nie@social.linux.pizza

Post #390688

2026-02-24 16:55 UTC

I've renamed my web browser project from SWB to Sunstone. The sunstone was a translucent mineral prized by Viking navigators because it had a natural property that polarized light, making it possible to see through the haze and find the sun on a hazy day - quite common in the North Atlantic. I liked the connection to a primitive navigation tool. Some code progress: - Downloads are displayed in a grid form inside a popup menu with a progress bar - I've added a (non-functional) bookmark editor button next to the address bar. Bookmarks should be coming fairly soon. - If the tab bar or the command bar are hidden, those settings now persist across sessions. - When the tab bar is hidden, the tab overview button is shown and the new tab button is hidden. You can still create a new tab from the button in the overview or from 'Ctrl/t'. Keeps the interface cleaner. #WebBrowser #sunstone #programming #Vala #Gtk https://codeberg.org/jeang3nie/sunstone

Replies (2)

  • Had some fun little bugs to hunt down while working on #Sunstone last night that show me just how out of practice I am. The DownloadManager widget has a grid-based layout and maintains a list of DownloadRow objects using an ArrayList courtesy of libgee. When the "Clear" button is pressed, the idea was for it to go through the list and remove any DownloadRow objects that are finished, failed, or canceled. It kept crashing. Here's the thing I don't always like about "nice" programming interfaces that give you useful data structures like dynamically sized arrays. The moment you remove an item from an ArrayList, libgee moves all of the other following items back by one. The iterator is now invalidated. The code compiles of course, but it crashes because the internal array is now smaller and it tries to read past the end. I should have understood the problem a lot earlier. I'm rusty because I'm spending so much time on schoolwork, ironically for a computer science degree, that I hardly spend any time programming anymore.

    Open ##390818

  • @matzipan@hachyderm.io 2026-02-24 16:57

    @jeang3nie link returns 404. Is it private?

    Open ##1506099