mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-26 17:24:56 +00:00
AAE-12245: Migrated from event cancelBubble to stopPropagation (#8311)
This commit is contained in:
parent
cb69f34aa7
commit
dd91f2eeb6
@ -36,6 +36,7 @@ import {
|
||||
} from '@alfresco/adf-core';
|
||||
import { throwError } from 'rxjs';
|
||||
import { Component } from '@angular/core';
|
||||
import { ESCAPE } from '@angular/cdk/keycodes';
|
||||
|
||||
@Component({
|
||||
selector: 'adf-viewer-container-toolbar',
|
||||
@ -407,6 +408,34 @@ describe('AlfrescoViewerComponent', () => {
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
it('should stop propagation on sidebar keydown event [keydown]', fakeAsync(() => {
|
||||
const customFixture = TestBed.createComponent(ViewerWithCustomSidebarComponent);
|
||||
const customElement: HTMLElement = customFixture.nativeElement;
|
||||
const escapeKeyboardEvent = new KeyboardEvent('keydown', { key: ESCAPE.toString() });
|
||||
const stopPropagationSpy = spyOn(escapeKeyboardEvent, 'stopPropagation');
|
||||
|
||||
customFixture.detectChanges();
|
||||
const viewerSidebarElement = customElement.querySelector('adf-viewer-sidebar');
|
||||
|
||||
viewerSidebarElement.dispatchEvent(escapeKeyboardEvent);
|
||||
|
||||
expect(stopPropagationSpy).toHaveBeenCalled();
|
||||
}));
|
||||
|
||||
it('should stop propagation on sidebar keyup event [keyup]', fakeAsync(() => {
|
||||
const customFixture = TestBed.createComponent(ViewerWithCustomSidebarComponent);
|
||||
const customElement: HTMLElement = customFixture.nativeElement;
|
||||
const escapeKeyboardEvent = new KeyboardEvent('keyup', { key: ESCAPE.toString() });
|
||||
const stopPropagationSpy = spyOn(escapeKeyboardEvent, 'stopPropagation');
|
||||
|
||||
customFixture.detectChanges();
|
||||
const viewerSidebarElement = customElement.querySelector('adf-viewer-sidebar');
|
||||
|
||||
viewerSidebarElement.dispatchEvent(escapeKeyboardEvent);
|
||||
|
||||
expect(stopPropagationSpy).toHaveBeenCalled();
|
||||
}));
|
||||
});
|
||||
|
||||
describe('error handling', () => {
|
||||
|
@ -23,6 +23,7 @@ import { InfoDrawerComponent } from './info-drawer.component';
|
||||
import { of } from 'rxjs';
|
||||
import { TranslateService, TranslateModule } from '@ngx-translate/core';
|
||||
import { CoreTestingModule } from '../testing/core.testing.module';
|
||||
import { ESCAPE } from '@angular/cdk/keycodes';
|
||||
|
||||
describe('InfoDrawerComponent', () => {
|
||||
let element: HTMLElement;
|
||||
@ -64,6 +65,24 @@ describe('InfoDrawerComponent', () => {
|
||||
expect(title.length).toBe(1);
|
||||
expect(title[0].nativeElement.innerText).toBe('FakeTitle');
|
||||
});
|
||||
|
||||
it('should stop propagation on keydown event', () => {
|
||||
const escapeKeyboardEvent = new KeyboardEvent('keydown', { key: ESCAPE.toString() });
|
||||
const stopPropagationSpy = spyOn(escapeKeyboardEvent, 'stopPropagation');
|
||||
|
||||
fixture.debugElement.triggerEventHandler('keydown', escapeKeyboardEvent);
|
||||
|
||||
expect(stopPropagationSpy).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should stop propagation on keyup event', () => {
|
||||
const escapeKeyboardEvent = new KeyboardEvent('keyup', { key: ESCAPE.toString() });
|
||||
const stopPropagationSpy = spyOn(escapeKeyboardEvent, 'stopPropagation');
|
||||
|
||||
fixture.debugElement.triggerEventHandler('keyup', escapeKeyboardEvent);
|
||||
|
||||
expect(stopPropagationSpy).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
@Component({
|
||||
|
@ -63,13 +63,13 @@ export class InfoDrawerComponent {
|
||||
contentBlocks: QueryList<InfoDrawerTabComponent>;
|
||||
|
||||
@HostListener('keydown', ['$event'])
|
||||
onKeyDown(event: KeyboardEvent) {
|
||||
event.cancelBubble = true;
|
||||
onKeyDown(event: KeyboardEvent): void {
|
||||
event.stopPropagation();
|
||||
}
|
||||
|
||||
@HostListener('keyup', ['$event'])
|
||||
onKeyUp(event: KeyboardEvent) {
|
||||
event.cancelBubble = true;
|
||||
onKeyUp(event: KeyboardEvent): void {
|
||||
event.stopPropagation();
|
||||
}
|
||||
|
||||
showTabLayout(): boolean {
|
||||
|
@ -26,12 +26,12 @@ import { ChangeDetectionStrategy, Component, HostListener, ViewEncapsulation } f
|
||||
})
|
||||
export class ViewerSidebarComponent {
|
||||
@HostListener('keydown', ['$event'])
|
||||
onKeyDown(event: KeyboardEvent) {
|
||||
event.cancelBubble = true;
|
||||
onKeyDown(event: KeyboardEvent): void {
|
||||
event.stopPropagation();
|
||||
}
|
||||
|
||||
@HostListener('keyup', ['$event'])
|
||||
onKeyUp(event: KeyboardEvent) {
|
||||
event.cancelBubble = true;
|
||||
onKeyUp(event: KeyboardEvent): void {
|
||||
event.stopPropagation();
|
||||
}
|
||||
}
|
||||
|
@ -1306,10 +1306,12 @@ describe('retrieve metadata on submit', () => {
|
||||
expect(formContentClicked).toHaveBeenCalledWith(contentLinkModel);
|
||||
});
|
||||
|
||||
it('should cancel bubbling a keydown event', () => {
|
||||
const escapeKeyboardEvent = new KeyboardEvent('keydown', { keyCode: ESCAPE } as any);
|
||||
it('should stop propagation on keydown event', () => {
|
||||
const escapeKeyboardEvent = new KeyboardEvent('keydown', { key: ESCAPE.toString() });
|
||||
const stopPropagationSpy = spyOn(escapeKeyboardEvent, 'stopPropagation');
|
||||
|
||||
fixture.debugElement.triggerEventHandler('keydown', escapeKeyboardEvent);
|
||||
|
||||
expect(escapeKeyboardEvent.cancelBubble).toBe(true);
|
||||
expect(stopPropagationSpy).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
@ -133,8 +133,8 @@ export class FormCloudComponent extends FormBaseComponent implements OnChanges,
|
||||
}
|
||||
|
||||
@HostListener('keydown', ['$event'])
|
||||
onKeyDown(event: KeyboardEvent) {
|
||||
event.cancelBubble = true;
|
||||
onKeyDown(event: KeyboardEvent): void {
|
||||
event.stopPropagation();
|
||||
}
|
||||
|
||||
ngOnChanges(changes: SimpleChanges) {
|
||||
|
@ -929,11 +929,13 @@ describe('StartProcessCloudComponent', () => {
|
||||
component.ngOnChanges({ appName: change });
|
||||
});
|
||||
|
||||
it('should cancel bubbling a keydown event ()', () => {
|
||||
const escapeKeyboardEvent = new KeyboardEvent('keydown', { keyCode: ESCAPE } as any);
|
||||
it('should stop propagation on keydown event', () => {
|
||||
const escapeKeyboardEvent = new KeyboardEvent('keydown', { key: ESCAPE.toString() });
|
||||
const stopPropagationSpy = spyOn(escapeKeyboardEvent, 'stopPropagation');
|
||||
|
||||
fixture.debugElement.triggerEventHandler('keydown', escapeKeyboardEvent);
|
||||
|
||||
expect(escapeKeyboardEvent.cancelBubble).toBe(true);
|
||||
expect(stopPropagationSpy).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should hide title', () => {
|
||||
|
@ -147,8 +147,8 @@ export class StartProcessCloudComponent implements OnChanges, OnInit, OnDestroy
|
||||
}
|
||||
|
||||
@HostListener('keydown', ['$event'])
|
||||
onKeyDown(event: KeyboardEvent) {
|
||||
event.cancelBubble = true;
|
||||
onKeyDown(event: KeyboardEvent): void {
|
||||
event.stopPropagation();
|
||||
}
|
||||
|
||||
hasForm(): boolean {
|
||||
|
Loading…
x
Reference in New Issue
Block a user