]> source.dussan.org Git - vaadin-framework.git/commitdiff
Allow changing NavigationStateManager (#9410)
authorapolds <simonapold@gmail.com>
Wed, 24 May 2017 05:33:09 +0000 (07:33 +0200)
committerHenri Sara <henri.sara@gmail.com>
Wed, 24 May 2017 05:33:09 +0000 (08:33 +0300)
Unregister old NavigationStateManager before setting new one.

Fixes #9406

server/src/main/java/com/vaadin/navigator/Navigator.java

index 83f1dbe739254bac9f1f4f6662f52b153124323e..567c271211876db6101019e32d41de0f1c8913d8 100644 (file)
@@ -510,6 +510,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;