web: add markdown formatting keyboard shortcuts in composer
Some checks are pending
CI / test (push) Has started running

This commit is contained in:
2026-03-08 22:43:09 +03:00
parent 10eb82c82d
commit ff4aa48a34
2 changed files with 36 additions and 1 deletions

View File

@@ -525,6 +525,41 @@ export function MessageComposer() {
}, [gifQuery, showGifMenu]);
function onComposerKeyDown(event: KeyboardEvent<HTMLTextAreaElement>) {
const hasModifier = event.ctrlKey || event.metaKey;
if (hasModifier) {
const key = event.key.toLowerCase();
if (key === "b") {
event.preventDefault();
insertFormatting("**", "**");
return;
}
if (key === "i") {
event.preventDefault();
insertFormatting("*", "*");
return;
}
if (key === "u") {
event.preventDefault();
insertFormatting("__", "__");
return;
}
if (key === "k") {
event.preventDefault();
insertLink();
return;
}
if (event.shiftKey && key === "x") {
event.preventDefault();
insertFormatting("~~", "~~");
return;
}
if (event.shiftKey && (event.key === "`" || event.code === "Backquote")) {
event.preventDefault();
insertFormatting("`", "`");
return;
}
}
if (event.key !== "Enter") {
return;
}