Some draft fixes.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4140 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
2023-01-21 01:39:00 +00:00
parent c067623740
commit 433db904cd
2 changed files with 10 additions and 6 deletions

View File

@ -61,10 +61,14 @@ class TfComposeElement extends LitElement {
return tfutils.markdown(text);
}
changed(event) {
input(event) {
let edit = this.renderRoot.getElementById('edit');
let preview = this.renderRoot.getElementById('preview');
preview.innerHTML = this.process_text(edit.value);
}
change(event) {
let edit = this.renderRoot.getElementById('edit');
this.dispatchEvent(new CustomEvent('tf-draft', {detail: {id: this.branch, draft: edit.value, bubbles: true}}));
}
@ -125,7 +129,7 @@ class TfComposeElement extends LitElement {
self.mentions = Object.assign({}, self.mentions);
let edit = self.renderRoot.getElementById('edit');
edit.value += `\n![${name}](${id})`;
self.changed();
self.change();
} catch(e) {
alert(e?.message);
}
@ -163,7 +167,7 @@ class TfComposeElement extends LitElement {
tfrpc.rpc.appendMessage(this.whoami, message).then(function() {
edit.value = '';
self.mentions = {};
self.changed();
self.change();
this.dispatchEvent(new CustomEvent('tf-draft', {detail: {id: this.branch, discard: undefined}}));
}).catch(function(error) {
alert(error.message);
@ -173,7 +177,7 @@ class TfComposeElement extends LitElement {
discard() {
let edit = this.renderRoot.getElementById('edit');
edit.value = '';
this.changed();
this.change();
this.dispatchEvent(new CustomEvent('tf-draft', {bubble: true, composed: true, detail: {id: this.branch, discard: undefined}}));
}
@ -266,7 +270,7 @@ class TfComposeElement extends LitElement {
let self = this;
let result = html`
<div style="display: flex; flex-direction: row; width: 100%">
<textarea id="edit" @input=${this.changed} @paste=${this.paste} style="flex: 1 0 50%">${this.drafts[this.id || '']}</textarea>
<textarea id="edit" @input=${this.input} @change=${this.change} @paste=${this.paste} style="flex: 1 0 50%">${this.drafts[this.id || '']}</textarea>
<div id="preview" style="flex: 1 0 50%"></div>
</div>
${Object.values(this.mentions).map(x => self.render_mention(x))}