X-Git-Url: https://git.auder.net/img/rock_paper_scissors_lizard_spock.gif?a=blobdiff_plain;ds=sidebyside;f=client%2Fsrc%2Fcomponents%2FBaseGame.vue;h=ef6ef01e17f3b5d20870301e4d680a2b163dba71;hb=9ef63965401837983286ac6a95767af3923405fe;hp=b34eae9f2482c2204ae8af649842affb4ca6c337;hpb=89021f181ac0689bbc785ce0ebd9a910e66352b0;p=vchess.git diff --git a/client/src/components/BaseGame.vue b/client/src/components/BaseGame.vue index b34eae9f..ef6ef01e 100644 --- a/client/src/components/BaseGame.vue +++ b/client/src/components/BaseGame.vue @@ -26,7 +26,7 @@ div#baseGame(tabindex=-1 @click="focusBg()" button(@click="flip()") ⇅ button(@click="play()") > button(@click="gotoEnd()") >> - #pgnDiv + #belowControls #downloadDiv(v-if="game.vname!='Dark' || game.score!='*'") a#download(href="#") button(@click="download()") {{ st.tr["Download"] }} PGN @@ -121,15 +121,14 @@ export default { if (!boardSize) { boardSize = (window.innerWidth >= 768 - ? Math.min(600, 0.5*window.innerWidth) //heuristic... + ? 0.75 * Math.min(window.innerWidth, window.innerHeight) : window.innerWidth); } const movesWidth = (window.innerWidth >= 768 ? 280 : 0); document.getElementById("boardContainer").style.width = boardSize + "px"; let gameContainer = document.getElementById("gameContainer"); gameContainer.style.width = (boardSize + movesWidth) + "px"; - // TODO: find the right formula here: - //document.getElementById("boardSize").value = Math.floor(boardSize / 10); + document.getElementById("boardSize").value = (boardSize * 100) / (window.innerWidth - movesWidth); // timeout to avoid calling too many time the adjust method let timeoutLaunched = false; window.addEventListener("resize", (e) => { @@ -217,8 +216,8 @@ export default { vr_tmp.play(move); move.fen = vr_tmp.getFen(); }); - if (this.game.fenStart.indexOf(" b ") >= 0 || - (this.moves.length > 0 && this.moves[0].color == "b")) + if ((this.moves.length > 0 && this.moves[0].color == "b") || + (this.moves.length == 0 && this.vr_tmp.turn == "b")) { // 'end' is required for Board component to check lastMove for e.p. this.moves.unshift({color: "w", notation: "...", end: {x:-1,y:-1}}); @@ -226,7 +225,7 @@ export default { const L = this.moves.length; this.cursor = L-1; this.lastMove = (L > 0 ? this.moves[L-1] : null); - this.incheck = []; + this.incheck = this.vr.getCheckSquares(this.vr.turn); }, analyzePosition: function() { const newUrl = "/analyse/" + this.game.vname + @@ -434,22 +433,24 @@ export default { display: inline-block #controls - margin-top: 10px - margin-left: auto - margin-right: auto + margin: 0 auto button display: inline-block width: 20% margin: 0 -@media screen and (min-width: 768px) - #controls - max-width: 400px #turnIndicator text-align: center -#pgnDiv +#belowControls + border-top: 1px solid #2f4f4f text-align: center - margin-left: auto - margin-right: auto + margin: 0 auto + & > #downloadDiv + margin: 0 + & > button + margin: 0 + & > button + border-left: 1px solid #2f4f4f + margin: 0 #boardContainer float: left // TODO: later, maybe, allow movesList of variable width