fix larp.info* text wrap and message context menu positioning

This commit is contained in:
olcxja 2026-07-29 16:19:27 +02:00
commit afd6a87228
2 changed files with 30 additions and 2 deletions

View file

@ -2480,7 +2480,7 @@ async function generateMessagesHtml(entries, isPinnedContext = false) {
let textStr = processBlah(actionStr); let textStr = processBlah(actionStr);
content = textStr.replace("{0}", clickableAuthor).replace("{1}", clickableMsg); content = textStr.replace("{0}", clickableAuthor).replace("{1}", clickableMsg);
} }
html += `<div style="text-align: center; opacity: 0.5; padding: 1rem; font-size: 0.9rem;">${content}</div>`; html += `<div style="text-align: center; opacity: 0.5; padding: 1rem; font-size: 0.9rem; word-break: break-word; overflow-wrap: anywhere;">${content}</div>`;
lastAuthor = null; lastAuthor = null;
consecutiveMessages = 0; consecutiveMessages = 0;
} else { } else {
@ -3220,6 +3220,20 @@ function handleMessageContextMenu(e, msgId) {
</button>`; </button>`;
} }
} }
let menuRect = fixedContextMenu.getBoundingClientRect();
let newLeft = e.clientX + 10;
let newTop = e.clientY;
if (newLeft + menuRect.width > window.innerWidth) {
newLeft = window.innerWidth - menuRect.width - 10;
}
if (newTop + menuRect.height > window.innerHeight) {
newTop = window.innerHeight - menuRect.height - 10;
}
fixedContextMenu.style.left = `${newLeft}px`;
fixedContextMenu.style.top = `${newTop}px`;
} }

View file

@ -2480,7 +2480,7 @@ async function generateMessagesHtml(entries, isPinnedContext = false) {
let textStr = processBlah(actionStr); let textStr = processBlah(actionStr);
content = textStr.replace("{0}", clickableAuthor).replace("{1}", clickableMsg); content = textStr.replace("{0}", clickableAuthor).replace("{1}", clickableMsg);
} }
html += `<div style="text-align: center; opacity: 0.5; padding: 1rem; font-size: 0.9rem;">${content}</div>`; html += `<div style="text-align: center; opacity: 0.5; padding: 1rem; font-size: 0.9rem; word-break: break-word; overflow-wrap: anywhere;">${content}</div>`;
lastAuthor = null; lastAuthor = null;
consecutiveMessages = 0; consecutiveMessages = 0;
} else { } else {
@ -3220,6 +3220,20 @@ function handleMessageContextMenu(e, msgId) {
</button>`; </button>`;
} }
} }
let menuRect = fixedContextMenu.getBoundingClientRect();
let newLeft = e.clientX + 10;
let newTop = e.clientY;
if (newLeft + menuRect.width > window.innerWidth) {
newLeft = window.innerWidth - menuRect.width - 10;
}
if (newTop + menuRect.height > window.innerHeight) {
newTop = window.innerHeight - menuRect.height - 10;
}
fixedContextMenu.style.left = `${newLeft}px`;
fixedContextMenu.style.top = `${newTop}px`;
} }