MessageLogger: Nicer context menu

This commit is contained in:
Vendicated 2023-04-28 04:23:42 +02:00
parent c1fca76f94
commit 0fe0fecba2
No known key found for this signature in database
GPG key ID: A1DC0CFB5615D905
2 changed files with 18 additions and 14 deletions

View file

@ -51,11 +51,28 @@ const patchMessageContextMenu: NavContextMenuPatchCallback = (children, props) =
if (!deleted && !editHistory?.length) return; if (!deleted && !editHistory?.length) return;
toggle: {
if (!deleted) break toggle;
const domElement = document.getElementById(`chat-messages-${channel_id}-${id}`);
if (!domElement) break toggle;
children.push((
<Menu.MenuItem
id={TOGGLE_DELETE_STYLE_ID}
key={TOGGLE_DELETE_STYLE_ID}
label="Toggle Deleted Highlight"
action={() => domElement.classList.toggle("messagelogger-deleted")}
/>
));
}
children.push(( children.push((
<Menu.MenuItem <Menu.MenuItem
id={REMOVE_HISTORY_ID} id={REMOVE_HISTORY_ID}
key={REMOVE_HISTORY_ID} key={REMOVE_HISTORY_ID}
label="Remove Message History" label="Remove Message History"
color="danger"
action={() => { action={() => {
if (deleted) { if (deleted) {
FluxDispatcher.dispatch({ FluxDispatcher.dispatch({
@ -70,20 +87,6 @@ const patchMessageContextMenu: NavContextMenuPatchCallback = (children, props) =
}} }}
/> />
)); ));
if (!deleted) return;
const domElement = document.getElementById(`chat-messages-${channel_id}-${id}`);
if (!domElement) return;
children.push((
<Menu.MenuItem
id={TOGGLE_DELETE_STYLE_ID}
key={TOGGLE_DELETE_STYLE_ID}
label="Toggle Deleted Highlight"
action={() => domElement.classList.toggle("messagelogger-deleted")}
/>
));
}; };
export default definePlugin({ export default definePlugin({

View file

@ -38,6 +38,7 @@ export interface Menu {
label: string; label: string;
action?(e: MouseEvent): void; action?(e: MouseEvent): void;
color?: string;
render?: ComponentType; render?: ComponentType;
onChildrenScroll?: Function; onChildrenScroll?: Function;
childRowHeight?: number; childRowHeight?: number;