Sfoglia il codice sorgente

Animation navbar is updated correctly when a new model is loaded

Fixing https://github.com/BabylonJS/Babylon.js/issues/4441
Raanan Weber 7 anni fa
parent
commit
d475c7561e
1 ha cambiato i file con 6 aggiunte e 4 eliminazioni
  1. 6 4
      Viewer/src/viewer/defaultViewer.ts

+ 6 - 4
Viewer/src/viewer/defaultViewer.ts

@@ -298,13 +298,13 @@ export class DefaultViewer extends AbstractViewer {
         let navbar = this.templateManager.getTemplate('navBar');
         let navbar = this.templateManager.getTemplate('navBar');
         if (!navbar) return;
         if (!navbar) return;
 
 
-        let newParams: any = {};
+        let newParams: any = navbar.configuration.params || {};
 
 
         let animationNames = model.getAnimationNames();
         let animationNames = model.getAnimationNames();
-        if (animationNames.length >= 1) {
+        newParams.animations = animationNames;
+        if (animationNames.length) {
             this._isAnimationPaused = (model.configuration.animation && !model.configuration.animation.autoStart) || !model.configuration.animation;
             this._isAnimationPaused = (model.configuration.animation && !model.configuration.animation.autoStart) || !model.configuration.animation;
             this._animationList = animationNames;
             this._animationList = animationNames;
-            newParams.animations = this._animationList;
             newParams.paused = this._isAnimationPaused;
             newParams.paused = this._isAnimationPaused;
             let animationIndex = 0;
             let animationIndex = 0;
             if (model.configuration.animation && typeof model.configuration.animation.autoStart === 'string') {
             if (model.configuration.animation && typeof model.configuration.animation.autoStart === 'string') {
@@ -314,12 +314,14 @@ export class DefaultViewer extends AbstractViewer {
                 }
                 }
             }
             }
             this._updateAnimationType(animationNames[animationIndex], newParams);
             this._updateAnimationType(animationNames[animationIndex], newParams);
+        } else {
+            newParams.animations = null;
         }
         }
 
 
         if (model.configuration.thumbnail) {
         if (model.configuration.thumbnail) {
             newParams.logoImage = model.configuration.thumbnail
             newParams.logoImage = model.configuration.thumbnail
         }
         }
-        navbar.updateParams(newParams);
+        navbar.updateParams(newParams, false);
     }
     }
 
 
     /**
     /**