The web is moving closer and closer to a point where an application and
a website are one and the same thing. Therefore I think the future
expects that a web browser have an "application mode" where an instance
of the web browser is loaded for the sole purpose of running a given
website. The mode should be bare bones, i.e. it should load into memory
only what it needs to run this particular website. It does not need to
load up extensions, toolbars, options menus and so on. It can be simply
a title bar and have the website take up the full screen, be
maximimized, minimized to tray etc. This way you can have a certain
file extension for a website to load up in application mode and behave
identically to any other application. A file, say .apm, is created with
the address of the website to load, and options for the application
mode, such as full-screen, maximized, allow_minimize_to_tray,
title_bar_only, close_button=yes,minimize_button=yes and so on. The
website should load up just like a normal desktop application to the
point that the user cannot distinguish between it and a normal
application, besides for the file extension.
I think this is a necessary feature and I know it WILL exist in the
near future. Goodbye desktop application, welcome application mode.
Comments?
- Boaz
I agree. This is precisely how I am trying to use FireFox, and I am
having difficulty because the window.blur() routine doesn't achieve the
proper action, as well as several other problems (some old netscape
support to grab window handles, etc. has gone missing). We been able
to get pretty close to what we need by customizing many settings in the
options pages, as well as the about:config page, and performing a lot
of work in javascript files and the like.
-Kevin
Tell me more (or show me the bug) about the "onblur". Also, what kind of
"window handle" support were you looking for? I was just looking at
HWNDs today for something else.
Mark Finkle
Try loading the following page in Firefox, IE, and Netscape:
<html><head>
</head>
<body onLoad="window.blur();">
</body>
</html>
The netscape stuff that went missing is either -remote, or -parent, I
think. I will have to dig a bit to find what is actually missing. I
am writing an embedded application that used to use netscape (a really
old version), and I am trying to convert it to use firefox. We have a
main window which drives things, and some child windows that hold the
content of our application. We use system commands as well as internal
(javascript driven by CGI/perl scripts) commands to change the location
field of the browser.
Just yesterday I found some functionality we need recently got dropped
(or moved to where I can't find it) in Firefox 2.0 (it works in
1.5.0.7). Here are the contents of a message I sent to David Tenser in
regards to the following page
(http://www.mozilla.org/support/firefox/tips#beh_reuse):
On the following page, it is mentioned that you can do these things:
Reveal More Tab/Window Options
There are some hidden options for the Tabbed Browsing that will allow
you to force links that open new windows to open in the current or a
new tab. First, using about:config, go to the preference
browser.tabs.showSingleWindowModePrefs, and change its value to true.
Restart Firefox and go to Tools > Options... (Edit > Preferences...
under Linux and Mac OS X), select Advanced and click on Tabbed
Browsing. The following options should be visible:
Force links that open new windows to open in:
the same tab/window as the link
a new tab
Anyway, I know c++, I have everything building in Windows XP, but I
have no idea where I should be starting to attack some of these issues.
Thanks for the response,
-Kevin
I can see the problem with "window.blur();", doesn't work like it does
in IE. I don't know what is happening yet, but I'll keep looking.
Seems "browser.tabs.showSingleWindowModePrefs" is no longer in FF2.0,
but I think you can get the old behavior by using "about:config" and
setting "browser.link.open_external" to "1". This is what is currently
in the document on the page you reference
(http://www.mozilla.org/support/firefox/tips)
Mark Finkle
That preference was a hack used to disable links-open-in-new-tabs functionality in 1.0, due I believe to a bug where the browser would crash if the loaded page called "window.close()" (say, if you clicked on a Close Window link). I'm pretty sure all this functionality is available in the Tabs panel in preferences in Firefox 2, so the preference and manual about:config tweaking isn't necessary.
Jeff
Thanks,
-Kevin
onBlur events don't seem to fire reliably in xul chrome windows. I have
never been able to make an XULRunner top-level window detect the unfocus
action reliably, it just doesn't seem to get the event unless the focus
changes to another window within the same app. If any other application
gains focus then the previously focused XULRunner window still thinks it
has focus, the onblur doesn't fire.
Mentioning this might not be very helpful but I think it is somewhat
relevant to this thread of discussion.