As Eric suggested, there is no real way to track this. However, I have figured a way out that currently works with my application. I have a hidden window that I use only for this purpose. When the user closes the browser window, that is the only way that this hidden window can be closed. When the unload method is called, i check a flag to see if the user has not exited cleanly already. If the user has not exit cleanly, the session is invalidated on the server using a modal window dialog.
hope this helps...
Maneesh
