Fix enter/exit analyze mode when in promotion or showing marks on boards
[vchess.git] / client / src / components / BaseGame.vue
index 3d8e7eb..1840882 100644 (file)
@@ -258,8 +258,11 @@ export default {
       else this.lastMove = null;
     },
     toggleAnalyze: function() {
+      // Freeze while choices are shown (and autoplay has priority)
+      if (this.$refs["board"].choices.length > 0 || this.autoplay) return;
       if (this.mode != "analyze") {
         // Enter analyze mode:
+        if (this.inMultimove) this.cancelCurrentMultimove();
         this.gameMode = this.mode; //was not 'analyze'
         this.mode = "analyze";
         this.gameCursor = this.cursor;
@@ -278,6 +281,8 @@ export default {
           fen = mv[mv.length-1].fen;
         }
         this.vr = new V(fen);
+        this.inMultimove = false; //in case of
+        this.$refs["board"].resetCurrentAttempt(); //also in case of
         this.incheck = this.vr.getCheckSquares();
         if (this.cursor >= 0) this.lastMove = this.moves[this.cursor];
         else this.lastMove = null;