Trim trailing newlines (#999)
* trim newlines for text elements * fix comment
This commit is contained in:
parent
6fe40516bf
commit
23b785de68
@ -1,6 +1,17 @@
|
|||||||
import { KEYS } from "../keys";
|
import { KEYS } from "../keys";
|
||||||
import { selectNode } from "../utils";
|
import { selectNode } from "../utils";
|
||||||
|
|
||||||
|
function trimText(text: string) {
|
||||||
|
// whitespace only → trim all because we'd end up inserting invisible element
|
||||||
|
if (!text.trim()) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
// replace leading/trailing newlines (only) otherwise it messes up bounding
|
||||||
|
// box calculation (there's also a bug in FF which inserts trailing newline
|
||||||
|
// for multiline texts)
|
||||||
|
return text.replace(/^\n+|\n+$/g, "");
|
||||||
|
}
|
||||||
|
|
||||||
type TextWysiwygParams = {
|
type TextWysiwygParams = {
|
||||||
initText: string;
|
initText: string;
|
||||||
x: number;
|
x: number;
|
||||||
@ -101,7 +112,7 @@ export function textWysiwyg({
|
|||||||
|
|
||||||
function handleSubmit() {
|
function handleSubmit() {
|
||||||
if (editable.innerText) {
|
if (editable.innerText) {
|
||||||
onSubmit(editable.innerText);
|
onSubmit(trimText(editable.innerText));
|
||||||
} else {
|
} else {
|
||||||
onCancel();
|
onCancel();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user