diff options
author | Henri Sara <henri.sara@itmill.com> | 2010-10-28 08:58:56 +0000 |
---|---|---|
committer | Henri Sara <henri.sara@itmill.com> | 2010-10-28 08:58:56 +0000 |
commit | 146924c65421cab4779c353706d477b45f63a433 (patch) | |
tree | de8091e82b98e46923c87c91187d62cf4c39936c /src/com/vaadin/ui/Window.java | |
parent | bda0e33b9862e176c83607e8b8ca31b80755b962 (diff) | |
download | vaadin-framework-146924c65421cab4779c353706d477b45f63a433.tar.gz vaadin-framework-146924c65421cab4779c353706d477b45f63a433.zip |
#3865 closing sub-windows from code should send close event, test for window closing
svn changeset:15758/svn branch:6.5
Diffstat (limited to 'src/com/vaadin/ui/Window.java')
-rw-r--r-- | src/com/vaadin/ui/Window.java | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/com/vaadin/ui/Window.java b/src/com/vaadin/ui/Window.java index fde6058f93..fed7dabd36 100644 --- a/src/com/vaadin/ui/Window.java +++ b/src/com/vaadin/ui/Window.java @@ -1102,11 +1102,9 @@ public class Window extends Panel implements URIHandler, ParameterHandler { * </p> * * <p> - * If one wants change the default behavior, register a window close - * listenter and do something else. For example, you could re-open the - * browser-level window with mainWindow.open(), re-add the removed - * sub-window back to its parent or remove browser-level window - * automatically from the application. + * To explicitly close a sub-window, use {@link #removeWindow(Window)}. To + * react to a window being closed (after it is closed), register a + * {@link CloseListener}. * </p> */ protected void close() { @@ -1116,7 +1114,6 @@ public class Window extends Panel implements URIHandler, ParameterHandler { } else { // subwindow is removed from parent parent.removeWindow(this); - fireClose(); } } @@ -1250,8 +1247,8 @@ public class Window extends Panel implements URIHandler, ParameterHandler { * user closes the window. * * <p> - * Note that removing windows using {@link #removeWindow(Window)} will not - * fire the CloseListener. + * Since Vaadin 6.5, removing windows using {@link #removeWindow(Window)} + * does fire the CloseListener. * </p> */ public interface CloseListener extends Serializable { @@ -1277,8 +1274,8 @@ public class Window extends Panel implements URIHandler, ParameterHandler { * mean it will be destroyed. * * <p> - * Note that removing windows using {@link #removeWindow(Window)} will not - * fire the CloseListener. + * Since Vaadin 6.5, removing windows using {@link #removeWindow(Window)} + * does fire the CloseListener. * </p> * * @param listener @@ -1431,12 +1428,16 @@ public class Window extends Panel implements URIHandler, ParameterHandler { /** * Remove the given subwindow from this window. * + * Since Vaadin 6.5, {@link CloseListener}s are called also when explicitly + * removing a window by calling this method. + * * @param window * Window to be removed. */ public void removeWindow(Window window) { subwindows.remove(window); window.setParent(null); + window.fireClose(); requestRepaint(); } |