bug fix right positioning + autohide

This commit is contained in:
Nuked
2024-04-22 23:45:34 +02:00
parent 2d0f161417
commit 69aabb97bf
2 changed files with 35 additions and 10 deletions
+13 -3
View File
@@ -227,12 +227,22 @@ function createContextMenu(event, subMenus,settingsData) {
}
menuOptions.appendChild(li);
});
console.log("lll")
// Show context menu
sbcontextMenu.style.display = 'block';
sbcontextMenu.style.left = event.clientX + 'px';
sbcontextMenu.style.top = event.clientY + 'px';
if (sbPosition === "left") {
sbcontextMenu.style.left = event.clientX + 'px';
} else {
// const sidebar_width = getVar("sidebarWidth");
//console.log(parseInt(sidebar_width))
//console.log(event)
//console.log(event.clientX - parseInt(sidebar_width) )
//temp bugfix
sbcontextMenu.style.left = event.layerX + 'px';
}
// Hide context menu on body click
document.body.addEventListener('click', hideContextMenu);
}
+22 -7
View File
@@ -89,8 +89,11 @@ function postPinned() {
previewDivTop = (itemPosition.top + this.offsetHeight) - previewDiv.offsetHeight;
}
const previewDivLeft = itemPosition.left + this.offsetWidth + correction_offset;
let previewDivLeft = itemPosition.left + this.offsetWidth + correction_offset;
if (sbPosition == "right") {
previewDivLeft = -itemPosition.left + this.offsetWidth + correction_offset;
}
previewDiv.style.top = `${previewDivTop}px`;
previewDiv.style.left = `${previewDivLeft}px`;
@@ -563,12 +566,16 @@ async function createCategoryList() {
}
else {
previewDivTop = (itemPosition.top + this.offsetHeight) - previewDiv.offsetHeight;
}
const previewDivLeft = itemPosition.left + this.offsetWidth + correction_offset;
let previewDivLeft = itemPosition.left + this.offsetWidth + correction_offset;
if (sbPosition == "right") {
previewDivLeft = -itemPosition.left + this.offsetWidth + correction_offset;
}
previewDiv.style.top = `${previewDivTop}px`;
previewDiv.style.left = `${previewDivLeft}px`;
@@ -861,10 +868,18 @@ function toggleSHSB(force = undefined) {
}
main_sidebar.style.width = '45px';
} else {
if (force==undefined) {
setVar("sb_minimized", false);
main_sidebar.style.width = getVar("sidebarWidth") || '300px';
}else if (force==true) {
main_sidebar.style.width = '45px'; console.log("minimized")
}else{
main_sidebar.style.width = getVar("sidebarWidth") || '300px';
}
main_sidebar.style.width = getVar("sidebarWidth") || '300px';
}