diff --git a/app/components/forum/forum-post-new.hbs b/app/components/forum/forum-post-new.hbs
index 958ed41b4..982bee4dc 100644
--- a/app/components/forum/forum-post-new.hbs
+++ b/app/components/forum/forum-post-new.hbs
@@ -6,4 +6,4 @@
Annuleren
Opslaan
-
\ No newline at end of file
+
diff --git a/app/components/forum/forum-post-new.js b/app/components/forum/forum-post-new.js
index bf7f4935a..f6b0927c1 100644
--- a/app/components/forum/forum-post-new.js
+++ b/app/components/forum/forum-post-new.js
@@ -1,12 +1,24 @@
+// app/components/forum/forum-post-new.js
import { inject as service } from '@ember/service';
import Component from '@glimmer/component';
import { action } from '@ember/object';
+import { tracked } from '@glimmer/tracking';
+import { modifier } from 'ember-apply'; // Import modifier for Glimmer components lifecycle
-// todo: incorporate the model-save-util into components?
export default class ForumPostNewComponent extends Component {
@service store;
@service flashNotice;
+ @tracked focusInTextArea = false;
+
+ constructor() {
+ super(...arguments);
+ // Bind functions if using them as direct event handlers via modifiers
+ this.handleFocusIn = this.handleFocusIn.bind(this);
+ this.handleFocusOut = this.handleFocusOut.bind(this);
+ this.handleKeyDown = this.handleKeyDown.bind(this);
+ }
+
get content() {
return this.args.content;
}
@@ -15,6 +27,48 @@ export default class ForumPostNewComponent extends Component {
this.args.setContent(content);
}
+ // Modifier to attach and remove event listeners
+ // This ensures listeners are correctly managed with component lifecycle
+ @modifier
+ setupTextAreaListeners(element) {
+ // element will be the