JTK wrote:
> > Skinnability was not the "design goal".
> Sure it was.
Nope.
> It certainly didn't happen accidentally.
In a way it was indeed a happy accident.
> A conscious decision was made to implement the UI, which on virtually all
> other apps is native, by interpreting ASCII (or UTF-8 or whatever it's
> called these days) text. Right?
No. Textual AND binary data make up the UI. To make porting the app easier,
the front end uses the Gecko engine, just like the actual display window.
Native front ends would have tripled the workload. As a side effect of using
this approach, it was a trivial addition to make it easy to swap out the
graphical data to make the UI skinnable. Just like WinAmp, in the early
versions, was found to store the UI in simple bitmaps in the executable, and
thus editable, it's the same type of accidental feature.
> > The design goal was "a
> > cross-platform user interface" - in other words, the code could be
> > written once and used on multiple platforms.
> That was another one. Neither depends on the other.
While your statement can be true, it is not in this application.
> > Skinnability came FOR FREE
> > because of this.
> Twice the startup time is "for free"? Three years spent reinventing
> every GUI wheel in sight is "for free"?
No, the ability to change the GFX using in the UI came free by the use of a
custom UI structure.
> Complete and utter irrelevance is "for free"?
I didn't spend a dime finding you, so yes, this also came free.
> > Get over the skinnability already.
> Oh lordy, I wish I could!
So do we.
> My heart aches when I see 'what they've done' to Mozilla, the last best
> hope for a decent newsreader to replace my Nav 4.76 one!
4.77 is out. That'll replace your 4.76 version, and thus by extension,
you'll be quiet.
> > The chain of decision did not go "How can we make
> > a browser that's skinnable - I know, let's use XML for our user
> > interface". It went "Ooh - since we're using XML for our user
> > interface, we can make it skinnable!".
> I don't believe either of those is right, but I'll defer to others more
> intimately involved with the process than I.
You may not believe it, but that's how it happened.
> It is my understanding that:
> 1. Skinnability was always a top priority.
> 2. The decision to interpret the GUI was made long after that design
> decision was made.
Nope. Your step 2 is actually step 1, and your step one is incorrect.
> Are you privy to knowledge that this isn't the case?
Everyone is. It's the Way things Are.
> So let me get this straight: You're saying it's simply a matter of
> degree? That a file save dialog is so 'semantically' similar across
> platforms that wrapping the native one makes sense, but that a *text
> box* is so wildly different that it doesn't? Or a ***scroll bar***?!?!
> Come on.
You are correct. It's relatively easy to pass an instruction to the OS to
save a file on a platform by platform basis, but the use of native OS widget
calls is wildly different, thus making it easier to do this within the app.
This is simple API knowledge.
> > But the re-invention isn't the point.
> Then why do so much of it?
It was necessary to be able to make the effort pay off on three platforms
(and potentially many many more, as the ports show) instead of one, Win32.
Netscape had limited resources to throw at this project.
> > If you can provide us with a
> > toolkit that provides a single API to the native common controls on
> > Windows, Unix (GTK, QT and Motif please) and Mac (Classic and OSX) as
> > well as Beos, QNX and Amiga (don't forget about MUI), THEN you can tell
> > the Mozilla builders to scrap XUL.
> No, I can tell them that regardless, and have done so.
True, but it will go ignored without a suitable suggested replacement.
> Oh, and does the Amiga even have a file open common dialog?
Since the primary platforms targeted by Mozilla were *nix, Win32, and Mac,
the existence or nonexistence of such a call on Amiga was never a concern.
> "If you can't answer a man's arguments, all is not lost; you can still
> call him vile names." - Elbert Green Hubbard
Answering arguments without names is irrelevant if your response is also
without fact or merit.
--
jesus X [ Booze-fueled paragon of pointless cruelty and wanton sadism. ]
email [ jesusx @ who.net ]
web [ http://burntelectrons.com ] [ Updated March 12, 2001 ]
tag [ The Universe: It's everywhere you want to be. ]
warning [ All your base are belong to us. ]