diff --git a/src/app/views/chat/chat.component.ts b/src/app/views/chat/chat.component.ts index afda294..e1c3ac9 100644 --- a/src/app/views/chat/chat.component.ts +++ b/src/app/views/chat/chat.component.ts @@ -33,13 +33,12 @@ export class ChatComponent implements OnInit, AfterViewInit { } } - // Always scroll to last chat message. ngAfterViewInit(): void { - this.messageItems.last?.nativeElement?.scrollIntoView(false); + // Scroll to last chat message on init and with every new message. + this.scrollToLastMessage(); this.messageItems.changes.subscribe({ next: (c) => { - // this.messageItems.last?.nativeElement?.scrollIntoView(false); - this.messageList.nativeElement.scrollTop = this.messageItems.last?.nativeElement?.offsetTop; + this.scrollToLastMessage(); } }); } @@ -53,4 +52,8 @@ export class ChatComponent implements OnInit, AfterViewInit { return message.getId(); } + private scrollToLastMessage(): void { + this.messageList.nativeElement.scrollTop = this.messageItems.last?.nativeElement?.offsetTop; + } + }