Merge branches 'develop' and 't3chguy/fix/13641' of github.com:matrix-org/matrix-react-sdk into t3chguy/fix/13641
Conflicts: src/editor/parts.ts
This commit is contained in:
commit
c578026474
46 changed files with 1487 additions and 1521 deletions
|
@ -64,7 +64,7 @@ function parseCodeBlock(n: HTMLElement, partCreator: PartCreator) {
|
|||
let language = "";
|
||||
if (n.firstChild && n.firstChild.nodeName === "CODE") {
|
||||
for (const className of (<HTMLElement>n.firstChild).classList) {
|
||||
if (className.startsWith("language-")) {
|
||||
if (className.startsWith("language-") && !className.startsWith("language-_")) {
|
||||
language = className.substr("language-".length);
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -186,7 +186,7 @@ abstract class PlainBasePart extends BasePart {
|
|||
}
|
||||
// when not pasting or dropping text, reject characters that should start a pill candidate
|
||||
if (inputType !== "insertFromPaste" && inputType !== "insertFromDrop") {
|
||||
if (chr !== "@" && chr !== "#" && chr !== ":") {
|
||||
if (chr !== "@" && chr !== "#" && chr !== ":" && chr !== "+") {
|
||||
return true;
|
||||
}
|
||||
// only split if the previous character is a space
|
||||
|
@ -467,6 +467,7 @@ export class PartCreator {
|
|||
case "#":
|
||||
case "@":
|
||||
case ":":
|
||||
case "+":
|
||||
return this.pillCandidate("");
|
||||
case "\n":
|
||||
return new NewlinePart();
|
||||
|
|
|
@ -162,10 +162,10 @@ export function renderModel(editor: HTMLDivElement, model: EditorModel) {
|
|||
lines.forEach((parts, i) => {
|
||||
// find first (and remove anything else) div without className
|
||||
// (as browsers insert these in contenteditable) line container
|
||||
let lineContainer = editor.children[i];
|
||||
while (lineContainer && (lineContainer.tagName !== "DIV" || !!lineContainer.className)) {
|
||||
let lineContainer = editor.childNodes[i];
|
||||
while (lineContainer && ((<Element>lineContainer).tagName !== "DIV" || !!(<Element>lineContainer).className)) {
|
||||
editor.removeChild(lineContainer);
|
||||
lineContainer = editor.children[i];
|
||||
lineContainer = editor.childNodes[i];
|
||||
}
|
||||
if (!lineContainer) {
|
||||
lineContainer = document.createElement("div");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue