Skip to content

Commit

Permalink
Fix invalid references line position on Database schema
Browse files Browse the repository at this point in the history
  • Loading branch information
vrana committed Mar 6, 2012
1 parent b959ba4 commit 405ad5f
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 11 deletions.
19 changes: 8 additions & 11 deletions adminer/static/editing.js
Expand Up @@ -417,10 +417,9 @@ function schemaMousemove(ev) {
var lineSet = { }; var lineSet = { };
for (var i=0; i < divs.length; i++) { for (var i=0; i < divs.length; i++) {
if (divs[i].className == 'references') { if (divs[i].className == 'references') {
var div2 = document.getElementById((divs[i].id.substr(0, 4) == 'refs' ? 'refd' : 'refs') + divs[i].id.substr(4)); var div2 = document.getElementById((/^refs/.test(divs[i].id) ? 'refd' : 'refs') + divs[i].id.substr(4));
var ref = (tablePos[divs[i].title] ? tablePos[divs[i].title] : [ div2.parentNode.offsetTop / em, 0 ]); var ref = (tablePos[divs[i].title] ? tablePos[divs[i].title] : [ div2.parentNode.offsetTop / em, 0 ]);
var left1 = -1; var left1 = -1;
var isTop = true;
var id = divs[i].id.replace(/^ref.(.+)-.+/, '$1'); var id = divs[i].id.replace(/^ref.(.+)-.+/, '$1');
if (divs[i].parentNode != div2.parentNode) { if (divs[i].parentNode != div2.parentNode) {
left1 = Math.min(0, ref[1] - left) - 1; left1 = Math.min(0, ref[1] - left) - 1;
Expand All @@ -429,19 +428,17 @@ function schemaMousemove(ev) {
var left2 = Math.min(0, left - ref[1]) - 1; var left2 = Math.min(0, left - ref[1]) - 1;
div2.style.left = left2 + 'em'; div2.style.left = left2 + 'em';
div2.getElementsByTagName('div')[0].style.width = -left2 + 'em'; div2.getElementsByTagName('div')[0].style.width = -left2 + 'em';
isTop = (div2.offsetTop + ref[0] * em > divs[i].offsetTop + top * em);
} }
if (!lineSet[id]) { if (!lineSet[id]) {
var line = document.getElementById(divs[i].id.replace(/^....(.+)-\d+$/, 'refl$1')); var line = document.getElementById(divs[i].id.replace(/^....(.+)-.+$/, 'refl$1'));
var shift = ev.clientY - y - that.offsetTop; var top1 = top + divs[i].offsetTop / em;
line.style.left = (left + left1) + 'em'; var top2 = top + div2.offsetTop / em;
if (isTop) {
line.style.top = (line.offsetTop + shift) / em + 'em';
}
if (divs[i].parentNode != div2.parentNode) { if (divs[i].parentNode != div2.parentNode) {
line = line.getElementsByTagName('div')[0]; top2 += ref[0] - top;
line.style.height = (line.offsetHeight + (isTop ? -1 : 1) * shift) / em + 'em'; line.getElementsByTagName('div')[0].style.height = Math.abs(top1 - top2) + 'em';
} }
line.style.left = (left + left1) + 'em';
line.style.top = Math.min(top1, top2) + 'em';
lineSet[id] = true; lineSet[id] = true;
} }
} }
Expand Down
1 change: 1 addition & 0 deletions changes.txt
Expand Up @@ -9,6 +9,7 @@ Esc to cancel AJAX request
Move AJAX loading indicator to the right Move AJAX loading indicator to the right
Don't quote bit type in export Don't quote bit type in export
Don't check row while selecting text Don't check row while selecting text
Fix invalid references line position on Database schema
Disable selecting text on Database schema Disable selecting text on Database schema
Ability to disable export (customization) Ability to disable export (customization)
Extensible list of databases (customization) Extensible list of databases (customization)
Expand Down

0 comments on commit 405ad5f

Please sign in to comment.