Hi all!
Yeah, i know… “Yet another web browser thread”.
Few weeks ago i installed Haiku to my old Acer Aspire One -mini laptop.
Well, it isn’t very fast machine, so first thing i noticed that web browsing was very slow and unstable. I tried all browsers that were available in repos and any of those didn’t were really any better.
I am not really a coder/developer, i know a bit of linux bash scripting and a little bit of python too, so i asked “almost legendary” chatgpt straight forward question; “how hard is to make simple and lightweight web browser to Haiku”, well it responded “Glad you asked, it really isn’t that hard, let’s try following with python…”
It suggested to start with PyQt5 and PyQtWebEngine5, so i installed pyqt5_python310 and pyqtwebengine5_python310. I mentioned features that i wanted to it and it suggested gradually more and more python code for me… well, it wasn’t really that straight forward, but it helped me a lot. In reality it contained a lot of head banging and trying different things, but i finally got it working…
After a few days i had pretty good working simple web-browser. It has following basic features…
- basic navigation buttons
- floating/movable navigation toolbar
- tabbed browsing
- video/sound playback
- bookmarks, with add and removal option
- simple file download manager with progress bar and cancel possibility
I am pretty happy with it.
It contains only 312 lines of python code. It feels snappier in browsing and it seems to play youtube videos better. Not sure if it is placebo feeling, but anyway…
It doesn’t have adblocking, because i use hblock in Haiku.
Chatgpt also had some ideas how to block youtube ads also, so i am trying to get that work too…
I tested browser with html5test.co (+ many sites) and I tested it with both pyqt5, pyqt6 versions and latest firefox for comparison…
Pyqt6 feels a lot better and faster, I wish we have it someday in Haiku… I noticed that this Discourse-forum doesn’t work with PyQt5…
All I have is this python script at the moment, so no any installable file.
To be honest, I have no idea how to even make it or is it possible
I tested python code in Windows 10, Lubuntu 24.04 and Haiku rev57774 and it works same in every operating system. For some reason in Haiku there is a bit more instability when multiple cpu cores are involved, but with single core it seems better…
Maybe I should put this in Github someday, if anyone is interested…
Thanks!