+
+
diff --git a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.scss b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.scss
index aa0c0b02..760cb2e5 100644
--- a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.scss
+++ b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.scss
@@ -25,7 +25,7 @@
.container {
display: flex;
- width: 250px;
+ width: 300px;
height: 100%;
}
@@ -124,3 +124,8 @@
height: 100%;
}
}
+
+.left-drawer-toggle {
+ position: absolute;
+ top: 0px;
+}
diff --git a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.ts b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.ts
index 4031c616..4c36499a 100644
--- a/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.ts
+++ b/projects/ucap-webmessenger-app/src/app/layouts/messenger/components/left-side.component.ts
@@ -8,7 +8,8 @@ import {
QueryList,
ElementRef,
OnDestroy,
- ViewChild
+ ViewChild,
+ HostListener
} from '@angular/core';
import { NGXLogger } from 'ngx-logger';
import { ucapAnimations, DialogService } from '@ucap-webmessenger/ui';
@@ -75,6 +76,9 @@ export class LeftSideComponent implements OnInit, OnDestroy {
@ViewChild('messageBoxComponent', { static: false })
messageBoxComponent: MessageBoxComponent;
+ @ViewChild('leftSideContainer', { static: false })
+ leftSideContainer: ElementRef
;
+
onLangChangeSubscription: Subscription;
badgeChatUnReadCount: number;
@@ -96,6 +100,8 @@ export class LeftSideComponent implements OnInit, OnDestroy {
loginRes: LoginResponse;
loginResSubscription: Subscription;
+ showLeftDrawerToggle = false;
+
constructor(
private store: Store,
private dialogService: DialogService,
@@ -181,6 +187,31 @@ export class LeftSideComponent implements OnInit, OnDestroy {
this.logger.debug('-----------------------LeftSideComponent ngOnDestroy');
}
+ @HostListener('mouseenter', ['$event'])
+ mouseOver(event: MouseEvent) {
+ const rect = this.leftSideContainer.nativeElement.getBoundingClientRect();
+
+ const minX = rect.left + rect.width - 5;
+ const maxX = rect.left + rect.width;
+ const minY = rect.top;
+ const maxY = rect.top + rect.height;
+
+ if (
+ event.pageX >= minX &&
+ event.pageX <= maxX &&
+ event.pageY >= minY &&
+ event.pageY <= maxY
+ ) {
+ this.logger.debug('mouseOver edge of container');
+ this.showLeftDrawerToggle = true;
+ }
+ }
+
+ @HostListener('mouseleave', ['$event'])
+ mouseLeave(event: MouseEvent) {
+ this.showLeftDrawerToggle = false;
+ }
+
async onClickNewChat(type: string = 'NORMAL') {
const result = await this.dialogService.open<
CreateChatDialogComponent,