> Why is this advantageous over the current SDI scheme? What you describe
> a) has not really been seen on any platform before, and
> b) unnecessarily duplicates the OSs application-switching functions.
No, that's not true.The advantages should be obvious from the following (I'm
keeping in the realm of browsing here, but I could pick similar examples in
most other application areas):
I am sitting here using an (excellent) IE-extending browser called Web
Surface. Instead of showing one page (like IE) it provides the ability to
load numerous pages into one instance of the application. Its main UI is
essentially a tabbed dialog which always fills the app client area. You use
the tabs to move between the pages you have loaded, but only one is shown at
a time. This is a multiple document interface (small caps, ie not actual
"MDI" as defined by Microsoft) and its an excellent one for the purpose of
the app. Its also what I just described as being an alternative possibility
(nothing more) to actual "MDI" for Mozilla (I'm not saying that one or the
other is better).
Any page/tab can be marked as a "master" which causes any pages opened from
it (eg. by following a link) top open as a new page/tab. For example, if
you're viewing search engine output, just mark the tab as "master" and any
links followed will open as new browser instances, ie. tabs in the dialog.
As a shortcut, you can do the same thing by holding CTRL when clicking on
any link. At any time, you can save the current set of opened pages off as a
"Session", and load it again later in a single act, restoring all your
previous web pages. This is extremely useful. For example I have 9 major
on-line booksellers saved as a session called "Booksellers", which I open
when I'm going to buy a book (the alternative would be to save each as a
separate favourite, and load them individually).
I have been on both sides of the paradigm. Before I started using Web
Surface I used plain (SDI) IE and/or Netscape 4.7. When researching things
on the net, I'd regularly open up over a hundred web pages as I followed
links and information, leaving this many IE/NS application instances open
(from the UI perspective). Things quickly got unusable, and I'd have to work
my way through most of these instances before my desktop/taskbar got back
under control or I could switch my computer off. With Web Surface, this
problem goes away. Everything is within one app, and I can easily save and
restore my web browsing state (right now: all 152 URL's which I've had open
for several days as I research Mozilla) in 2 seconds. I'm even crash
protected - Web Surface keeps a working copy of the current "session" (ie.
all currently open web pages) on disk. If it (or rather IE!) crashes, it
will offer to re-load them next time I run it. This alone has saved me hours
of frustration on more occasions that I care to remember. SDI can't do this
(realistically) because each app "instance" is supposed to be associated
with only one document (web page).
I am not by any means saying that "this is so good that everyone would want
to use this method instead of SDI". Some folk like SDI nomatter what, and
that's fine by me. The key is that each user should be able to follow their
own preference, which is a foundation of what I suggested. That way, the
users benefit, but the browser product benefits most of all.
Why not try the Web Surface demo (http://www.toolpool.com/surface/) and see
if you become more convinced in practice (or rather less unconvinced).
Screenshots at http://www.toolpool.com/surface/screen.htm. Note that Im not
affiliated with them in any way - there are several other equivalents
available, eg. on Tucows.
> A.k.a: You would create an XPI (cross-platform install) file and have a
> one-click button on your webserver marked "Install" :-)
>..
> .. (et al)..
Yup, thats what I thought. As I originally said, the application switching
stuff is the main job (other than "mdi" - small caps are intentional -
which is below the application conceptually, not the other way round) as the
bits and pieces needed for everything else are already there. I did like
the idea of a single JAR file containing all the application stuff
(permanently) much like a chrome can be contained in a single JAR (not yet
sure how this fits with XPI just yet - looking at it now), but this was for
a particular scenario and I'm not religious about it.
> See some of the projects on http://www.mozdev.org for some of this in
> action.
I have done, but most of the really interesting ones (in this context) are
still in the early stages theoretical stages.
Do you know of any XPI demo that I can download and then try out, so that I
get a new application (however simple) along with Communicator/Composer/etc
after I've installed it?
Cheers,
Chris
"Gervase Markham" <[EMAIL PROTECTED]> wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> > client windows, new ones being opened (on top of the previous one) when
the
> > user holds the CTRL key when entering a URI or clicking a link.
>
> Why is this advantageous over the current SDI scheme? What you describe
> a) has not really been seen on any platform before, and
> b) unnecessarily duplicates the OSs application-switching functions.
>
> > > 5) is a function of how the application developer develops their
> > > application. You can write it to integrate with the user's
> >
> > I don't think that is true (please correct me otherwise - you obviously
know
> > much more than I at this stage). With what I described, I could go to
> > Mozilla installation and copy a single JAR file into some "applications"
> > subdirectory.
>
> A.k.a: You would create an XPI (cross-platform install) file and have a
> one-click button on your webserver marked "Install" :-)
>
> > This would contain the chrome, skin and application code (in
> > terms of some XPCOM servers) of the application. Just by doing this a
new
> > icon would appear on the Mozilla's bottom status bar (next to the
current
> > Nav/Communicator/Comper/etc).
>
> Yep, you could do this with XUL overlays.
>
> > If the user clicked this, whatever "app" was
> > currently running (eg. Navigator) would disappear (but remains there in
the
> > background) and the new one would appear. By "appear" I mean that its
client
> > window(s) appear where the browser window was, and
> > menus/toolbars/sidebars/etc loose any Navigator settings and gain those
of
> > the new app. If the user wants to go back to the previous app (eg. by
> > clicking the Navigator status-bar icon) then the new app is made
invisible
> > and tha Navigator UI is restored?
>
> As I said above, Mozilla doesn't currently support this UI paradigm. But
> there is nothing to stop it doing so.
>
> > If I was a teacher and I wanted my pupils to have browser functionality
but
> > nothing else, I'd just set my computers to delete
Mozilla\Applications\*.jar
> > (except for Navigator.jar) on bootup (of course the kids would have
> > Jabber.Jar on diskette!). And so on.
>
> A.k.a: You would install only the browser and disable XPInstall.
>
> > Are you saying Mozilla can do all of this now? I was betting that the
> > infrastructure was there (seperate applications, chromes, skins, XPIs,
XPCOM
> > typelibs/libs, etc) but some further generalising would have to be done.
>
> It can do all of this except for the "application switching model". You
> can install apps into the browser (like Jabber or Chatzilla) using a
> one-click XPI install, have them show up on the Tasks menu (the current
> equivalent, maybe, of your tabs) and integrate with the browser, copying
> its theme etc.
>
> See some of the projects on http://www.mozdev.org for some of this in
> action.
>
> Gerv