I am the only person to try it, some help would be welcome, and,
My insistence on using Haiku native APIs as explained above. It would possibly be easier to use the shared âUNIXâ code instead, at least as a first step to get something running quickly.
At the very least, it would be nice if the work on a native Browser UI could be shared between projects, for example by making the web engine in WebPositive modular so that a user can select the rendering engine for each tab.
I know that in an open source project, people will always work on what they are personally interested in, but if we could share the browser shell GUI parts like managing tabs, caches bookmarks, cookies, ad blocking and so on, then at least all the effort that goes into improving the browser itself would not be duplicated.
As a side effect, this could potentially be an extremely useful feature for web developers.
I get the idea but itâs not that easy.
Thereâs no standardized API that all web engines use to communicate with the browser GUI.
WebKit and Serenitys LibWeb are totally different,beginning with the fact that LibWeb handles all the rendering with its own libraries while WebKit heavily relies on native system libraries.
There are differences between WebKit and LibWeb which things are handled by the browser and which by the rendering engine.
Creating one browser that supports both engines will result in duplicated work in a single project.
I think some parts of the WebPositive code can possibly be reused in a native LibWeb-based browser,but definitely not those parts that interact with WebKit.
I donât think anyone has any problems with it other than its a large project being shoehorned into a small project with not enough people working on it⌠whereas ladybird is a small project for a small project and might even get more attention than webkit since it has a different kind of user/developer base anyway.
Anyway the best browser wins⌠sometimes code gets superseded with something more appropriate, you shouldnât feel the need to take it personally. Neither has the point come where ladybird is better than webkit either⌠it just shows promise.
Also the last few years have proven code that runs is better than an idealized code that doesnât exist⌠so maybe table some wants to get things working like you mentioned with getting webkit2 working with less native aspects (those can always be worked on later).
Maybe we should move that discussion there and leave this topic for actual ladybird progress. Otherwise people will (rightfully) compla?n that I derail any web browser topic to be about webkit
I personally think WebPositive has come a long way. Until recently I had not downloaded or used Haiku in about 1.5 years. Since before the R4 release. Before it would crash on me constantly and was very, very slow⌠bad slowâŚ
I was amazed at how much faster is is now. Iâve been using it for days and I think it may have crashed on me once. I can visit more websites then I could before. The progress has been amazing. The only two sites Iâve tried that I canât use are Youtube, the site works fine just complains that my browser canât play the vides. That and Facebook, for me WebPositive just doesnât like Facebook. But, this is leaps and bounds beyond what I experienced before. I wish there was more time for the devs to work on it. But there are only so many devs and only so many hours in a day/week etc⌠I feel they are consintrating on getting the OS itself finished. Anyway⌠the more options for web surfing the better.
You mean, a browser without tabs, bookmark bars, and search field? Or just moving the navigation buttons to the right?
At least the latter would be easily done.
I have experimented with using Stack and Tile for the tabs (in NetSurf) and found it not very convenient when you use more than maybe 4 tabs. It is also not possible to use the page favicon to quickly identify each window.
So, I think it is a good idea to do it in the future, but the Stack and Tile and Haiku windowing system will need these improvements: better handling for a very large number of stacked windows, and icons for each window (shown in deskbar and/or in the window tab).
That being said, if someone disagrees with that enough to submit a patch to WebPositive, Iâm fine with it.
Personally I would prefer a treeview of pages on the side of the browser, where I can fold/unfold things, acting like a sort of combined tabs/bookmarks system.
I agree, Iâve started working on a patch. I think the top tabs in Haiku work fine for static/ previously known content like appearence preferences, but badly in the browser with dynamic tabs.
The tabs used in WebPositive have some limitations, indeed. However, I find it a convenient way of managing the web pages in a browser and, personally, I would find it difficult to get used to another system.
Furthermore, a side bar would steal a lot of space from the window and even if it can be hidden it would add a few more extra steps that I suspect would render the UI less pleasant.
Genio has a concept of moveable tabs, the original tab system was taken from WebPositive way back in Ideam. I think that with some more adjustments it could handle favicons and maybe be brought to WebPositive.
EDIT: hereâs a short video to show you the behaviour.
Maybe we could at least agree on a system-wide standard folder for bookmarks as BeFS files then, possibly exposed through find_directory? Just like Android and iOS have a set of contacts that all apps share?
If we are stuck with a multitude of browsers in parallel in the foreseeable future, all of which have slightly different strengths and shortcomings, that might make life at least a bit more convenient and it would also open up opportunities for syncing across devices at some point.
Yes, without tabs please because any Haiku application already support tabs. I am tired with MS-DOS like applications that are expected to run fullscreen and reinvent all GUI instead of using operating system native functionality.
It is already mostly available with Deskbar in expanded mode.
Iâve already thought about using the same bookmarks for my native Ladybird port (but not the Qt one, that shouldnât contain so much platform-dependent stuff).
I also think that itâs better to have the same bookmarks everywhere.
But letâs see how it progresses before planning too much.
First I need to get my patches upstreamed, then I can start working on a browser on top of it.
FWIW I do have a use for both in-app tabs in WebPositive and S&T. For example, three Web+ windows grouped together:
One window with development-related tabs (i.e. GitHub, GitLab, Codeberg, etc.)
One window with communication-related tabs (i.e. Discord, Tildes, /kbin, etc.)
One window for everything else
This effectively creates a tab grouping system unique to Haiku. Also doing the same with Terminal too, usually with one window for development and another for sysadmin/everything else.
The biggest issue with this workflow is not being able to detach/re-attach and reorder tabs. Being able to do both would make it very adaptable and complete.
Yeah stack and tile is nice but not quite enough for heavy use like in a Browser (I know people with 100+ tabs and many groups of tabs open).
So Tab grouping/stacking (as in each top level tab would actually be a list of tabs clicking it returns to the last open tab in that group + opens a selection drop down that goes away when focus is lost). Something like that.
Tab searching, click on a tab and type to match to the header⌠type enter to select the current autocompleted tab etc⌠or arrow keys clicking to narrow down.
Also, what Web+ does when the network doesnât resolve might need improvement, currently it just kind of does nothing which isnât ideal UI wise⌠firefox/chrome for instance after a bit notify the user that thereis a network issue. Anyway thatâs just my throughts after using it a bit the other day I havenât been on haiku daily in awhile.