Next OmniWeb to be based on Safari Engine?
An anonymous reader writes "A MacFixIt article includes a quote from the Omni Group's CEO Ken Case: 'The wonderful news for OmniWeb is that Apple has based it on a fast, compatible (and small!) rendering engine which is tuned for Mac OS X, and which they are making available to the entire Mac OS X development community! [...] This means that we may be able to reach our compatibility and speed goals for OmniWeb much more quickly than when we were working alone, and then return our focus to doing what we do best: providing a rich browsing experience. Thank you, Apple!'"
Ok so Omniweb is going to make a browser based off of Apple and Open Source work which is cool (like chimera based off of mozilla), would windows developers build better and different browsers based off of Explorer if Microsoft were to open its source and if so how would that hurt MS, I mean chimera to me actually enhances Mozilla (love them both). Thanks for any comments.
The one response you'd never expect from a commercial company that was just (superficially) trumped by a platform vendor: Gratitude. Kudos to Mr. Case for recognizing the long term potential and not griping about 'being cut off at the knees' or other shortsighted objections.
An object at rest cannot be stopped!
Nearly everything you said is wrong.
1. Yes, Safari is free. No, it is not open source. WebCore (which is KHTML plus some other stuff) and JavaScriptCore (which is KJS, more or less) are open source, and you can download them from here. WebCore is basically a software component, not an application.
2. OmniGroup is excited because Apple has given the OS X developer community a solid, fast, and very (though not yet perfectly) compliant HTML component. This will allow OmniGroup to write OmniWeb 5 (or whatever) around WebCore and JavaScriptCore-- which takes care of turning HTML into stuff on the screen and handling the JavaScript runtime and whatnot-- so they can spend all of their time and effort on the features. This is basically the story of Mozilla, Chimera, and Phoenix, and others. One rendering component, lots of apps built around it to suit different needs.
3. OmniWeb has some cool features that frankly don't belong in Safari: built-in regular-expression URL filtering, for just one example. Some kind of MDI ("tabbed") interface could possibly be another.
4. OmniWeb has never "force fed you banner ads." It's just a browser. You can use it for free, but OmniGroup prefers that you pay for it. No big deal.
Are we a little more clear now, at least?
I write in my journal
So will OmniWeb's developers begin working with Safari code now, or wait until Apple refines it? Safari is still very much a beta browser and its compatibility, one of the features Omni seems to value, needs a lot of work. As mentioned in the article, some sites crash it outright.
I would think Omni would wait until a more stable (non-beta) release is produced before changing its own browser's direction.
Also, what engine is OmniWeb based on now? I used to use it, and it kept up with Explorer moderately well. Safari and Chimera would blow it away, of course.
Twelve fingers or one, its how you play. ~Gattaca (Vincent)
mainly because I like the way its rendering engine looks. Seems to me Omni is throwing away their main competitive advantage by using Safari's.
I'm using Safari right now, and the only thing I don't love about it is that the text doesn't look quite as perfectly polished as Omni's.
I'll miss OmniWeb's nicer looking text if that's really the direction they'll take.
Safari is my favourite user interface right away. Even though I understand the old-style ones, I particularly like their slick error messages. They're written in high-quality, clear language that even a novice is going to have no trouble understanding. For a choice example, try refreshing a page with a submitted form on Safari, and then try doing it with any other browser.
D
can anyone direct me to an example of how WebCore is implemented?
I am trying to make a simple WWWView (its a subclass of NSView) in an Objective-C/Cocoa application I am building, and it seems that WebCore is just what I need to use.
The header files havent helped me much, as im not sure quite what the methods are to make the View a WebCore view.
I believe the correct class to use from the WebCoreFramework is WebCoreBridge, but when i do [[WebCoreBridge alloc] init] and assign the result to a WebCoreBridge *, the app dies with SIGTRAP.
Basically, I'm looking for help in getting a WebCore view in the GUI of an application i'm writing.
Right now Im sort of stuck.
if anyone knows how to implement the WebCore, please reply or email me (madcoder@madcoder.net)
...has always been that they're behind the curve on standards. I don't blame them, they have a small team and do a good job with that they can render; it just doensn't render the most modern stuff.
Their application is second-to-none, but I use Mozilla because I need to render the latest stuff (oh, and tabs). I would send in my registration fee if their renderer was current.
This is a great move for them. If the guys who wrote their renderer are reading - you did a great job, it's just that customers ask the impossible of a small team.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
The implication of this quote is that the underlying renderer Omniweb 5.0 was supposed to have wasn't as far along as many thought. Presumably they are keeping their high level interface stuff. But to completely switch rendering engines at this stage is a fairly significant change.
"OmniGroup is excited because Apple has given the OS X developer community a solid, fast, and very (though not yet perfectly) compliant HTML component."
Well, uh, KHTML is already under the GPL. Shouldn't these guys be thanking the KDE Project for writing the code in the first place?
In fact, since Apple based WebCore/JavaScriptCore off GPL code, they must make the code public. I'm not so sure that they would have released the code back to the community if it was under a BSD-style license.
Don't get me wrong - I think it's great when corporations enhance existing FOSS projects. I just think that the gratitude is misplaced in this instance.
Well, uh, KHTML is already under the GPL. Shouldn't these guys be thanking the KDE Project for writing the code in the first place?
Sure, appreciation all around. But from OmniGroup's perspective, what Apple did was more significant. (Not more important, not better, just literally more significant.) Apple removed the dependency on Qt and created an Objective C API for KHTML. That was a ton of work, not to be underestimated. Without it, KHTML wouldn't have been of any use to any Mac developer.
In fact, since Apple based WebCore/JavaScriptCore off GPL code...
Let's be precise. KHTML and KJS (and by extension WebCore and JavaScriptCore) are LGPL, not GPL. This is an important distinction. If either of those components had been GPL only, Apple would not have been able to use them.
I write in my journal
I'm surprised Apple didn't hire the omniweb people, they may not be the fastest, but they can do some darn fine cocoa web browsing. I understand that back in NeXT, steve used and liked omniweb.
karma: ouch!
The really cool thing about this is the potential that Apple would make the WebKit framework (currently inside Safari.app) a public framework. That framework includes cocoa classes that look like they can be embedded anywhere in a cocoa app (e.g., WebView exists and is a subclass of NSView that looks like it supports subviews and a data source model for getting its HTML). The API looks like it has been designed with great care and is cleanly concept-compatible with the rest of Cocoa. Very nice! (I know this from using the class-dump utility that dumps out Objc headers from binary Objc code).
This would be a big improvement over the current HTML rendering capabilities in cocoa. I can think of about 10 apps I would write with that right now!
(For now, I'm sticking with Chimera.)
A lot of posters here think WebCore and JavaScriptCore are about drawing to the screen. They aren't. There is another framework called WebKit that contains the Cocoa classes that bridge into the Core frameworks.
This stuff from Omni seems pretty silly to me. If these web frameworks are made public (they are private, without header files and inside the Safari app right now), then all they need to do for OmniWeb 5 is to drop a WebView into their existing UI and toss their rendering engine. That should wipe out about 90% of their code. Why bother at that point?
I'm a little biased against OmniWeb. As an old-time NeXT developer, one of my happiest moments was the point when I became able to use a NeXT-derived system and NOT browse with OmniWeb! Their UI design is great and broke some new ground in terms of bookmark management and search (Sherlock was a complete rip-off of their search panel that is no longer part of the app. Kind of ironic how Sherlock has been a clone of another app in two generations now!). Unfortunately, their HTML rendering was never very satisfying (4 was better though).
If Apple releases a new version of Safari, with an improved WebCore and JavaScriptCore, will a future OmniWeb 5 (based on WC/JSC) inherit this improvement? Or will OmniWeb need to release there own copy of the new WC/JSC?
Microsoft is about to unveil Internet Explorer 7 for Mac OS X, which will be based on the Apple-enhanced KHTML engine.
Pedro
----
The Insomniac Coder
Depends.
/System/Library/Frameworks, you'll find stuff like AppKit.framework, which every application on your computer (Cocoa, anyway) links to at run time. If Apple puts WebCore and JavaScriptCore (and maybe WebKit) in the operating system-- in other words, puts them in /System/Library/Frameworks in a future version of OS X-- then programs like OmniWeb will be able to link to them at run time. Future improvements to those frameworks will apply to those programs automatically.
;-)
WebCore.framework and JavaScriptCore.framework work like DSO's or DLL's, if that means anything to you. The difference is that a framework can be bundled inside an application or available externally. If you look in
But as of right now, WebCore and the others aren't part of the OS. They're bundled right inside Safari. If Apple decides to leave them out of the OS, then OmniGroup will still be able to use them, but they'll have to distribute the frameworks inside of the OmniWeb package. In that case, updates to the frameworks would have to go from Apple to OmniGroup to the user.
I imagine Apple is going to make WebCore et al. part of the operating system real soon. It's just too darned useful; even apps like Project Builder need to be able to parse HTML to display documentation and whatnot. The million-dollar question is whether they're going to do the same thing with WebKit. If so, expect to see about a hundred special-purpose Cocoa web browsers for OS X in the first week after release. It'll be so easy to write your own web browser, what with PB and IB and all, that you'll hardly be able to avoid it!
I write in my journal
We (old NeXT users) didn't really have a choice. Omniweb was pretty much it. And Mosaic under X11 on NeXTStep (not pretty)....
The code is LGPL, not GPL. Plus, they are thanking the KDE project:
(fwd) Greetings from the Safari team at Apple Computer
Fwd: Our changes to KHTML and KJS
After I got over how fast Safari was, I relized that the browser itself is nothing. It probably took longer to write the bookmark importing scripts than anything else. I expect frequent updates.
"A language that doesn't affect the way you think about programming, is not worth knowing" - Alan Perlis
Gratitude is never misplaced,
said the wise man.
I don't have any high minded philosophical ideals when i praise MDI browsing. I just don't see a need to have multiple browsing windows open. It clutters up the taskbar, mostly, makes reading multiple sites simultaneously harder and I find it, personally, to be cleaner simply.
Consider this, to use the MDI mozilla browser with two pages, when I want to change pages, I only have to click one button on the top. When I use an SDI UI I have to click on some other browser window, which reorders the entire stack of windows i allready have out, and have to relocate my mouse on the new window. PLUS if I want to find the old window, I have to find it burried next to a myriad of other apps. MDI is the future. OC i dunno how this translates to mac, i'm using windows
Photos.
He is being silly, Mac users make up closer to %45 of the consumer market.
IF you were meant his number was too high-- well, its worth noting that it is a far more supported number than the claim that they only make up %5 of the market-- an out right lie, and fabrication that has no basis in reality.
The Nazis found that if you repeat the same lie often enough, people start believing it-- so we have the same thing here-- Windows is "%95 of the market", taxes are not theft, social security has a "trust fund", the government helps the poor (poverty is government's greatest triumph) etc.
And all these statements sound absurd to people who believe what they are told to believe-- even when these beliefs contradict objective reality. And they do.
Its amazing how well that works, though.
Yeah, and you guys panned the ipod too: http://apple.slashdot.org/article.pl?sid=01/10/23
I'm not so sure that they would have released the code back to the community if it was under a BSD-style license.
Well, that's a silly concern since they realeased their commercial operating system even though it wasn't under the BSD license- it was owned by them free and clear.
How soon people forget that Apple is the first, and so far, only company to open source its commercial operating system.
And not only does it help scores of open source projects around the world (as well as make use of them- after all that is the POINT of open source) but it does work to make it so that people who want to can run completely Open software on their platform more easily without paying apple any money,-- by supporting X11, and other stuff they don't ahve to that goes against their bread and butter OS sales.
Gee, I wonder why. They sure are GREEDY those bastards!
And yet all you Open source self-proclaimed advocates still hate them. could it be that you really don't care bout open source so much as you love linux? (Not bashing you, Phexro, just the broader group that irrationally hates apple becuase it "doesnt support open source.")
Yeah, and you guys panned the ipod too: http://apple.slashdot.org/article.pl?sid=01/10/23
He was saying that laptops were 30% of the share of mac sales. Not that macs were 30% of computer industry sales.
Those numbers are totally legit, you just didn't read the words around them.
"Let him go, Ralph. He knows what he's doing." --Otto Mann (simpsons)
Apple is giving away something they haven't started themselves. The Safari engine is a forked KHTML engine from the KDE project. Read Apple's e-mail about this.
I'm very pleased to see that the KHTML rendering engine is being used on Apple and even better, that Apple is behaving as a good citizen and is publishing their modifications of the KHTML GPL-ed code. The modifications seem to be pretty good. Here's to hoping that KDE and Apple will start working on a common codebase for the engine.
DNA is the ultimate spaghetti code.
I doubt this is intentional, but if you go under preferences for OmniWeb, under compatability, there is a nice little spot where you can adjust what browser it tells the website it is.
I have been able to conduct online banking through that means without any problems whatsoever.
Integrate Keynote and LaTeX
OmniWeb actually has a Preferences setting that automatically sends new windows behind the current one. Very nice, indeed. :)
Couldn't agree with you more.
Tabs are overrated.
He is being silly, Mac users make up closer to %45 of the consumer market.
Do you have a reference for this?
Best,
-jimbo
XML Tools for Mac OS X
I Am Not A Cocoa Developer, but don't cocoa apps check the systemwide frameworks for newer versions before linking into their bundled versions? At least, that was the idea of it (or so I heard). So if Apple released an update that put WebCore and the rest into the system frameworks, OmniWeb with included framework bundles would automatically start using it and then they can just stop bundling it in newer versions. Right? Maybe? No? Or perhaps if I were to move these frameworks into my system frameworks folder manually...?
No, I don't believe so. The point of bundling a framework with your application is to prevent a change in a system framework from breaking your app. In Windows-land this is sometimes called "DLL hell." So your app will always use a bundled framework, if available.
I write in my journal