aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/client/views/TemplateMenu.tsx7
-rw-r--r--src/client/views/nodes/FormattedTextBox.tsx22
2 files changed, 16 insertions, 13 deletions
diff --git a/src/client/views/TemplateMenu.tsx b/src/client/views/TemplateMenu.tsx
index 0586b31e4..0ef1a137d 100644
--- a/src/client/views/TemplateMenu.tsx
+++ b/src/client/views/TemplateMenu.tsx
@@ -9,6 +9,7 @@ import './DocumentDecorations.scss';
import { DocumentView } from "./nodes/DocumentView";
import { Template, Templates } from "./Templates";
import React = require("react");
+import { Doc } from "../../new_fields/Doc";
const higflyout = require("@hig/flyout");
export const { anchorPoints } = higflyout;
export const Flyout = higflyout.default;
@@ -99,16 +100,16 @@ export class TemplateMenu extends React.Component<TemplateMenuProps> {
@action
toggleTemplate = (event: React.ChangeEvent<HTMLInputElement>, template: Template): void => {
if (event.target.checked) {
- this.props.docs.map(d => d.props.Document["show" + template.Name] = template.Name.toLowerCase());
+ this.props.docs.map(d => Doc.GetProto(d.layoutDoc)["show" + template.Name] = template.Name.toLowerCase());
} else {
- this.props.docs.map(d => d.props.Document["show" + template.Name] = undefined);
+ this.props.docs.map(d => Doc.GetProto(d.layoutDoc)["show" + template.Name] = undefined);
}
}
@undoBatch
@action
clearTemplates = (event: React.MouseEvent) => {
- Templates.TemplateList.map(template => this.props.docs.map(d => d.props.Document["show" + template.Name] = false));
+ Templates.TemplateList.map(template => this.props.docs.map(d => d.layoutDoc["show" + template.Name] = false));
}
@action
diff --git a/src/client/views/nodes/FormattedTextBox.tsx b/src/client/views/nodes/FormattedTextBox.tsx
index 658e2a04d..c07461e13 100644
--- a/src/client/views/nodes/FormattedTextBox.tsx
+++ b/src/client/views/nodes/FormattedTextBox.tsx
@@ -473,17 +473,19 @@ export class FormattedTextBox extends DocComponent<(FieldViewProps & FormattedTe
this._fontFamily = rules.font;
this._fontSize = rules.size;
setTimeout(() => {
- let tr = this._editorView!.state.tr;
- let n = new NodeSelection(this._editorView!.state.doc.resolve(0));
- if (this._editorView!.state.doc.textContent === "") {
- tr = tr.setSelection(new TextSelection(tr.doc.resolve(0), tr.doc.resolve(2))).
- replaceSelectionWith(this._editorView!.state.schema.nodes.paragraph.create({ align: rules.align }), true).
- setSelection(new TextSelection(tr.doc.resolve(0), tr.doc.resolve(0)));
- } else if (n.node && n.node.type === this._editorView!.state.schema.nodes.paragraph) {
- tr = tr.setNodeMarkup(0, n.node.type, { ...n.node.attrs, align: rules.align });
+ if (this._editorView!.state.doc.childCount) {
+ let tr = this._editorView!.state.tr;
+ let n = new NodeSelection(this._editorView!.state.doc.resolve(0));
+ if (this._editorView!.state.doc.textContent === "") {
+ tr = tr.setSelection(new TextSelection(tr.doc.resolve(0), tr.doc.resolve(2))).
+ replaceSelectionWith(this._editorView!.state.schema.nodes.paragraph.create({ align: rules.align }), true).
+ setSelection(new TextSelection(tr.doc.resolve(0), tr.doc.resolve(0)));
+ } else if (n.node && n.node.type === this._editorView!.state.schema.nodes.paragraph) {
+ tr = tr.setNodeMarkup(0, n.node.type, { ...n.node.attrs, align: rules.align });
+ }
+ this._editorView!.dispatch(tr);
+ this.tryUpdateHeight();
}
- this._editorView!.dispatch(tr);
- this.tryUpdateHeight();
}, 0);
}), { fireImmediately: true }
);