|
@@ -7,11 +7,16 @@ import {
|
|
isRoundedDesign,
|
|
isRoundedDesign,
|
|
isShorts,
|
|
isShorts,
|
|
} from "./state";
|
|
} from "./state";
|
|
-import { cLog, getColorFromTheme } from "./utils";
|
|
|
|
|
|
+import { cLog, getColorFromTheme, isInViewport } from "./utils";
|
|
|
|
|
|
function createRateBar(likes, dislikes) {
|
|
function createRateBar(likes, dislikes) {
|
|
|
|
+ let rateBar = document.getElementById("ryd-bar-container");
|
|
if (!isLikesDisabled()) {
|
|
if (!isLikesDisabled()) {
|
|
- let rateBar = document.getElementById("ryd-bar-container");
|
|
|
|
|
|
+ // sometimes rate bar is hidden
|
|
|
|
+ if(rateBar && !isInViewport(rateBar)){
|
|
|
|
+ rateBar.remove();
|
|
|
|
+ rateBar = null;
|
|
|
|
+ }
|
|
|
|
|
|
const widthPx =
|
|
const widthPx =
|
|
getLikeButton().clientWidth +
|
|
getLikeButton().clientWidth +
|
|
@@ -55,11 +60,10 @@ function createRateBar(likes, dislikes) {
|
|
colorLikeStyle = "; background-color: " + getColorFromTheme(true);
|
|
colorLikeStyle = "; background-color: " + getColorFromTheme(true);
|
|
colorDislikeStyle = "; background-color: " + getColorFromTheme(false);
|
|
colorDislikeStyle = "; background-color: " + getColorFromTheme(false);
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+ let actions = isNewDesign() && getButtons().id === "top-level-buttons-computed"
|
|
|
|
+ ? getButtons() : document.getElementById("menu-container");
|
|
(
|
|
(
|
|
- document.getElementById(
|
|
|
|
- isNewDesign() ? "top-level-buttons-computed" : "menu-container"
|
|
|
|
- ) || document.querySelector("ytm-slim-video-action-bar-renderer")
|
|
|
|
|
|
+ actions || document.querySelector("ytm-slim-video-action-bar-renderer")
|
|
).insertAdjacentHTML(
|
|
).insertAdjacentHTML(
|
|
"beforeend",
|
|
"beforeend",
|
|
`
|
|
`
|
|
@@ -112,9 +116,8 @@ function createRateBar(likes, dislikes) {
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
cLog("removing bar");
|
|
cLog("removing bar");
|
|
- let ratebar = document.getElementById("ryd-bar-container");
|
|
|
|
- if (ratebar) {
|
|
|
|
- ratebar.parentNode.removeChild(ratebar);
|
|
|
|
|
|
+ if (rateBar) {
|
|
|
|
+ rateBar.parentNode.removeChild(rateBar);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|