File tree Expand file tree Collapse file tree 2 files changed +10
-4
lines changed
core/test/bundling/standalone_bootstrap
platform-browser/src/dom/events Expand file tree Collapse file tree 2 files changed +10
-4
lines changed Original file line number Diff line number Diff line change 611611 {
612612 "name" : " getCurrentTNodePlaceholderOk"
613613 },
614+ {
615+ "name" : " getDOM"
616+ },
614617 {
615618 "name" : " getDeclarationTNode"
616619 },
Original file line number Diff line number Diff line change @@ -78,9 +78,12 @@ export class KeyEventsPlugin extends EventManagerPlugin {
7878 override addEventListener ( element : HTMLElement , eventName : string , handler : Function ) : Function {
7979 const parsedEvent = KeyEventsPlugin . parseEventName ( eventName ) ! ;
8080
81- const outsideHandler = KeyEventsPlugin . eventCallback ( parsedEvent [ 'fullKey' ] , handler ) ;
81+ const outsideHandler =
82+ KeyEventsPlugin . eventCallback ( parsedEvent [ 'fullKey' ] , handler , this . manager . getZone ( ) ) ;
8283
83- return this . manager . addEventListener ( element , parsedEvent [ 'domEventName' ] , outsideHandler ) ;
84+ return this . manager . getZone ( ) . runOutsideAngular ( ( ) => {
85+ return getDOM ( ) . onAndCancel ( element , parsedEvent [ 'domEventName' ] , outsideHandler ) ;
86+ } ) ;
8487 }
8588
8689 /**
@@ -175,10 +178,10 @@ export class KeyEventsPlugin extends EventManagerPlugin {
175178 * @param zone The zone in which the event occurred.
176179 * @returns A callback function.
177180 */
178- static eventCallback ( fullKey : string , handler : Function ) : Function {
181+ static eventCallback ( fullKey : string , handler : Function , zone : NgZone ) : Function {
179182 return ( event : KeyboardEvent ) => {
180183 if ( KeyEventsPlugin . matchEventFullKeyCode ( event , fullKey ) ) {
181- handler ( event ) ;
184+ zone . runGuarded ( ( ) => handler ( event ) ) ;
182185 }
183186 } ;
184187 }
You can’t perform that action at this time.
0 commit comments