porting popup window dimension calculation fix

This commit is contained in:
Alex Yatskov 2017-01-11 20:25:00 -08:00
parent 916751420e
commit dcd17bc654

View File

@ -38,21 +38,21 @@ class Popup {
showNextTo(elementRect, content) {
this.inject();
const containerRect = this.container.getBoundingClientRect();
const containerStyle = window.getComputedStyle(this.container);
const containerHeight = parseInt(containerStyle.height);
const containerWidth = parseInt(containerStyle.width);
let x = elementRect.left;
let width = containerRect.width;
let width = containerWidth;
if (x + width >= window.innerWidth) {
const widthMax = window.innerWidth - x;
width = Math.min(width, widthMax);
width = Math.min(width, x);
x = window.innerWidth - width;
}
let y = elementRect.bottom + this.offset;
let height = containerRect.height;
let height = containerHeight;
if (y + height >= window.innerHeight) {
const heightMax = window.innerHeight - y - this.offset;
height = Math.min(height, heightMax);
height = Math.min(height, y);
y = elementRect.top - height - this.offset;
}