File tree Expand file tree Collapse file tree 2 files changed +30
-1
lines changed
projects/igniteui-angular/src/lib/services/overlay Expand file tree Collapse file tree 2 files changed +30
-1
lines changed Original file line number Diff line number Diff line change @@ -882,6 +882,35 @@ describe('igxOverlay', () => {
882882 expect ( element . style . width ) . toBe ( '200px' ) ;
883883 expect ( element . style . height ) . toBe ( '100px' ) ;
884884 } ) ;
885+
886+ it ( 'should close overlay on outside click when target is point, #8297' , fakeAsync ( ( ) => {
887+ const fix = TestBed . createComponent ( EmptyPageComponent ) ;
888+ const button = fix . componentInstance . buttonElement ;
889+ const overlay = fix . componentInstance . overlay ;
890+ fix . detectChanges ( ) ;
891+
892+ const overlaySettings : OverlaySettings = {
893+ modal : false ,
894+ closeOnOutsideClick : true ,
895+ positionStrategy : new ConnectedPositioningStrategy ( )
896+ } ;
897+
898+ overlaySettings . target = new Point ( 10 , 10 ) ;
899+
900+ overlay . show ( overlay . attach ( SimpleDynamicComponent ) , overlaySettings ) ;
901+ tick ( ) ;
902+ fix . detectChanges ( ) ;
903+
904+ let overlayDiv : Element = document . getElementsByClassName ( CLASS_OVERLAY_MAIN ) [ 0 ] ;
905+ expect ( overlayDiv ) . toBeDefined ( ) ;
906+
907+ document . body . click ( ) ;
908+ tick ( ) ;
909+ fix . detectChanges ( ) ;
910+
911+ overlayDiv = document . getElementsByClassName ( CLASS_OVERLAY_MAIN ) [ 0 ] ;
912+ expect ( overlayDiv ) . toBeUndefined ( ) ;
913+ } ) ) ;
885914 } ) ;
886915
887916 describe ( 'Unit Tests - Scroll Strategies: ' , ( ) => {
Original file line number Diff line number Diff line change @@ -804,7 +804,7 @@ export class IgxOverlayService implements OnDestroy {
804804 return ;
805805 }
806806 if ( info . settings . closeOnOutsideClick ) {
807- const target = ev . target as any ;
807+ const target = ev . target ;
808808 const overlayElement = info . elementRef . nativeElement ;
809809 // check if the click is on the overlay element or on an element from the exclusion list, and if so do not close the overlay
810810 const excludeElements = info . settings . excludeFromOutsideClick ?
You can’t perform that action at this time.
0 commit comments