Commit 1f9e0620 authored by Raphaël Jakse's avatar Raphaël Jakse
Browse files

Fix fragile tile position lookup

This code didn't work when Trivabble was served as text/html, which adds
a <tbody> tag in the DOM, while this tag is not added when Trivabble is
served as application/xhtml+xml.
parent cdd2ca77
......@@ -612,33 +612,32 @@
rackBCR = rack.getBoundingClientRect();
bagBCR = bag.getBoundingClientRect();
let from;
let from = null;
let index;
let p = movingTile.parentNode;
let oldP = movingTile;
let oldOldP = null;
let p = movingTile;
while (p) {
if (p === board) {
while (p && !from) {
index = boardCells.indexOf(p);
if (index !== -1) {
from = "board";
index = boardCells.indexOf(oldOldP);
break;
}
if (p === rack) {
index = playerLetters.indexOf(p);
if (index !== -1) {
from = "rack";
index = playerLetters.indexOf(oldP);
break;
}
oldOldP = oldP;
oldP = p;
p = p.parentNode;
}
if (!from) {
fatalError(new Error("Error: did not find the parent of the moving tile"));
return;
}
moveCMD = {
cmd: "moveLetter",
from: from,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment