diff --git a/src/app/components/nodes/markdown/markdown.component.html b/src/app/components/nodes/markdown/markdown.component.html index 8977e90..a6a6cac 100644 --- a/src/app/components/nodes/markdown/markdown.component.html +++ b/src/app/components/nodes/markdown/markdown.component.html @@ -1,10 +1,10 @@ -
+
diff --git a/src/app/components/nodes/markdown/markdown.component.ts b/src/app/components/nodes/markdown/markdown.component.ts index 2264241..2ebcc6d 100644 --- a/src/app/components/nodes/markdown/markdown.component.ts +++ b/src/app/components/nodes/markdown/markdown.component.ts @@ -18,6 +18,7 @@ export class MarkdownComponent extends EditorNodeContract implements OnInit { public contents = ''; private dirtyOverride = false; public showEditor = false; + protected hadOneFocusOut = false; public editorOptions = { language: 'markdown', @@ -73,6 +74,14 @@ export class MarkdownComponent extends EditorNodeContract implements OnInit { @HostListener('document:keyup.escape', ['$event']) onFocusOut(event) { - this.showEditor = false; + if ( !this.hadOneFocusOut ) { + this.hadOneFocusOut = true; + setTimeout(() => { + this.hadOneFocusOut = false; + }, 500); + } else { + this.hadOneFocusOut = false; + this.showEditor = false; + } } } diff --git a/src/app/components/nodes/norm/norm.component.html b/src/app/components/nodes/norm/norm.component.html index e0bba84..962317e 100644 --- a/src/app/components/nodes/norm/norm.component.html +++ b/src/app/components/nodes/norm/norm.component.html @@ -1,5 +1,5 @@
+ (dblclick)="onFocusIn($event)">
+
\ No newline at end of file diff --git a/src/app/components/nodes/norm/norm.component.ts b/src/app/components/nodes/norm/norm.component.ts index bf6f590..0eb7be2 100644 --- a/src/app/components/nodes/norm/norm.component.ts +++ b/src/app/components/nodes/norm/norm.component.ts @@ -16,6 +16,7 @@ export class NormComponent extends EditorNodeContract implements OnInit { protected savedValue = 'Click to edit...'; public contents = ''; private dirtyOverride = false; + protected hadOneFocusOut = false; constructor( public readonly editorService: EditorService, @@ -55,7 +56,15 @@ export class NormComponent extends EditorNodeContract implements OnInit { @HostListener('document:keyup.escape', ['$event']) onFocusOut(event) { - this.isFocused = false; + if ( !this.hadOneFocusOut ) { + this.hadOneFocusOut = true; + setTimeout(() => { + this.hadOneFocusOut = false; + }, 500); + } else { + this.isFocused = false; + this.hadOneFocusOut = false; + } } documentCommand(cmd: string) {