discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: a web-browser UI concept


From: Riccardo
Subject: Re: a web-browser UI concept
Date: Thu, 1 Mar 2007 23:42:50 +0100

Hi,

On Thursday, March 1, 2007, at 09:02 PM, Stefan Bidigaray wrote:

Seeing as no one has said it, there's also Amaya!  It's the W3C's, which means it's only dependency is libwww.  It was recently ported to Cocoa (according to their website) but I don't know where to find that code.

back then, when I was able to gather more time and attention with other developers, I burned countless hours in checking every possible browser alternative on unix. My utter hate for Gtk2 , its dependency maze, its unportability convulse my stomach and so every alternative to mozilla/seamonkey/firefox was long since seeked.

I'm in a hurry so I'll write as a flow.


- If you seek a usable browser by today standards which handles all the crap there are only 3 alternatives. Gecko-based (Camino, Firefox, Seamonkey, etc), Opera, KHTML/Webkit (Konqueror, Safari).

now, apparenlty embedding Gecko is a hell (see Camino) also it is pretty a monster. I think the Apple alternative is bad, the performances of Safari are not that nice, its memory management either. Also the concept is a kudge, I hate wrappers of wrappers. Obj-C++ is something invented by the antichrist. I thought that but well, now Obj-C 2.0 is "the Beast" now.

Opera, well. We know.

the direct opposite is brewing your own engine. It is something perfectly possible, but it takes time and resources. iCab on Mac did it, 2 people for many months. It is not so maintained anymore, but it was long the only decent browser which did run even on 68k processors ! and had acceptable javascript support too. It is carbon though, so don't. OmniWeb was also an in-house solution.

The compromise alternative would be to gather an old existing browser, mock it up to usablilty and port it to obj-c/gnustep. This means a lot of work again, but of course a place to start. The problem? There aren't really such many browsers and "gnustepifying" is not that easy. Maybe we won't make safari, but possibly a good component useful for embedding html in places and a lightweight browser. - Mosaic. Really old. Fast. Runs everywhere. Motif. C code. The license is crap and every inquiry at NCSA was like talking into void. I have worked on it, cleaned it up a bit, installed condifigure (still in the realms of Motif). I had it running on a 12Mhz r3000 Personal Iris SGI from 1988 with 12Mb of ram. not the fastest thing, but after years I'm still damn happy. Originally based on libwww, which got fagocitated. - there is an embeddable HTML component for mosaic which should support HTML 3.2. GPL/LGPL. Didn't really take a look, could prove interesting. C. - Dillo. Minimal engine. fast. portable. Gtk 1.2 and C++ (means a lot of work). Engine optimized for compliancy and so doesn't accept poorly written pages well, so things look crappy often. Project is on freeze. - graphic links. Fast, portable, C / X11 only, with even limited javascript. Decent. Maybe one of the best bets! Some work was started with someone I don't remember... then it was left there. - Arena / Amaya. Strange code, the latter is C++. Strange rendering, since it is optimized for standards and strange stuff. Might be a start, but a lot of work.

now, discussing with the person who attempted to originally port webkit, the perhaps best solution came to our mind. Unfortunately he left us for lack of time. The project got even a code name. Drakar (engine) Vespucci (browser). (*)

The idea would be to brew our own, but leveraging on existing tools (DOM trees, XML renderes, parsers, etc... he was much more expert than me and I don't remember the details but maybe I can dig them up). THis would give us a true obj-c solution with possibly some C wrappers. THis would be a portable engine to macosx too. Nice thing. Also by using these modules we would define clear interfaces and in the future rewriting a module could be easy. Also, suppose you need to display X-HTML only, you would need a subset only since it would be valid XML, thus you could put together a pretty light engine, suitable for example for documentation display.

regards,
  Riccardo

(*) I just noticed I accidentally deleted this old thread in my inbox





reply via email to

[Prev in Thread] Current Thread [Next in Thread]