The dialog framework stack for an individual user can potentially grow and grow.
In the use of the app if a dialog is not closed with the close button and it is instead navigated away from via the breadcrumb for example, the item at the top of the stack will not be removed. When the user enters another dialog the stack will be added to and that page will get left as well if the dialog close button is not used.
However, if a dialog is launched from the same page as the one currently at the top of the stack it won't be added again so this should limit the growth of the stack, particularly as most dialogs are launched from browse.jsp.
We need a way to determine whether a dialog is open and has been navigated away from, maybe a phase listener will help?