Fix: Better fullscreen detection and do not rerender when details shown

pull/16/head
Juraj Nyíri 4 years ago
parent 13360d13b6
commit 1e9f51c0bb

@ -19056,7 +19056,8 @@ const getOffset = (el) => {
const isVideoFullScreen = (_this) => {
const videoPlayer = _this.getElementsByClassName('videoPlayer')[0];
const video = videoPlayer.children[0];
return (video.offsetWidth > _this.getElementsByClassName('searchContainer')[0].offsetWidth ||
const body = document.getElementsByTagName('body')[0];
return ((video.offsetWidth === body.offsetHeight && video.offsetHeight === body.offsetHeight) ||
(_this.videoElem && _this.videoElem.classList.contains('simulatedFullScreen')));
};
const findTrailerURL = (movieData) => {
@ -19841,6 +19842,7 @@ class PlexMeetsHomeAssistant extends HTMLElement {
this.previousPositions = [];
// todo: find a better way to detect resize...
setInterval(() => {
if (!this.detailsShown) {
const videoPlayer = this.getElementsByClassName('videoPlayer')[0];
let isFullScreen = false;
if (videoPlayer.children.length > 0) {
@ -19870,6 +19872,7 @@ class PlexMeetsHomeAssistant extends HTMLElement {
this.contentBGHeight = getHeight(contentbg[0]);
}
}
}
}, 250);
this.renderPage();
};

@ -46,8 +46,9 @@ const getOffset = (el: Element): Record<string, any> => {
const isVideoFullScreen = (_this: any): boolean => {
const videoPlayer = _this.getElementsByClassName('videoPlayer')[0] as HTMLElement;
const video = videoPlayer.children[0] as any;
const body = document.getElementsByTagName('body')[0];
return (
video.offsetWidth > (_this.getElementsByClassName('searchContainer')[0] as HTMLElement).offsetWidth ||
(video.offsetWidth === body.offsetHeight && video.offsetHeight === body.offsetHeight) ||
(_this.videoElem && _this.videoElem.classList.contains('simulatedFullScreen'))
);
};

@ -167,6 +167,7 @@ class PlexMeetsHomeAssistant extends HTMLElement {
// todo: find a better way to detect resize...
setInterval(() => {
if (!this.detailsShown) {
const videoPlayer = this.getElementsByClassName('videoPlayer')[0] as HTMLElement;
let isFullScreen = false;
if (videoPlayer.children.length > 0) {
@ -199,6 +200,7 @@ class PlexMeetsHomeAssistant extends HTMLElement {
this.contentBGHeight = getHeight(contentbg[0] as HTMLElement);
}
}
}
}, 250);
this.renderPage();

Loading…
Cancel
Save