From b36b7b4e9dcae3a2be662a591339d6fb04bbda32 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Sun, 15 Dec 2024 19:11:48 +0200 Subject: [PATCH] web/timeline/menu: don't allow context menu to overflow to the left --- web/src/ui/timeline/menu/util.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/web/src/ui/timeline/menu/util.ts b/web/src/ui/timeline/menu/util.ts index 62b3eeb..1692a12 100644 --- a/web/src/ui/timeline/menu/util.ts +++ b/web/src/ui/timeline/menu/util.ts @@ -36,8 +36,14 @@ export const getEncryption = (room: RoomStateStore): boolean =>{ return encryptionEvent?.content?.algorithm === "m.megolm.v1.aes-sha2" } -export function getModalStyleFromMouse(evt: React.MouseEvent, modalHeight: number): CSSProperties { +export function getModalStyleFromMouse( + evt: React.MouseEvent, modalHeight: number, modalWidth = 10 * 16, +): CSSProperties { const style: CSSProperties = { right: window.innerWidth - evt.clientX } + if (evt.clientX - modalWidth < 4) { + delete style.right + style.left = "4px" + } if (evt.clientY + modalHeight > window.innerHeight) { style.bottom = window.innerHeight - evt.clientY } else {