mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update live tv popup
This commit is contained in:
parent
2380d967a0
commit
6a82cb07e0
74 changed files with 760 additions and 540 deletions
|
@ -98,10 +98,50 @@
|
|||
return dlg;
|
||||
}
|
||||
|
||||
function positionTo(dlg, elem) {
|
||||
|
||||
var windowHeight = $(window).height();
|
||||
|
||||
// If the window height is under a certain amount, don't bother trying to position
|
||||
// based on an element.
|
||||
if (windowHeight >= 540) {
|
||||
|
||||
var pos = $(elem).offset();
|
||||
|
||||
pos.top += elem.offsetHeight / 2;
|
||||
pos.left += elem.offsetWidth / 2;
|
||||
|
||||
// Account for margins
|
||||
pos.top -= 24;
|
||||
pos.left -= 24;
|
||||
|
||||
// Account for popup size - we can't predict this yet so just estimate
|
||||
pos.top -= $(dlg).height() / 2;
|
||||
pos.left -= $(dlg).width() / 2;
|
||||
|
||||
// Account for scroll position
|
||||
pos.top -= $(window).scrollTop();
|
||||
pos.left -= $(window).scrollLeft();
|
||||
|
||||
// Avoid showing too close to the bottom
|
||||
pos.top = Math.min(pos.top, windowHeight - 300);
|
||||
pos.left = Math.min(pos.left, $(window).width() - 300);
|
||||
|
||||
// Do some boundary checking
|
||||
pos.top = Math.max(pos.top, 0);
|
||||
pos.left = Math.max(pos.left, 0);
|
||||
|
||||
dlg.style.position = 'fixed';
|
||||
dlg.style.left = pos.left + 'px';
|
||||
dlg.style.top = pos.top + 'px';
|
||||
}
|
||||
}
|
||||
|
||||
globalScope.PaperDialogHelper = {
|
||||
openWithHash: openWithHash,
|
||||
close: close,
|
||||
createDialog: createDialog
|
||||
createDialog: createDialog,
|
||||
positionTo: positionTo
|
||||
};
|
||||
|
||||
})(this);
|
Loading…
Add table
Add a link
Reference in a new issue