diff options
author | apolds <simonapold@gmail.com> | 2017-05-24 07:34:28 +0200 |
---|---|---|
committer | Henri Sara <henri.sara@gmail.com> | 2017-05-24 08:34:28 +0300 |
commit | d00deb0f545bf3f6ee1a0b69899569b8da13567e (patch) | |
tree | c9cee8371169c395520bfe9ba72a4300b5d00458 /server/src | |
parent | 61306d021655fcdbb0ee03dd6aecf27ab0023006 (diff) | |
download | vaadin-framework-d00deb0f545bf3f6ee1a0b69899569b8da13567e.tar.gz vaadin-framework-d00deb0f545bf3f6ee1a0b69899569b8da13567e.zip |
Allow changing NavigationStateManager (#9416)
Unregister old NavigationStateManager before setting new one (backport of #9410).
Fixes #9406
Diffstat (limited to 'server/src')
-rw-r--r-- | server/src/main/java/com/vaadin/navigator/Navigator.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/server/src/main/java/com/vaadin/navigator/Navigator.java b/server/src/main/java/com/vaadin/navigator/Navigator.java index 15936f6168..172ab39928 100644 --- a/server/src/main/java/com/vaadin/navigator/Navigator.java +++ b/server/src/main/java/com/vaadin/navigator/Navigator.java @@ -513,6 +513,10 @@ public class Navigator implements Serializable { if (stateManager == null) { stateManager = new UriFragmentManager(ui.getPage()); } + if (stateManager != null && this.stateManager != null + && stateManager != this.stateManager) { + this.stateManager.setNavigator(null); + } this.stateManager = stateManager; this.stateManager.setNavigator(this); this.display = display; |